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]

Reply via email to