Hi Dmitry,

On Thu, Mar 15, 2018 at 03:42:01PM -0700, Dmitry Torokhov wrote:
> Instead of backlight legacy platform data, let's switch to using device
> properties and GPIO lookup tables.
>
> Signed-off-by: Dmitry Torokhov <dmitry.torok...@gmail.com>
> ---
>  arch/sh/boards/mach-ecovec24/setup.c | 23 +++++++++++++++--------
>  1 file changed, 15 insertions(+), 8 deletions(-)
>
> diff --git a/arch/sh/boards/mach-ecovec24/setup.c 
> b/arch/sh/boards/mach-ecovec24/setup.c
> index 67633d2d42390..ad3d48b3ead19 100644
> --- a/arch/sh/boards/mach-ecovec24/setup.c
> +++ b/arch/sh/boards/mach-ecovec24/setup.c
> @@ -11,11 +11,13 @@
>  #include <linux/init.h>
>  #include <linux/device.h>
>  #include <linux/platform_device.h>
> +#include <linux/property.h>
>  #include <linux/mmc/host.h>
>  #include <linux/mmc/sh_mmcif.h>
>  #include <linux/mtd/physmap.h>
>  #include <linux/mfd/tmio.h>
>  #include <linux/gpio.h>
> +#include <linux/gpio/machine.h>
>  #include <linux/interrupt.h>
>  #include <linux/io.h>
>  #include <linux/delay.h>
> @@ -30,7 +32,6 @@
>  #include <linux/spi/mmc_spi.h>
>  #include <linux/input.h>
>  #include <linux/input/sh_keysc.h>
> -#include <linux/platform_data/gpio_backlight.h>
>  #include <linux/sh_eth.h>
>  #include <linux/sh_intc.h>
>  #include <linux/videodev2.h>
> @@ -367,17 +368,21 @@ static struct platform_device lcdc_device = {
>       },
>  };
>
> -static struct gpio_backlight_platform_data gpio_backlight_data = {
> -     .gpio = GPIO_PTR1,
> -     .def_value = 1,
> -     .name = "backlight",
> +static struct gpiod_lookup_table gpio_backlight_gpios_table = {
> +     .dev_id = "gpio-backlight.0",
> +     .table = {
> +             GPIO_LOOKUP_IDX("sh7724_pfc", GPIO_PTR1, NULL, 0, 
> GPIO_ACTIVE_HIGH);
> +             { }

I understand this is an RFC, but this bit does not even compile.

../arch/sh/boards/mach-ecovec24/setup.c:374:70: error: expected '}'
before ';' token

Thanks
   j

> +     },
> +};
> +
> +static struct property_entry gpio_backlight_properties[] = {
> +     PROPERTY_ENTRY_BOOL("default-on"),
> +     { }
>  };
>
>  static struct platform_device gpio_backlight_device = {
>       .name = "gpio-backlight",
> -     .dev = {
> -             .platform_data = &gpio_backlight_data,
> -     },
>  };
>
>  /* CEU0 */
> @@ -1436,6 +1441,8 @@ static int __init arch_setup(void)
>               return error;
>
>       if (use_backlight) {
> +             device_add_properties(&gpio_backlight_device.dev,
> +                                   gpio_backlight_properties);
>               error = platform_device_add(&gpio_backlight_device);
>               if (error)
>                       pr_warn("%s: failed to register backlight: %d\n",
> --
> 2.16.2.804.g6dcf76e118-goog
>

Attachment: signature.asc
Description: PGP signature

Reply via email to