One final thing: On Tue, Jul 13, 2021 at 07:45:21PM -0700, longli@xxxxxxxxxxxxxxxxx wrote: > +#define az_blob_dbg(fmt, args...) dev_dbg(&az_blob_dev.device->device, fmt, ##args) > +#define az_blob_info(fmt, args...) dev_info(&az_blob_dev.device->device, fmt, ##args) > +#define az_blob_warn(fmt, args...) dev_warn(&az_blob_dev.device->device, fmt, ##args) > +#define az_blob_err(fmt, args...) dev_err(&az_blob_dev.device->device, fmt, ##args) This tiny driver does not deserve a different loging scheme from all of the rest of the kernel. Just use the dev_* calls directly please, no need to try to roll your own. Especially for a 600 line file. And remove your calls to az_blob_info() that are just debugging stuff, when the driver is working properly, it is quiet. thanks, greg k-h