summaryrefslogtreecommitdiffstats
path: root/arch/mips/mti-sead3
diff options
context:
space:
mode:
Diffstat (limited to 'arch/mips/mti-sead3')
-rw-r--r--arch/mips/mti-sead3/leds-sead3.c19
-rw-r--r--arch/mips/mti-sead3/sead3-leds.c18
2 files changed, 15 insertions, 22 deletions
diff --git a/arch/mips/mti-sead3/leds-sead3.c b/arch/mips/mti-sead3/leds-sead3.c
index 3abe47b..3346c31 100644
--- a/arch/mips/mti-sead3/leds-sead3.c
+++ b/arch/mips/mti-sead3/leds-sead3.c
@@ -15,8 +15,6 @@
#define DRVNAME "sead3-led"
-static struct platform_device *pdev;
-
static void sead3_pled_set(struct led_classdev *led_cdev,
enum led_brightness value)
{
@@ -75,26 +73,11 @@ static struct platform_driver sead3_led_driver = {
static int __init sead3_led_init(void)
{
- int ret;
-
- ret = platform_driver_register(&sead3_led_driver);
- if (ret < 0)
- goto out;
-
- pdev = platform_device_register_simple(DRVNAME, -1, NULL, 0);
- if (IS_ERR(pdev)) {
- ret = PTR_ERR(pdev);
- platform_driver_unregister(&sead3_led_driver);
- goto out;
- }
-
-out:
- return ret;
+ return platform_driver_register(&sead3_led_driver);
}
static void __exit sead3_led_exit(void)
{
- platform_device_unregister(pdev);
platform_driver_unregister(&sead3_led_driver);
}
diff --git a/arch/mips/mti-sead3/sead3-leds.c b/arch/mips/mti-sead3/sead3-leds.c
index c427c57..c6fa3e4 100644
--- a/arch/mips/mti-sead3/sead3-leds.c
+++ b/arch/mips/mti-sead3/sead3-leds.c
@@ -70,10 +70,20 @@ static struct platform_device fled_device = {
.resource = fled_resources
};
-static int __init led_init(void)
+static struct platform_device sead3_led_device = {
+ .name = "sead3-led",
+ .id = -1,
+};
+
+struct platform_device *sead3_led_devices[] = {
+ &pled_device,
+ &fled_device,
+ &sead3_led_device,
+};
+
+static int __init sead3_led_init(void)
{
- platform_device_register(&pled_device);
- return platform_device_register(&fled_device);
+ return platform_add_devices(sead3_led_devices, ARRAY_SIZE(sead3_led_devices));
}
-device_initcall(led_init);
+device_initcall(sead3_led_init);
OpenPOWER on IntegriCloud