> How I actually plan to use it. > I want to make various "driver packs" as different repositories. When you > start a new project you get the desired "packs" as git submodules, creating > a collection of only the needed drivers. Each one is developed and > versioned separately.
As I mentioned in other threads, I do the same using this framework I wrote to handle my NuttX projects (https://gitlab.com/nuttx_projects/nuttx_workspace_manager). In the final project layout I have an extra_os/ directory which is outside nuttx/ and apps/ directories where I can place drivers as subdirectories in the way you mention. Of course this meant that I had to create this build system to sit on top of NuttX's (in fact, it is one of the biggest reasons I created it this way). To be used this way, besides having an external driver directory, the build system should include Make.defs of all subdirs using something like: "include $(wildcard */Make.defs)". I'm not sure that the current support found under stm32/common or cxd56xx works that way. Best, Matias