snikeguo commented on issue #16415: URL: https://github.com/apache/nuttx/issues/16415#issuecomment-2926707293
@PetervdPerk-NXP Let me take an example with the MPC5606 Flash Driver binary provided by NXP. Many years ago, when I was using MPC56XX series chips, the Flash Driver interface provided by NXP was aligned to chip pages or sectors. I mentioned to NXP's FAE that my APP only requires 4-byte alignment at maximum, criticizing that their Driver was not user-friendly enough and failed to consider engineers' actual needs. It was not until I worked on the RH850's Flash Align Manager that I realized how problematic it is to handle alignment at the lowest level. To enable arbitrary byte-level writes from upper layers, I had to invoke interfaces like Malloc and mutex. Have you ever considered this: A driver framework should be generic code that exposes sufficient functionality to the application layer while providing the simplest possible interfaces to the chip boot layer. Not everyone can design high-quality driver frameworks, but if the chip driver layer is kept simple enough, it will allow more people to contribute to chip driver development. There are countless chip drivers in the world that need to be implemented – only a few can produce high-quality ones. Therefore, we should lower the barrier for developing chip drivers. Everyone can do 1+1=2, but only a few can handle calculus. -- 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]
