mfd: vexpress-sysreg: Remove LEDs code
Subsystems (2)
PATCH 1/1 mfd: vexpress-sysreg: Remove LEDs code
As the current LEDs code breaks other platform, remove it.
It shall be replaced by a generic "MMIO LEDs" driver.
--- drivers/mfd/vexpress-sysreg.c | 77 ----------------------------------------- 1 file changed, 77 deletions(-)
Hi Arnd,
As I haven't managed to get any feedback on the generic MMIO LEDs driver so far, I have to postpone it till next cycle and completely remove the LED-related code from the vexpress-sysreg driver, as it breaks other platforms today.
Would you be so kind to apply this patch, please? Alternatively you can pull it from here:
git://git.linaro.org/people/pawelmoll/linux.git vexpress-soc2
(this branch is based on the vexpress-soc you already have)
Cheers!
Pawel
drivers/mfd/vexpress-sysreg.c +0 -77
@@ -473,80 +473,3 @@ static int __init vexpress_sysreg_init(void)return platform_driver_register (&vexpress_sysreg_driver); }core_initcall (vexpress_sysreg_init); - - -#if defined(CONFIG_LEDS_CLASS ) - -struct vexpress_sysreg_led { -u32 mask; -struct led_classdev cdev; -} vexpress_sysreg_leds[] = { - { .mask =1 <<0 , .cdev.name ="v2m:green:user1" , - .cdev.default_trigger ="heartbeat" , }, - { .mask =1 <<1 , .cdev.name ="v2m:green:user2" , - .cdev.default_trigger ="mmc0" , }, - { .mask =1 <<2 , .cdev.name ="v2m:green:user3" , - .cdev.default_trigger ="cpu0" , }, - { .mask =1 <<3 , .cdev.name ="v2m:green:user4" , - .cdev.default_trigger ="cpu1" , }, - { .mask =1 <<4 , .cdev.name ="v2m:green:user5" , - .cdev.default_trigger ="cpu2" , }, - { .mask =1 <<5 , .cdev.name ="v2m:green:user6" , - .cdev.default_trigger ="cpu3" , }, - { .mask =1 <<6 , .cdev.name ="v2m:green:user7" , - .cdev.default_trigger ="cpu4" , }, - { .mask =1 <<7 , .cdev.name ="v2m:green:user8" , - .cdev.default_trigger ="cpu5" , }, -}; - -static DEFINE_SPINLOCK (vexpress_sysreg_leds_lock); - -static void vexpress_sysreg_led_brightness_set (struct led_classdev *cdev, -enum led_brightness brightness) -{ -struct vexpress_sysreg_led *led =container_of (cdev, - struct vexpress_sysreg_led, cdev); -unsigned long flags; -u32 val; - -spin_lock_irqsave (&vexpress_sysreg_leds_lock, flags); - - val =readl (vexpress_sysreg_base +SYS_LED ); -if (brightness ==LED_OFF ) - val &= ~led->mask; -else - val |= led->mask; -writel (val, vexpress_sysreg_base +SYS_LED ); - -spin_unlock_irqrestore (&vexpress_sysreg_leds_lock, flags); -} - -static int __init vexpress_sysreg_init_leds (void ) -{ -struct vexpress_sysreg_led *led; -int i; - -/* Clear all user LEDs */ -writel (0 , vexpress_sysreg_base +SYS_LED ); - -for (i =0 , led = vexpress_sysreg_leds; - i <ARRAY_SIZE (vexpress_sysreg_leds); i++, led++) { -int err; - - led->cdev.brightness_set = vexpress_sysreg_led_brightness_set; - err =led_classdev_register (vexpress_sysreg_dev, &led->cdev); -if (err) { -dev_err (vexpress_sysreg_dev, -"Failed to register LED %d! (%d)\n" , - i, err); -while (led--, i--) -led_classdev_unregister (&led->cdev); -return err; - } - } - -return 0 ; -} -device_initcall (vexpress_sysreg_init_leds); - -#endif
Signature · 1 line
1.7.10.4
PATCH 1/1 mfd: vexpress-sysreg: Remove LEDs code
Quoted 6 lines · Pawel Moll
As the current LEDs code breaks other platform, remove it.
It shall be replaced by a generic "MMIO LEDs" driver.
Reported-by Stephen Warren <[email protected]>Signed-off-by Pawel Moll <[email protected]>
PATCH 1/1 mfd: vexpress-sysreg: Remove LEDs code
In reply to Pawel MollQuoted 17 lines · Pawel Moll
As the current LEDs code breaks other platform, remove it.
It shall be replaced by a generic "MMIO LEDs" driver.
Reported-by Stephen Warren <[email protected]>Signed-off-by Pawel Moll <[email protected]>--- drivers/mfd/vexpress-sysreg.c | 77 ----------------------------------------- 1 file changed, 77 deletions(-)Hi Arnd,
As I haven't managed to get any feedback on the generic MMIO LEDs driver so far, I have to postpone it till next cycle and completely remove the LED-related code from the vexpress-sysreg driver, as it breaks other platforms today.
Quoted 6 lines
Would you be so kind to apply this patch, please? Alternatively you can pull it from here:
git://git.linaro.org/people/pawelmoll/linux.gitvexpress-soc2(this branch is based on the vexpress-soc you already have)
Applied the patch on top of vexpress/soc, and merged in that branch into next/soc again (it had been reverted due to the issues)
-Olof
PATCH 1/1 mfd: vexpress-sysreg: Remove LEDs code
Quoted 21 lines · Olof Johansson
Quoted 20 lines · Pawel Moll
As the current LEDs code breaks other platform, remove it.
It shall be replaced by a generic "MMIO LEDs" driver.
Reported-by Stephen Warren <[email protected]>Signed-off-by Pawel Moll <[email protected]>--- drivers/mfd/vexpress-sysreg.c | 77 ----------------------------------------- 1 file changed, 77 deletions(-)Hi Arnd,
As I haven't managed to get any feedback on the generic MMIO LEDs driver so far, I have to postpone it till next cycle and completely remove the LED-related code from the vexpress-sysreg driver, as it breaks other platforms today.
Would you be so kind to apply this patch, please? Alternatively you can pull it from here:
Quoted 6 lines
Quoted 3 lines
git://git.linaro.org/people/pawelmoll/linux.gitvexpress-soc2(this branch is based on the vexpress-soc you already have)
Applied the patch on top of vexpress/soc, and merged in that branch into next/soc again (it had been reverted due to the issues)
Actually, I replaced our current vexpress/soc with the latest one you had sent a pull request from before, since it had the appropriate dependencies with the clock tree sorted out
(git://git.linaro.org/people/pawelmoll/linux.git vexpress-clk-soc).
-Olof
PATCH 1/1 mfd: vexpress-sysreg: Remove LEDs code
Quoted 26 lines · Olof Johansson
Quoted 25 lines · Olof Johansson
Quoted 23 lines · Pawel Moll
As the current LEDs code breaks other platform, remove it.
It shall be replaced by a generic "MMIO LEDs" driver.
Reported-by Stephen Warren <[email protected]>Signed-off-by Pawel Moll <[email protected]>--- drivers/mfd/vexpress-sysreg.c | 77 ----------------------------------------- 1 file changed, 77 deletions(-)Hi Arnd,
As I haven't managed to get any feedback on the generic MMIO LEDs driver so far, I have to postpone it till next cycle and completely remove the LED-related code from the vexpress-sysreg driver, as it breaks other platforms today.
Would you be so kind to apply this patch, please? Alternatively you can pull it from here:
git://git.linaro.org/people/pawelmoll/linux.gitvexpress-soc2(this branch is based on the vexpress-soc you already have)
Quoted 7 lines
Quoted 2 lines
Applied the patch on top of vexpress/soc, and merged in that branch into next/soc again (it had been reverted due to the issues)
Actually, I replaced our current vexpress/soc with the latest one you had sent a pull request from before, since it had the appropriate dependencies with the clock tree sorted out
(git://git.linaro.org/people/pawelmoll/linux.gitvexpress-clk-soc).
In next-20121127, I still see that drivers/mfd/vexpress-sysreg.c has the following code:
Quoted 7 lines
static int
__initvexpress_sysreg_init_leds(void){ struct vexpress_sysreg_led *led; int i; /* Clear all user LEDs */ writel(0, vexpress_sysreg_base + SYS_LED);
...
Quoted 2 lines
}
device_initcall(vexpress_sysreg_init_leds);
... and on systems where vexpress_sysreg_base is not set, this crashes the kernel on boot.
Shouldn't the patch "mfd: vexpress-sysreg: Remove LEDs code" be applied to solve this?
PATCH 1/1 mfd: vexpress-sysreg: Remove LEDs code
Quoted 46 lines · Stephen Warren
Quoted 26 lines · Olof Johansson
Quoted 25 lines · Olof Johansson
Quoted 23 lines · Pawel Moll
As the current LEDs code breaks other platform, remove it.
It shall be replaced by a generic "MMIO LEDs" driver.
Reported-by Stephen Warren <[email protected]>Signed-off-by Pawel Moll <[email protected]>--- drivers/mfd/vexpress-sysreg.c | 77 ----------------------------------------- 1 file changed, 77 deletions(-)Hi Arnd,
As I haven't managed to get any feedback on the generic MMIO LEDs driver so far, I have to postpone it till next cycle and completely remove the LED-related code from the vexpress-sysreg driver, as it breaks other platforms today.
Would you be so kind to apply this patch, please? Alternatively you can pull it from here:
git://git.linaro.org/people/pawelmoll/linux.gitvexpress-soc2(this branch is based on the vexpress-soc you already have)
Quoted 7 lines
Quoted 2 lines
Applied the patch on top of vexpress/soc, and merged in that branch into next/soc again (it had been reverted due to the issues)
Actually, I replaced our current vexpress/soc with the latest one you had sent a pull request from before, since it had the appropriate dependencies with the clock tree sorted out
(git://git.linaro.org/people/pawelmoll/linux.gitvexpress-clk-soc).In next-20121127, I still see that
drivers/mfd/vexpress-sysreg.chas the following code:Quoted 7 lines
static int
__initvexpress_sysreg_init_leds(void){ struct vexpress_sysreg_led *led; int i; /* Clear all user LEDs */ writel(0, vexpress_sysreg_base + SYS_LED);...
Quoted 8 lines
Quoted 2 lines
}
device_initcall(vexpress_sysreg_init_leds);... and on systems where
vexpress_sysreg_baseis not set, this crashes the kernel on boot.Shouldn't the patch "mfd: vexpress-sysreg: Remove LEDs code" be applied to solve this?
By all means... I had an impression that Olof re-pulled the vexpress-soc2 branch which has it, but apparently not.
Olof, would you be so kind to apply the patch then?
Cheers!
Pawe?
PATCH 1/1 mfd: vexpress-sysreg: Remove LEDs code
Quoted 53 lines · Pawel Moll
Quoted 52 lines · Stephen Warren
Quoted 26 lines · Olof Johansson
Quoted 25 lines · Olof Johansson
Quoted 23 lines · Pawel Moll
As the current LEDs code breaks other platform, remove it.
It shall be replaced by a generic "MMIO LEDs" driver.
Reported-by Stephen Warren <[email protected]>Signed-off-by Pawel Moll <[email protected]>--- drivers/mfd/vexpress-sysreg.c | 77 ----------------------------------------- 1 file changed, 77 deletions(-)Hi Arnd,
As I haven't managed to get any feedback on the generic MMIO LEDs driver so far, I have to postpone it till next cycle and completely remove the LED-related code from the vexpress-sysreg driver, as it breaks other platforms today.
Would you be so kind to apply this patch, please? Alternatively you can pull it from here:
git://git.linaro.org/people/pawelmoll/linux.gitvexpress-soc2(this branch is based on the vexpress-soc you already have)
Quoted 7 lines
Quoted 2 lines
Applied the patch on top of vexpress/soc, and merged in that branch into next/soc again (it had been reverted due to the issues)
Actually, I replaced our current vexpress/soc with the latest one you had sent a pull request from before, since it had the appropriate dependencies with the clock tree sorted out
(git://git.linaro.org/people/pawelmoll/linux.gitvexpress-clk-soc).In next-20121127, I still see that
drivers/mfd/vexpress-sysreg.chas the following code:Quoted 7 lines
static int
__initvexpress_sysreg_init_leds(void){ struct vexpress_sysreg_led *led; int i; /* Clear all user LEDs */ writel(0, vexpress_sysreg_base + SYS_LED);...
Quoted 2 lines
}
device_initcall(vexpress_sysreg_init_leds);... and on systems where
vexpress_sysreg_baseis not set, this crashes the kernel on boot.
Quoted 7 lines
Quoted 2 lines
Shouldn't the patch "mfd: vexpress-sysreg: Remove LEDs code" be applied to solve this?
By all means... I had an impression that Olof re-pulled the vexpress-soc2 branch which has it, but apparently not.
Olof, would you be so kind to apply the patch then?
Applied now, sorry for dropping the ball on this one. Thanks for the reminders on IRC, Stephen.
-Olof