Messages in this thread | | | From | Oded Gabbay <> | Date | Sat, 26 Jan 2019 18:24:51 +0200 | Subject | Re: [PATCH 01/15] habanalabs: add skeleton driver |
| |
On Sat, Jan 26, 2019 at 6:06 PM Arnd Bergmann <arnd@arndb.de> wrote: > > On Wed, Jan 23, 2019 at 1:01 AM Oded Gabbay <oded.gabbay@gmail.com> wrote: > > > diff --git a/drivers/misc/habanalabs/include/habanalabs_device_if.h b/drivers/misc/habanalabs/include/habanalabs_device_if.h > > new file mode 100644 > > index 000000000000..9dbb7077eabd > > --- /dev/null > > +++ b/drivers/misc/habanalabs/include/habanalabs_device_if.h > > Since this is a apparently a user space ABI, the file should be in > include/uapi/linux/, > not in the driver directory.
This is not a user space ABI. This is the ABI between the driver and the F/W.
> > > +/* must be aligned to 4 bytes */ > > +struct armcp_info { > > + struct armcp_sensor sensors[ARMCP_MAX_SENSORS]; > > + __u8 kernel_version[VERSION_MAX_LEN]; > > + __u32 reserved[3]; > > + __u32 cpld_version; > > + __u32 infineon_version; > > + __u8 fuse_version[VERSION_MAX_LEN]; > > + __u8 thermal_version[VERSION_MAX_LEN]; > > + __u8 armcp_version[VERSION_MAX_LEN]; > > + __u64 dram_size; > > +}; > > The compiler will align this to 8 bytes on most architectures, and > add another padding field before dram_size. Better remove the > 'reserved' fields, or make them an even number. I can't do that, because those fields were once used by the F/W and if I will change the order here, or add/remove those fields then it will break compatibility with old F/W.
Thanks, Oded
> > Arnd
| |