Message ID | 20190425135956.3970-7-jiri@resnulli.us |
---|---|
State | Accepted |
Delegated to: | David Miller |
Headers | show |
Series | netdevsim: implement proper device model | expand |
Hello! On 04/25/2019 04:59 PM, Jiri Pirko wrote: > From: Jiri Pirko <jiri@mellanox.com> > > In order to bus probing to work correctly, register a simple netdevsim "In order for", perhaps? > driver implementation. > > Signed-off-by: Jiri Pirko <jiri@mellanox.com> [...] MBR, Sergei
diff --git a/drivers/net/netdevsim/bus.c b/drivers/net/netdevsim/bus.c index 7e83a2e856d3..5b5a9b0831a9 100644 --- a/drivers/net/netdevsim/bus.c +++ b/drivers/net/netdevsim/bus.c @@ -153,12 +153,31 @@ void nsim_bus_dev_del(struct nsim_bus_dev *nsim_bus_dev) kfree(nsim_bus_dev); } +static struct device_driver nsim_driver = { + .name = DRV_NAME, + .bus = &nsim_bus, + .owner = THIS_MODULE, +}; + int nsim_bus_init(void) { - return bus_register(&nsim_bus); + int err; + + err = bus_register(&nsim_bus); + if (err) + return err; + err = driver_register(&nsim_driver); + if (err) + goto err_bus_unregister; + return 0; + +err_bus_unregister: + bus_unregister(&nsim_bus); + return err; } void nsim_bus_exit(void) { + driver_unregister(&nsim_driver); bus_unregister(&nsim_bus); }