From: Hans Dedecker Date: Fri, 23 Sep 2016 13:08:17 +0000 (+0200) Subject: device: Move the different device type registrations to the device type file X-Git-Url: http://git.archive.openwrt.org/?p=project%2Fnetifd.git;a=commitdiff_plain;h=92889eca62fcd5b72d7c54101c35ff6d6d477c40 device: Move the different device type registrations to the device type file While at it; make device_types static if only used in the device type file Signed-off-by: Hans Dedecker --- diff --git a/alias.c b/alias.c index f95c9f5..649f2d1 100644 --- a/alias.c +++ b/alias.c @@ -30,8 +30,6 @@ struct alias_device { char name[]; }; -static struct device_type alias_device_type; - static void alias_set_device(struct alias_device *alias, struct device *dev) { if (dev == alias->dep.dev) { diff --git a/bridge.c b/bridge.c index bcece52..98e237b 100644 --- a/bridge.c +++ b/bridge.c @@ -729,3 +729,8 @@ bridge_create(const char *name, struct device_type *devtype, return dev; } + +static void __init bridge_device_type_init(void) +{ + device_type_add(&bridge_device_type); +} diff --git a/device.c b/device.c index a7d18af..e17df13 100644 --- a/device.c +++ b/device.c @@ -82,16 +82,6 @@ int device_type_add(struct device_type *devtype) return 0; } -/* initialize device type list and add known types */ -static void __init devtypes_init(void) -{ - device_type_add(&simple_device_type); - device_type_add(&bridge_device_type); - device_type_add(&tunnel_device_type); - device_type_add(&macvlan_device_type); - device_type_add(&vlandev_device_type); -} - /* Retrieve the device type for the given name. If 'bridge' is true, the type * must have bridge capabilities */ @@ -1065,3 +1055,8 @@ device_dump_status(struct blob_buf *b, struct device *dev) system_if_dump_stats(dev, b); blobmsg_close_table(b, s); } + +static void __init simple_device_type_init(void) +{ + device_type_add(&simple_device_type); +} diff --git a/device.h b/device.h index c669beb..f3ca957 100644 --- a/device.h +++ b/device.h @@ -228,8 +228,6 @@ extern const struct uci_blob_param_list device_attr_list; extern struct device_type simple_device_type; extern struct device_type bridge_device_type; extern struct device_type tunnel_device_type; -extern struct device_type macvlan_device_type; -extern struct device_type vlandev_device_type; void device_lock(void); void device_unlock(void); diff --git a/macvlan.c b/macvlan.c index ffadfd4..01a48cd 100644 --- a/macvlan.c +++ b/macvlan.c @@ -253,7 +253,7 @@ macvlan_create(const char *name, struct device_type *devtype, return dev; } -struct device_type macvlan_device_type = { +static struct device_type macvlan_device_type = { .name = "MAC VLAN", .config_params = &macvlan_attr_list, .create = macvlan_create, @@ -262,3 +262,8 @@ struct device_type macvlan_device_type = { .free = macvlan_free, .dump_info = macvlan_dump_info, }; + +static void __init macvlan_device_type_init(void) +{ + device_type_add(&macvlan_device_type); +} diff --git a/tunnel.c b/tunnel.c index ec622d8..32f3613 100644 --- a/tunnel.c +++ b/tunnel.c @@ -97,4 +97,7 @@ struct device_type tunnel_device_type = { .free = tunnel_free, }; - +static void __init tunnel_device_type_init(void) +{ + device_type_add(&tunnel_device_type); +} diff --git a/vlandev.c b/vlandev.c index b8f7a25..becaed8 100644 --- a/vlandev.c +++ b/vlandev.c @@ -241,7 +241,7 @@ vlandev_create(const char *name, struct device_type *devtype, return dev; } -struct device_type vlandev_device_type = { +static struct device_type vlandev_device_type = { .name = "VLANDEV", .config_params = &vlandev_attr_list, .create = vlandev_create, @@ -250,3 +250,8 @@ struct device_type vlandev_device_type = { .free = vlandev_free, .dump_info = vlandev_dump_info, }; + +static void __init vlandev_device_type_init(void) +{ + device_type_add(&vlandev_device_type); +}