Device Tree: hardware description for everybody !

  Рет қаралды 84,657

Bootlin

Bootlin

Күн бұрын

The Device Tree has been adopted for the ARM 32-bit Linux kernel support almost a decade ago, and since then, its usage has expanded to many other CPU architectures in Linux, as well as bootloaders such as U-Boot and Barebox. Even though Device Tree is no longer a new thing, developers coming into the embedded Linux world often struggle to understand what Device Trees are, what is their syntax, how they interact with the Linux kernel device drivers, what Device Tree bindings are, and more. This talk will provide an introduction to the Device Tree, to jump start new developers in using this description language that is now ubiquitous in the vast majority of embedded Linux projects.
Slides at bootlin.com/pub/conferences/2...
Bootlin's embedded Linux system development training course: bootlin.com/training/embedded...
Bootlin's Linux kernel driver development training course: bootlin.com/training/kernel/
Bootlin's Yocto Project and OpenEmbedded system development training course: bootlin.com/training/yocto/
Bootlin's Buildroot system development training course: bootlin.com/training/buildroot/
Bootlin's Linux graphics stack training course: bootlin.com/training/graphics/

Пікірлер: 68
@magicandmagik
@magicandmagik 3 жыл бұрын
such a great presentation, very clear, learned a ton, thanks for sharing!
Жыл бұрын
Excellent presentation. Very clear, with a great balance between theoretical details and concise (yet simple) examples.
@amoghjain
@amoghjain 2 жыл бұрын
Thank you for making this video!!! very clear and concise. clarified a looott of details!
@bhupiistersingh4097
@bhupiistersingh4097 5 ай бұрын
Thank you for explaining dtb in detail. Really helped clear the confusion.
@ArtemGodlevskyi
@ArtemGodlevskyi 7 ай бұрын
I'm at the beginning of the deep dive into embedded Linux development. This presentation was extremely helpful.
@weedsqian1717
@weedsqian1717 2 ай бұрын
great presentation, that's help me a lot to understanding the grammer of the dts
@DipThummar
@DipThummar 10 ай бұрын
Thank you for sharing this video. learned so many new things from this.
@ayoubsoussi2015
@ayoubsoussi2015 3 жыл бұрын
Thank you, that was a great presentation !
@embeddedtutorials7653
@embeddedtutorials7653 Жыл бұрын
Clear presentation and explanation of device tree, thank you for this tutorial
@ajithpeter3040
@ajithpeter3040 9 ай бұрын
Crisp and Clear Presentation. Thank you
@fernandoi8958
@fernandoi8958 Жыл бұрын
Great presentation! I would love to hear more!
@nanthakumarp4692
@nanthakumarp4692 2 жыл бұрын
Thank you. Great presentation and it is very useful.
@lukaszkrapowice
@lukaszkrapowice 2 жыл бұрын
thanks a lot, thanks to such people, the life of an engineer is simple and the world is developing faster and faster
@leonardoaraujoDF
@leonardoaraujoDF 27 күн бұрын
Great presentation. Thank you!
@saptarshi7587
@saptarshi7587 3 жыл бұрын
Many many thanks for the presentation 👍👏👏
@MrSchattka
@MrSchattka 4 ай бұрын
Great discussion on Linux device trees. Thanks for posting!
@jcholsap
@jcholsap Жыл бұрын
Thanks for simplifying devicetrees!
@jasongodmere9882
@jasongodmere9882 2 жыл бұрын
fantastic video, very clear and concise
@hidroklorotiazid
@hidroklorotiazid 3 жыл бұрын
This is really neat. Thank you.
@elsanjopucela
@elsanjopucela 3 жыл бұрын
Amazing video! Thank you very much
@rajcodes100
@rajcodes100 2 жыл бұрын
Thanks Sir for your presentation .
@nakulchauhan6713
@nakulchauhan6713 11 ай бұрын
Beautifully explained. Although its not for complete Beginers. but still its very indepth. Thanks for sharing this.
@kumartceice
@kumartceice 2 жыл бұрын
Great clarity on concepts
@oscardavilaramirez9999
@oscardavilaramirez9999 Жыл бұрын
Great job with this presentation!
@piotrlenarczyk5803
@piotrlenarczyk5803 2 жыл бұрын
Thank you for video. This is the best presentation of DT. Hope I could get chance for direct course from Bootlin.
@Nick-xp8xd
@Nick-xp8xd 2 ай бұрын
Excellent lesson. Thank you so much
@sandeepr5007
@sandeepr5007 2 жыл бұрын
Great video, very clear simple precise explanation on DT which is very helpful for recent project I will be working on. Thanks Thomas.
@Rizwan-fn5hi
@Rizwan-fn5hi 3 жыл бұрын
Great presentation. Really neat!
@rabiraju9414
@rabiraju9414 4 ай бұрын
Great, worth my time!
@elijahwilt
@elijahwilt 2 жыл бұрын
Thank you! @37:50 the minute comment about comments helped my conditioned, confused eyes understand what was going on.
@raghumgh
@raghumgh 2 жыл бұрын
Just wowwwww......Fantastic and simplified
@AjayKumar-ds7zb
@AjayKumar-ds7zb 3 ай бұрын
Great Explanation
@yuri.frolov
@yuri.frolov 2 жыл бұрын
Great. Thank you very much!
@praveensomesh2551
@praveensomesh2551 3 жыл бұрын
Awesome presentation
@jasonz3345
@jasonz3345 4 ай бұрын
For the first time, I understand why device tree is needed! Thanks
@user-cp5hn4ff9f
@user-cp5hn4ff9f 5 ай бұрын
Thank you bro..Very nice Presentation
@santoshsco
@santoshsco 3 жыл бұрын
Best device tree tutorial 😊
@JohnKha
@JohnKha 2 жыл бұрын
Yes, very helpful, thanks.
@prutser67
@prutser67 2 жыл бұрын
Very clear presentation. The only thing I miss, is some background information how the device tree relates to the actual hardware initialization) e.g. Is there any defined initialization order in case there are dependencies. Or is this always defined by the parent-child relationship.
@pkl2000us
@pkl2000us 3 жыл бұрын
Great stuff !!
@easycruel
@easycruel 2 жыл бұрын
thank you,very informative
@justinwu644
@justinwu644 Жыл бұрын
this video is awesome!
@user-xm1ts5dt9v
@user-xm1ts5dt9v Жыл бұрын
Man, really appreciate it! Such a nice lecture.
@kalidsherefuddin
@kalidsherefuddin Жыл бұрын
Thanks everyone
@cesargroh5326
@cesargroh5326 9 ай бұрын
Wow, Thomas, this is cool! Such a class on Device Tree. Could you add a video about boot modifiers we find on some embedded Linux distros on /boot in the form of *Env.txt files (like armbianEnv.txt)?
@vernekarakshay
@vernekarakshay 3 жыл бұрын
Thankyou for the lecture . Could you point me to resources where I can learn more about writing Device Trees ?
@Jennn
@Jennn Жыл бұрын
THANK YOU
@user-bl5ec7xl1w
@user-bl5ec7xl1w 4 ай бұрын
Very greate! Can we get step-by-step scheme how boot linux on board (SoC+MB)?
@VincentZhouPlus
@VincentZhouPlus 2 жыл бұрын
Thanks. Better than the previous "for dummies" talks.
@MrDoctorrLove
@MrDoctorrLove Жыл бұрын
Excellent
@cipherswami
@cipherswami 3 жыл бұрын
sir, I'm trying to build a nethunter kernel for K20 Pro. I managed to build kernel and got image file and image-dtb file, when i tried to flash using AIK, anykernel, I'm stuck at infinite loop. i have a separate dtbo partition. I'm not sure how to compile dtb.img and what it is completely. Any help...
@saexpat
@saexpat 9 ай бұрын
Can you do startup example from scratch I.e. start with the board layout, SoC and then start adding the peripherals to show how it all comes together?
@dpavlin
@dpavlin 3 жыл бұрын
Thanks for very interesting presentation. On slide 23 there is "No support in Linux for applying DT overlays however", however, I have been using configfs and /sys/kernel/config/device-tree/overlays/ with mkdir dt-overlay ; cat dtb > dt-overlay/dtbo to load device trees after booting kernel. Is this depreciated in recent kernels?
@Bootlin
@Bootlin 3 жыл бұрын
I would suspect you're not using the official Linux kernel. Several forks of the Linux kernel have extra patches to add a user-space interface to add overlays, but as far as I'm aware, this interface is not in the upstream kernel.
@havranj
@havranj 3 жыл бұрын
@@Bootlin Maybe stupid question, but what about this: www.kernel.org/doc/Documentation/devicetree/overlay-notes.txt There is some "Overlay in-kernel API". I also read somewhere that runtime overlay in kernel is possible (maybe not upstream), but not recommended - is it true? Great presenation btw.
@hudabert4074
@hudabert4074 2 жыл бұрын
what the different betwent unit address that looks like node number (simple number, ex. cpu core) and that looks like memory address (ex. i2c and usb controller)...?? are unit address always represented as hex number or only device that it's unit address that looks like memory address that is only represented in hex number...?? how to decide the unit address of the device when we want to write new dts file of a board...??
@flyxtop
@flyxtop 2 жыл бұрын
It looks good but the fonts are small to watch it using smart phone. Thanks.
@ferircharles4107
@ferircharles4107 2 жыл бұрын
very nice
@arifraja9921
@arifraja9921 Жыл бұрын
That was realy a nice learning and very helpful. Can you please point out me a link for MIPI bus dts tutorial
@sameersondur9030
@sameersondur9030 Жыл бұрын
Hi, My background: I have worked on linux with x86 CPU boards. I have seen that after you load the i2c drivers, they are discoverable. Quick question: As you are saying that i2c, spi,etc devices are not discoverable. So, is it that once we load the i2c, spi drivers, you do not see them on the procfs/sysfs on embedded platforms? If yes, then can you please explain why this happens that even after you load the drivers, the peripherals are not discoverable.
@Waferdicing
@Waferdicing Жыл бұрын
💚
@eleman971
@eleman971 28 күн бұрын
@Lingatsu
@Lingatsu Жыл бұрын
What is the translation in french for ''device tree'' ?
@bernardoaraujor
@bernardoaraujor 3 жыл бұрын
gold
@abdallahrashed1947
@abdallahrashed1947 3 жыл бұрын
Is it the same as device tree for dummies?
@Bootlin
@Bootlin 3 жыл бұрын
No, it is a different presentation.
@mithrandirthegrey7644
@mithrandirthegrey7644 Жыл бұрын
I've been banging my head against a wall trying to get a simple bluetooth device to talk with my IMX6. These device trees are giving me a headache. The documentation seems to be very flimsy. Lots of posts on the NXP forums showing different setups. There doesn't seem to be a good place where everything is explained variable by variable. If I call my device spidev@0 what does that mean to Linux? Have fun trying to google that. It's an endless pipeline. Why the hell didn't I just do a quick search on youtube? This explains it CRYSTAL clear.
@harihaarry2334
@harihaarry2334 2 жыл бұрын
Please Make a session on pin muxing
Embedded Linux "from scratch" in 45 minutes...on RISC-V
1:06:09
Adding a LED to the Device Tree & Pin multiplexing
14:12
Johannes 4GNU_Linux
Рет қаралды 3,8 М.
Sigma girl and soap bubbles by Secret Vlog
00:37
Secret Vlog
Рет қаралды 4,6 МЛН
Smart Sigma Kid #funny #sigma #comedy
00:26
CRAZY GREAPA
Рет қаралды 9 МЛН
QEMU for Linux kernel developers
13:56
Johannes 4GNU_Linux
Рет қаралды 7 М.
Booting faster
47:29
linux.conf.au
Рет қаралды 107 М.
RISC-V 2024 Update: RISE, AI Accelerators & More
14:03
ExplainingComputers
Рет қаралды 85 М.
How does an OS boot? //Source Dive// 001
50:22
Low Byte Productions
Рет қаралды 398 М.
But, what is Virtual Memory?
20:11
Tech With Nikola
Рет қаралды 238 М.
Making Simple Windows Driver in C
7:26
Nir Lichtman
Рет қаралды 340 М.
Samsung laughing on iPhone #techbyakram
0:12
Tech by Akram
Рет қаралды 1,2 МЛН
1$ vs 500$ ВИРТУАЛЬНАЯ РЕАЛЬНОСТЬ !
23:20
GoldenBurst
Рет қаралды 1,8 МЛН
Kumanda İle Bilgisayarı Yönetmek #shorts
0:29
Osman Kabadayı
Рет қаралды 743 М.
Лазер против камеры смартфона
1:01
NEWTONLABS
Рет қаралды 450 М.