Il 15/11/2013 02:30, manty kuma ha wrote: > Ideally, it depends on the platform you are working. You need to > discuss with them for the correct approach. For Qualcomm they have > some hardware caled as RPU(Register protection unit). They have > systems calls exposed for using them. You can associtate it to the > register you want protection. I dont know if there is any way you > could do it in Linux itself? > > Regards, > Sandeep > > > On Thu, Nov 14, 2013 at 9:14 PM, Bernd Petrovitsch > <bernd@xxxxxxxxxxxxxxxxxxx <mailto:bernd@xxxxxxxxxxxxxxxxxxx>> wrote: > > Hi! > > On Don, 2013-11-14 at 11:32 +0100, Luca Ellero wrote: > [...] > > can someone please show me which is the best practice to lock a > > read/write to a hardware register. > > In other words if, in a driver, I want to modify a bit in a HW > register, > > I have to read the register, set/reset the relevant bit and > write back > > the reg. > > But what can I do to be sure that no other code modifies the > register > > between my read and write? > > Is spin_lock() suitable for this purpose? > > If the read-modify-write (read: the critical section) run-time is > short, > a spin-lock is the usual means. If it is needed from IRQ-context - see > also other mails - you must use the *_irq() variant. > > Bernd > -- > Bernd Petrovitsch Email : > bernd@xxxxxxxxxxxxxxxxxxx <mailto:bernd@xxxxxxxxxxxxxxxxxxx> > LUGA : http://www.luga.at > > > _______________________________________________ > Kernelnewbies mailing list > Kernelnewbies@xxxxxxxxxxxxxxxxx > <mailto:Kernelnewbies@xxxxxxxxxxxxxxxxx> > http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies > > Thanks to all, your suggestions are very appreciated Best regards Luca _______________________________________________ Kernelnewbies mailing list Kernelnewbies@xxxxxxxxxxxxxxxxx http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies