Differences

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

Link to this comparison view

lkd [2024/05/21 19:33]
daniel.baluta
lkd [2024/05/22 16:25] (current)
daniel.baluta
Line 7: Line 7:
   * learn about the Linux kernel development environment   * learn about the Linux kernel development environment
   * get hands on experience with real hardware using an NXP i.MX8 board   * get hands on experience with real hardware using an NXP i.MX8 board
-  * create a Linux kernel driver for a simple device connected on I2C +  * create a Linux kernel driver for a simple device connected on a standard bus
-  * have fun and c+
  
 == Team ==  == Team == 
  
-  * Iuliana Prodan +  * [[https://​www.linkedin.com/​in/​iuliana-prodan-254a135a/​ | Iuliana Prodan]] 
-  * Laurentiu Mihalcea  +  * [[https://​www.linkedin.com/​in/​lauren%C8%9Biu-cristian-mihalcea-6723aa237/​ | Laurentiu Mihalcea ​]] 
-  * Daniel Baluta+  * [[https://​www.linkedin.com/​in/​danielbaluta/​ | Daniel Baluta]]
  
 == RSVP == == RSVP ==
  
-If you have an interest in embedded systems and low level programming please fill in this form [[TBD]]+If you have an interest in embedded systems and low level programming please fill in this [[https://​forms.gle/​YxhNj2cSojc6b3CD8 | form]]
  
 == Schedule == == Schedule ==
  
 +Location:
 +
 +  * NXP, Campus 6 (near Politehnica)
  
 ^ Date         ^ Time          ^  Lab name          | ^ Date         ^ Time          ^  Lab name          |
Line 29: Line 31:
 | July, 11     | 17:00 - 20:00 |  Device Drivers ​   | | July, 11     | 17:00 - 20:00 |  Device Drivers ​   |
  
 +== Overview ==
 +
 +There will be four session organized around hands on activities that will take up to 3 hours. Each session will contain a theoretical part (hour) and a practical lab (two hours).
 +
 +=== Introduction to Embedded Linux kernel development ===
 +
 +    * setup development environment (cross compiler toolchain)
 +    * compile Linux kernel and modules on arm64
 +    * build system and configuration options
 +    * boot the i.MX8 board
 +
 +=== Basics of writing a Linux kernel module === 
 +
 +    * create a simple "hello world" module
 +    * learn about printk & friends
 +    * userspace vs kernelspace interface ​
 +    * hack on a skeleton driver ​
 +
 +=== Basics of Device tree ===
 +
 +    * learn how hardware is described in the ARM world
 +    * learn how to create a device tree node and associated it with a Linux driver
 +    * learn about standard embedded busses
 +
 +=== Hardware application === 
 +
 +    * learn how to read hardware specs
 +    * learn about Linux kernel subsystems and coding patterns
 +    * have fun and create a driver for a real hardware device
lkd.1716309225.txt.gz · Last modified: 2024/05/21 19:33 by daniel.baluta
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0