User Tools

Site Tools


gsoc:2023-gsoc-device-tree-bindings

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
gsoc:2023-gsoc-device-tree-bindings [2023/02/13 09:26]
dbaluta [Proposal 1: Convert device tree bindings to DT schema]
gsoc:2023-gsoc-device-tree-bindings [2023/03/03 14:07] (current)
dbaluta [Proposal 1: Convert device tree bindings to DT schema]
Line 12: Line 12:
  
 Location for this documents is under ''​Documentation/​devicetree/​bindings/''​ Location for this documents is under ''​Documentation/​devicetree/​bindings/''​
 +d
 +`
 ==== Proposal 1: Convert device tree bindings to DT schema ==== ==== Proposal 1: Convert device tree bindings to DT schema ====
  
Line 25: Line 27:
 ''​ ''​
  
-You can have a look at this [[https://​lore.kernel.org/​lkml/​20230211134755.86061-1-krzysztof.kozlowski@linaro.org/​T/​ | example ]]+You can have a look at this [[https://​lore.kernel.org/​lkml/​20230211134755.86061-1-krzysztof.kozlowski@linaro.org/​T/​ | example ]]
 + 
 +Tips for writing a good proposal: 
 + 
 +  * understand basic concepts about writing a device tree binding file. Look [[https://​www.kernel.org/​doc/​html/​v5.10/​devicetree/​writing-schema.html | here ]] and [[https://​elinux.org/​images/​6/​6b/​LPC2018_json-schema_for_Devicetree.pdf | here ]]. 
 +  * clone the Linux kernel tree: https://​git.kernel.org/​pub/​scm/​linux/​kernel/​git/​robh/​linux.git/​ 
 +  * demonstrate the knowledge about device tree bindings by writing a small patch to convert a ''​.txt''​ file to yaml. 
 +      * look inside ''​Documentation/​devicetree/​bindings''​ 
 +      * start with small and simple ''​.txt''​ file and convert it to yaml 
 +      * create a a small [[ http://​nickdesaulniers.github.io/​blog/​2017/​05/​16/​submitting-your-first-patch-to-the-linux-kernel-and-responding-to-feedback/​ | patch ]] and review it with the mentor 
 +      * verify the patch: 
 +          * make dt_binding_check DT_SCHEMA_FILES=Documentation/​devicetree/​bindings/​trivial-devices.yaml 
 +          * make dtbs_check DT_SCHEMA_FILES=Documentation/​devicetree/​bindings/​trivial-devices.yaml 
 +          * make DT_CHECKER_FLAGS=-m dt_binding_check 
 +      * send the patch to Linux kernel mailing list and work with the community to get it merged 
 +  * before submitting the proposal discuss with the mentor about a plan and a set of ''​.txt''​ files to work on 
 + 
 +How to find ideas of patches to create: 
 + 
 +1) Look for small ''​txt''​ files that might be easier to convert. 
 +  * Suggestion is for files to have in mind ''​Documentation/​devicetree/​bindings/​{sound|iio|hwmon,​regulator,​ rtc, watchdog}''​. 
 +  * Use ''​git log''​ and look into history to see how similar patches where done.  
 +      * For example ''​git log 715f45854f559f361d2c222a0353a3a1818875ed''​ 
 + 
 + 
 +2)  Cleanup all easy dtbs_check warnings for the platforms, like node 
 +names, unused/not allowed properties. Run ''​make dtbs_check''​. 
  
 Code license: GPL-2.0 OR BSD-3-Clause Code license: GPL-2.0 OR BSD-3-Clause
gsoc/2023-gsoc-device-tree-bindings.1676280384.txt.gz · Last modified: 2023/02/13 09:26 by dbaluta