diff options
Diffstat (limited to 'drivers/video/backlight/ld9040.c')
-rw-r--r-- | drivers/video/backlight/ld9040.c | 23 |
1 files changed, 7 insertions, 16 deletions
diff --git a/drivers/video/backlight/ld9040.c b/drivers/video/backlight/ld9040.c index 1e0a3093ce50..506a6c236039 100644 --- a/drivers/video/backlight/ld9040.c +++ b/drivers/video/backlight/ld9040.c | |||
@@ -702,7 +702,7 @@ static int ld9040_probe(struct spi_device *spi) | |||
702 | lcd->spi = spi; | 702 | lcd->spi = spi; |
703 | lcd->dev = &spi->dev; | 703 | lcd->dev = &spi->dev; |
704 | 704 | ||
705 | lcd->lcd_pd = spi->dev.platform_data; | 705 | lcd->lcd_pd = dev_get_platdata(&spi->dev); |
706 | if (!lcd->lcd_pd) { | 706 | if (!lcd->lcd_pd) { |
707 | dev_err(&spi->dev, "platform data is NULL.\n"); | 707 | dev_err(&spi->dev, "platform data is NULL.\n"); |
708 | return -EINVAL; | 708 | return -EINVAL; |
@@ -716,7 +716,8 @@ static int ld9040_probe(struct spi_device *spi) | |||
716 | return ret; | 716 | return ret; |
717 | } | 717 | } |
718 | 718 | ||
719 | ld = lcd_device_register("ld9040", &spi->dev, lcd, &ld9040_lcd_ops); | 719 | ld = devm_lcd_device_register(&spi->dev, "ld9040", &spi->dev, lcd, |
720 | &ld9040_lcd_ops); | ||
720 | if (IS_ERR(ld)) | 721 | if (IS_ERR(ld)) |
721 | return PTR_ERR(ld); | 722 | return PTR_ERR(ld); |
722 | 723 | ||
@@ -726,12 +727,10 @@ static int ld9040_probe(struct spi_device *spi) | |||
726 | props.type = BACKLIGHT_RAW; | 727 | props.type = BACKLIGHT_RAW; |
727 | props.max_brightness = MAX_BRIGHTNESS; | 728 | props.max_brightness = MAX_BRIGHTNESS; |
728 | 729 | ||
729 | bd = backlight_device_register("ld9040-bl", &spi->dev, | 730 | bd = devm_backlight_device_register(&spi->dev, "ld9040-bl", &spi->dev, |
730 | lcd, &ld9040_backlight_ops, &props); | 731 | lcd, &ld9040_backlight_ops, &props); |
731 | if (IS_ERR(bd)) { | 732 | if (IS_ERR(bd)) |
732 | ret = PTR_ERR(bd); | 733 | return PTR_ERR(bd); |
733 | goto out_unregister_lcd; | ||
734 | } | ||
735 | 734 | ||
736 | bd->props.brightness = MAX_BRIGHTNESS; | 735 | bd->props.brightness = MAX_BRIGHTNESS; |
737 | lcd->bd = bd; | 736 | lcd->bd = bd; |
@@ -757,11 +756,6 @@ static int ld9040_probe(struct spi_device *spi) | |||
757 | 756 | ||
758 | dev_info(&spi->dev, "ld9040 panel driver has been probed.\n"); | 757 | dev_info(&spi->dev, "ld9040 panel driver has been probed.\n"); |
759 | return 0; | 758 | return 0; |
760 | |||
761 | out_unregister_lcd: | ||
762 | lcd_device_unregister(lcd->ld); | ||
763 | |||
764 | return ret; | ||
765 | } | 759 | } |
766 | 760 | ||
767 | static int ld9040_remove(struct spi_device *spi) | 761 | static int ld9040_remove(struct spi_device *spi) |
@@ -769,9 +763,6 @@ static int ld9040_remove(struct spi_device *spi) | |||
769 | struct ld9040 *lcd = spi_get_drvdata(spi); | 763 | struct ld9040 *lcd = spi_get_drvdata(spi); |
770 | 764 | ||
771 | ld9040_power(lcd, FB_BLANK_POWERDOWN); | 765 | ld9040_power(lcd, FB_BLANK_POWERDOWN); |
772 | backlight_device_unregister(lcd->bd); | ||
773 | lcd_device_unregister(lcd->ld); | ||
774 | |||
775 | return 0; | 766 | return 0; |
776 | } | 767 | } |
777 | 768 | ||