The SPIDEV structure is the handle that the low-level module has to return to the high-level code. You can extend the structure, but SPIDEV has to be at the top. This handle is also passed to the low-level driver when the high-level code calls low-level functions.
typedef struct _spidev_entry { iofunc_attr_t attr; void *hdl; /* Pointer to high-level handle */ void *lock; /* Pointer to lock list */ } SPIDEV;