raiden00pl commented on PR #18408: URL: https://github.com/apache/nuttx/pull/18408#issuecomment-3935724003
> Nx_bringup() just starts some threads and returns. It does not exit. See "Bring Up the System"; it is just a sequence of function calls and still exists after the bring-up is complete. When it returns, it just falls through and becomes the IDLE loop. Nothing starts the IDLE loop, See "Enter to idleloop". The IDLE was just created from nothing at power-up, what was the initialization thread is simple called the IDLE loop after that point. That's the point. It creates "AppBringUp" that runs `nx_start_task()` and this thread can exit. But that's a topic for another time. Currently, NuttX isn't compliant with safety-critical standards anyway; we can address that in the future. > That's a good point. I wonder if it would be worth making board_late_initialize synchronous instead of a thread? @linguini1 board initialization must be performed in the "thread context", not "init context". More advanced drivers require kernel features that are not available in the "init context" -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
