diff mbox series

[net-next,v4,06/16] netdevsim: add stub netdevsim driver implementation

Message ID 20190425135956.3970-7-jiri@resnulli.us
State Accepted
Delegated to: David Miller
Headers show
Series netdevsim: implement proper device model | expand

Commit Message

Jiri Pirko April 25, 2019, 1:59 p.m. UTC
From: Jiri Pirko <jiri@mellanox.com>

In order to bus probing to work correctly, register a simple  netdevsim
driver implementation.

Signed-off-by: Jiri Pirko <jiri@mellanox.com>
---
 drivers/net/netdevsim/bus.c | 21 ++++++++++++++++++++-
 1 file changed, 20 insertions(+), 1 deletion(-)

Comments

Sergei Shtylyov April 25, 2019, 3:38 p.m. UTC | #1
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 mbox series

Patch

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);
 }