Re: [PATCHv7 2/5] mailbox: Introduce framework for mailbox
flat view
From: Jassi Brar <hidden>
Date: 2014-06-20 16:30:04
On 20 June 2014 21:37, Sudeep Holla [off-list ref] wrote:
As I mentioned in the other mail, suppose there's one channel and multiple users of it. Each have to acquire the channel, and from then any data received will be sent to the client. But what is the async data from remote is not for the client currently holding the channel. I also gave the example. If the remote is the process that controls power managements and allows you to set the thermal bounds. If those limits are crossed, it sends any interrupt to notify that, while the controller can be busy handling some other request(say DVFS).
Multiple clients of a single mailbox channel asks for a single 'server' type shim client that simply forwards requests to remote on behalf of clients but filter out async notifications from replies coming in from remote. In your case, your 'thermal' client driver will register itself with the shim server for 'thermal' type async notifications. The shim server holds the mailbox channel for whole of its lifetime so you never miss the thermal event. cheers, -jassi