Commit e87ceea1 authored by Jan-Bernd Themann's avatar Jan-Bernd Themann Committed by David S. Miller

ehea: fix sysfs link compile problem

Due to changes in the struct device_driver there is no direct
access to its kobj any longer. The kobj was used to create
sysfs links between eHEA ethernet devices and the driver.
This patch removes the affected sysfs links to resolve
the build problems.
Signed-off-by: default avatarJan-Bernd Themann <themann@de.ibm.com>
Signed-off-by: default avatarJeff Garzik <jeff@garzik.org>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 26d29ea7
...@@ -2809,34 +2809,6 @@ static void __devinit logical_port_release(struct device *dev) ...@@ -2809,34 +2809,6 @@ static void __devinit logical_port_release(struct device *dev)
of_node_put(port->ofdev.node); of_node_put(port->ofdev.node);
} }
static int ehea_driver_sysfs_add(struct device *dev,
struct device_driver *driver)
{
int ret;
ret = sysfs_create_link(&driver->kobj, &dev->kobj,
kobject_name(&dev->kobj));
if (ret == 0) {
ret = sysfs_create_link(&dev->kobj, &driver->kobj,
"driver");
if (ret)
sysfs_remove_link(&driver->kobj,
kobject_name(&dev->kobj));
}
return ret;
}
static void ehea_driver_sysfs_remove(struct device *dev,
struct device_driver *driver)
{
struct device_driver *drv = driver;
if (drv) {
sysfs_remove_link(&drv->kobj, kobject_name(&dev->kobj));
sysfs_remove_link(&dev->kobj, "driver");
}
}
static struct device *ehea_register_port(struct ehea_port *port, static struct device *ehea_register_port(struct ehea_port *port,
struct device_node *dn) struct device_node *dn)
{ {
...@@ -2861,16 +2833,8 @@ static struct device *ehea_register_port(struct ehea_port *port, ...@@ -2861,16 +2833,8 @@ static struct device *ehea_register_port(struct ehea_port *port,
goto out_unreg_of_dev; goto out_unreg_of_dev;
} }
ret = ehea_driver_sysfs_add(&port->ofdev.dev, &ehea_driver.driver);
if (ret) {
ehea_error("failed to register sysfs driver link");
goto out_rem_dev_file;
}
return &port->ofdev.dev; return &port->ofdev.dev;
out_rem_dev_file:
device_remove_file(&port->ofdev.dev, &dev_attr_log_port_id);
out_unreg_of_dev: out_unreg_of_dev:
of_device_unregister(&port->ofdev); of_device_unregister(&port->ofdev);
out: out:
...@@ -2879,7 +2843,6 @@ static struct device *ehea_register_port(struct ehea_port *port, ...@@ -2879,7 +2843,6 @@ static struct device *ehea_register_port(struct ehea_port *port,
static void ehea_unregister_port(struct ehea_port *port) static void ehea_unregister_port(struct ehea_port *port)
{ {
ehea_driver_sysfs_remove(&port->ofdev.dev, &ehea_driver.driver);
device_remove_file(&port->ofdev.dev, &dev_attr_log_port_id); device_remove_file(&port->ofdev.dev, &dev_attr_log_port_id);
of_device_unregister(&port->ofdev); of_device_unregister(&port->ofdev);
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment