User Tools

Site Tools


gsoc:2024-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
gsoc:2024-gsoc-device-tree-bindings [2024/02/08 12:21]
dbaluta [How do I get started?]
gsoc:2024-gsoc-device-tree-bindings [2024/02/27 10:12] (current)
dbaluta
Line 29: Line 29:
 ''​ ''​
  
-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 ]] of a conversion patch looks like.
  
-Tips for writing ​a good proposal:+Before ​writing ​your proposal ​you need to:
  
-  ​* 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 ]]+  ​- Watch this [[https://​www.youtube.com/watch?​v=JrwZ4xLBU38|presentation]] from Krzysztof ​and get a feel of the work should be done in the project. 
-  ​clone the Linux kernel tree: https://​git.kernel.org/​pub/​scm/​linux/​kernel/​git/​robh/​linux.git/​ +  ​Write an email to project Mentor announcing your intention to work on the proposal. 
-  ​* demonstrate the knowledge about device tree bindings by writing a small patch to convert a ''​.txt''​ file to yaml. +  - Create a small patch that converts a device tree binding ''​.txt''​ file to ''​yaml''​ 
-      * look inside ''​Documentation/​devicetree/​bindings''​ + 
-      * start with small and simple ''​.txt''​ file and convert it to yaml +How to create a small patch? 
-      * 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:+  ​clone the Linux kernel tree: https://​git.kernel.org/​pub/​scm/​linux/​kernel/​git/​robh/​linux.git/​ 
 +  ​look inside ''​Documentation/​devicetree/​bindings''​ 
 +     ​* start with small and simple ''​.txt''​ file and convert it to yaml 
 +     ​discuss with your mentor about your chosen file and after that start working on the patch 
 +  - Watch again the [[https://​www.youtube.com/​watch?​v=JrwZ4xLBU38|presentation]] and read about how to create ​your first [[ http://​nickdesaulniers.github.io/​blog/​2017/​05/​16/​submitting-your-first-patch-to-the-linux-kernel-and-responding-to-feedback/​ | patch ]]
 +  - Review patch your mentor by email first and after that send it to community 
 +  - Always ​verify ​your patch before submitting for review
           * make dt_binding_check DT_SCHEMA_FILES=Documentation/​devicetree/​bindings/​trivial-devices.yaml           * 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 dtbs_check DT_SCHEMA_FILES=Documentation/​devicetree/​bindings/​trivial-devices.yaml
           * make DT_CHECKER_FLAGS=-m dt_binding_check           * 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: 
- 
- 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''​ 
- 
- 
- ​Cleanup all easy dtbs_check warnings for the platforms, like node 
-names, unused/not allowed properties. Run ''​make dtbs_check''​. 
  
 Desired knowledge: C, shell scripting, make, git Desired knowledge: C, shell scripting, make, git
gsoc/2024-gsoc-device-tree-bindings.txt · Last modified: 2024/02/27 10:12 by dbaluta