diff options
author | Richard Purdie <rpurdie@rpsys.net> | 2007-07-09 12:17:24 +0100 |
---|---|---|
committer | Richard Purdie <rpurdie@rpsys.net> | 2007-07-16 01:20:23 +0100 |
commit | 655bfd7aebb12481ab9275284d9500bee5ba3e70 (patch) | |
tree | 54503eb59a03d94db77edca3388d36e3e5315dd8 /include/linux/lcd.h | |
parent | fa9133c24c4115523c1381b67fdd74fd864ac0ea (diff) |
backlight: Convert from struct class_device to struct device
Convert the backlight and LCD classes from struct class_device
to struct device since class_device is scheduled for removal.
One nasty API break is the backlight power attribute has had to be
renamed to bl_power and the LCD power attribute has had to be renamed
to lcd_power since the original names clash with the core. I can't see
a way around this.
Signed-off-by: Richard Purdie <rpurdie@rpsys.net>
Acked-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'include/linux/lcd.h')
-rw-r--r-- | include/linux/lcd.h | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/include/linux/lcd.h b/include/linux/lcd.h index 598793c0745b..1d379787f2e7 100644 --- a/include/linux/lcd.h +++ b/include/linux/lcd.h @@ -62,8 +62,8 @@ struct lcd_device { struct mutex update_lock; /* The framebuffer notifier block */ struct notifier_block fb_notif; - /* The class device structure */ - struct class_device class_dev; + + struct device dev; }; static inline void lcd_set_power(struct lcd_device *ld, int power) @@ -75,9 +75,15 @@ static inline void lcd_set_power(struct lcd_device *ld, int power) } extern struct lcd_device *lcd_device_register(const char *name, - void *devdata, struct lcd_ops *ops); + struct device *parent, void *devdata, struct lcd_ops *ops); extern void lcd_device_unregister(struct lcd_device *ld); -#define to_lcd_device(obj) container_of(obj, struct lcd_device, class_dev) +#define to_lcd_device(obj) container_of(obj, struct lcd_device, dev) + +static inline void * lcd_get_data(struct lcd_device *ld_dev) +{ + return dev_get_drvdata(&ld_dev->dev); +} + #endif |