Hi, Jassi, On 1/3/25 9:57 AM, Tudor Ambarus wrote: >>> Then I updated the mailbox core to allow clients to request channels by >>> passing some args containing channel identifiers to the controllers, >>> that the controllers xlate() using their own method. >>> >> This is unnecessary. >> If you don't pass the doorbell number from DT, each channel populated >> by the driver is just a s/w construct or a 'virtual' channel. Make use >> of 'void *data' in send_data() to specify the doorbell. >> > I think this introduces concurrency problems if the channel identifiers > passed by 'void *data' don't match the virtual channel used for sending > the messages. Do we want to allow this? > > Also, if we use 'void *data' to pass channel identifiers, the channel > checks will have to be made at send_data() time. Thus if passing wrong > channel type for example, the mailbox client will eventually get a > -ENOBUFS and a "Try increasing MBOX_TX_QUEUE_LEN" message, which I find > misleading. Shall I still use 'void *data' to pass channel identifiers through send_data()? I'd like to respin everything. Thanks! ta