On 8/20/19 5:59 PM, Max Staudt wrote: > Hi Bartlomiej, > > Thank you very much for your review! > > Question below. > > > On 08/20/2019 02:06 PM, Bartlomiej Zolnierkiewicz wrote: >>> + /* Workaround for X-Surf: Save drvdata in case zorro8390 has set it */ >>> + old_drvdata = dev_get_drvdata(&z->dev); >> >> This should be done only for type == BOARD_XSURF. > > Agreed, as I want to keep unloading functional for Buddha/Catweasel - see below. > > >>> +static struct zorro_driver pata_buddha_driver = { >>> + .name = "pata_buddha", >>> + .id_table = pata_buddha_zorro_tbl, >>> + .probe = pata_buddha_probe, >>> + .remove = pata_buddha_remove, >> >> I think that we should also add: >> >> .driver = { >> .suppress_bind_attrs = true, >> }, >> >> to prevent the device from being unbinded (and thus ->remove called) >> from the driver using sysfs interface. > > Interesting idea - here's my question now: > > My intention is to allow remove() for boards where we support IDE only (Buddha, Catweasel) - these are autoprobed via zorro_register_driver(). > This shouldn't affect the X-Surf case, as it's not autoprobed in this way anyway - and thus pata_buddha_driver isn't even used. > > Am I missing something? We want to inhibit module unloading (hence no module_exit()), but driver unbinding for Buddha/Catweasel should be fine to remain, right? Indeed, pata_buddha_driver is not even used for X-Surf so this is not an issue (please disregard my comment about suppress_bind_attrs). >> Please also always check your patches with scripts/checkpatch.pl and >> fix the reported issues: > > Apologies, must've been something in my coffee. I will. > > > Thanks for the review, I'll send a new patch once my question above is resolved. > > Max Best regards, -- Bartlomiej Zolnierkiewicz Samsung R&D Institute Poland Samsung Electronics