On Mon, Oct 8, 2018 at 5:41 PM Arnd Bergmann <arnd@xxxxxxxx> wrote: > > On Sun, Oct 7, 2018 at 5:00 PM <sunil.kovvuri@xxxxxxxxx> wrote: > > > > +/* Structure for requesting resource provisioning. > > + * 'modify' flag to be used when either requesting more > > + * or to detach partial of a cetain resource type. > > + * Rest of the fields specify how many of what type to > > + * be attached. > > + */ > > +struct rsrc_attach { > > + struct mbox_msghdr hdr; > > + u8 modify:1; > > + u8 npalf:1; > > + u8 nixlf:1; > > + u16 sso; > > + u16 ssow; > > + u16 timlfs; > > + u16 cptlfs; > > +}; > > + > > +/* Structure for relinquishing resources. > > + * 'partial' flag to be used when relinquishing all resources > > + * but only of a certain type. If not set, all resources of all > > + * types provisioned to the RVU function will be detached. > > + */ > > +struct rsrc_detach { > > + struct mbox_msghdr hdr; > > + u8 partial:1; > > + u8 npalf:1; > > + u8 nixlf:1; > > + u8 sso:1; > > + u8 ssow:1; > > + u8 timlfs:1; > > + u8 cptlfs:1; > > +}; > > Are these bitfields part of the message that gets sent to the > underlying implementation? It seems there is still an endianess > issue then. > > Arnd No these structures are not used for kernel driver to firmware communication where register reads via readq are involved. These structures are used for mailbox communication between different PCI devices and this mailbox is a shared memory. Sunil.