Replies: 2 comments
-
Jumping from #153 On Linux, Kconfig is there to change the code, and the devicetree is only a binary configuration file that does not require rebuilding the kernel, but only run Implementing boot-time modification without recompiling Zephyr... is not easy, as Zephyr drivers are currently compiled with the configuration hardcoded in the driver C code via C macros. Sometimes it does not affect performance, sometimes it does. Long term challenge in Zephyr. Another approach to make this smoother is improve the build environment on all platforms, which is probably a WIP. |
Beta Was this translation helpful? Give feedback.
-
Thanks @josuah, It will be interesting to see what approaches Arduino might take to do some of this. For example, I can imagine creating multiple board variants for each board: For example the GIGA. There could be one Or maybe Arduino, can somehow set it up, where they run the whole equivalent of: west build, and maybe the sketch allows you For the Camera stuff that @mjs513 and I have been playing with, I have been tempted to attempt a different tactic, and that is to That allows a class object to register at it at init time, with either a jump table or potential a c++ class... And then have all of the In the mean time I have been doing a lot of my own playing and testing directly building directly with Zephyr. I am still
Where I query for this object and then can get the SPI object. But then how to get the other three IO pins associated with it
And knowing that the first item is CS, second DC and third reset, and at times maybe a 4th for touch support... Thanks again |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
-
@facchinm @pillo79 @mjs513 and all
Sorry, it may be just me, but I still don't understand Arduino’s goals, on what a released version of the Arduino boards on Zephyr
will look like.
It might really help if there was a writeup somewhere maybe part of the wiki that might explain the goals and a
general idea of what releases might look like. I know bits and pieces of this have been talked about in several different places but it would be great to have some top-level understanding.
My guess is a lot of this is still in flux and may take several iterations of alpha/beta releases before things fully solidify. But I still think it would be helpful to at least get a general idea of what your current thought are.
On general goals, things like:
a) How compatible should the Zephyr versions be to the current releases (MBed, Renesas, etc.) to the MBED. Things like Pin name/numbers, devices (Wire, SPI, SerialX, etc)
b) How much will the typical users need to know about Zephyr? Device Trees? On the same line, will a high percentage of users need to install from sources: ArduinoCore-zephyr, Zephyr, and all the parts it pulls in? Will this be necessary in order to configure and use the different devices and the like that are part of Zephyr? Like How would I use an OV7675 camera on the GIGA?
c) Do you believe that a reasonable percentage of developers will develop for the Arduino boards directly using the Zephyr setup? That is doing west build and west flash? If so, what things should we be migrating out of the ArduinoCore-zephyr cores/variants should be migrated down lower into the zephyr sources. Things like overlays?
d) How do you plan to setup for Boards alone versus boards that have a shield or carrier board. Like Giga with or without Giga Display Shield. Portenta alone or on a Carrier: Breakout, Hat, Mid, … In both cases with or without Cameras? For example, do you
expect that The GIGA Display Shield will stay as a Zephyr Shield? Likewise, for Portenta boards? An Arduino Variant for each of these configurations?
e) Will there be options for a user to define their own overlay and config files as part of an Arduino build? I would assume not, but...
f) How to use Multiple cores?
...
Thanks
Kurt
Beta Was this translation helpful? Give feedback.
All reactions