![]() In his talk Matti Vaittinen started by depicting the various devices that can be embedded in a PMIC (Power Management Integrated Circuit): watchdog, RTC, GPIOs are examples of such extra functionalities. PMICs (Power Management Integrated Circuit) are a key component of low power embedded systems as they often handle complexity in controlling various power voltages required by SoCs. Talk by Matti Vaittinen, chosen by Bootlin engineer Kamel Bouhara. Linux Power ! (from the Perspective of a PMIC Vendor) ![]() We found Zbus to be a very interesting feature because before there was no easy way to implement one-to-many and many-to-many topologies, but also one-to-one communications without having to manage the problems of investing priorities and to use FIFO, LIFO, pipe, etc. The bus is managed by a dispatcher, named Virtual Distributed Event Dispatcher (VDED) that is robust to priority inversion. Then the subscriber will be executed by priority order.A notification is put to the subscriber’s queues.A thread can read or publish in bus channels, and when a message is published into a channel: ![]() In this talk, Rodrigo explained in detail how Zbus works, through a few examples. In addition, it can be used on very constrained systems. This bus allows to implement several bus topologies: Zbus is a new message bus for Zephyr allowing threads to communicate to many others, easily. Talk by Robrigo Peixoto, chosen by Bootlin engineer Thomas Perrot Zbus – the Lightweight and Flexible Zephyr Message Bus I therefore strongly recommend checking out Daniel’s talk and his dedicated blog article. If it’s an interference, rtla will tell you which task or interrupt caused the latency, and can even detect if the hardware itself is the culprit.įor developers, this tool is also a perfect way to gather user feedback and bug reports that are small, precise and easily reproducible. If it’s a blocking problem, rtla tells you which process is blocking your task. By using cleverly placed trace-points, in-kernel testing tools ( timerlat and osnoise) and an automated trace analyzer, rtla can not only detect latencies as cyclictest would, it can also give you what caused the latency. Hopefully, Daniel’s talk is going to make this kind of talk less common, as the tool he wrote and presented, rtla, makes it easy to gather important information about the cause of undesired latencies. This is where things get complicated, the Linux kernel tracer is very powerful, but can drown users in a flood of trace events from which it is difficult to extract the relevant data. Users who aren’t very familiar with the inner workings of the Linux Kernel can ask for help on mailing-lists, and the reply usually asks for a trace. Besides a headache, what I could get from attending all these talks is that this topic is complex, time consuming, and that there’s a lot of different methodologies one can use to find the cause of these elusive problems. Talks related to real-time linux debugging are pretty common at ELCE, I gave one myself in 2017 and I’ve been attending most of them since then. Talk by Daniel Bristot de Oliveira, chosen by Bootlin engineer Maxime Chevallier. rtla timerlat: Debugging Real-time Linux Scheduling Latency We will share this feedback in a series of blog post: first post, second post, this one being the third of the series. In order to share with our readers more about what happened at this conference, we have asked all engineers at Bootlin to select one talk they found interesting and useful and share a short summary of it. As we reported in a previous blog post, almost the entire Bootlin engineering team was at the Embedded Linux Conference Europe in Prague in June.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |