Re: [RESEND PATCH v2 1/1] leds: simatic-ipc-leds-gpio: add support for module BX-59A
From: andy . shevchenko
Date: Thu Feb 22 2024 - 16:40:45 EST
Sun, Feb 18, 2024 at 02:28:06PM +0800, Xing Tong Wu kirjoitti:
> From: Xing Tong Wu <xingtong.wu@xxxxxxxxxxx>
>
> This is used for the Siemens Simatic IPC BX-59A, which has its LEDs
> connected to GPIOs provided by the Nuvoton NCT6126D
MIssing period at the end of the sentence.
..
> static int simatic_ipc_leds_gpio_f7188x_probe(struct platform_device *pdev)
> {
> + const struct simatic_ipc_platform *plat = pdev->dev.platform_data;
dev_get_platdata()
> + struct simatic_ipc_led_tables *led_tables;
> +
> + led_tables = devm_kzalloc(&pdev->dev, sizeof(*led_tables), GFP_KERNEL);
> + if (!led_tables)
> + return -ENOMEM;
> +
> + switch (plat->devmode) {
> + case SIMATIC_IPC_DEVICE_227G:
> + led_tables->led_lookup_table = &simatic_ipc_led_gpio_table_227g;
> + led_tables->led_lookup_table_extra = &simatic_ipc_led_gpio_table_extra_227g;
> + break;
> + case SIMATIC_IPC_DEVICE_BX_59A:
> + led_tables->led_lookup_table = &simatic_ipc_led_gpio_table_bx_59a;
> + break;
> + default:
> + return -ENODEV;
> + }
> +
> + dev_set_drvdata(&pdev->dev, led_tables);
platform_set_drvdata()
> + return simatic_ipc_leds_gpio_probe(pdev, led_tables->led_lookup_table,
> + led_tables->led_lookup_table_extra);
> }
..
> static void simatic_ipc_leds_gpio_f7188x_remove(struct platform_device *pdev)
> {
> + struct simatic_ipc_led_tables *led_tables;
> + led_tables = dev_get_drvdata(&pdev->dev);
platform_get_drvdata()
> + simatic_ipc_leds_gpio_remove(pdev, led_tables->led_lookup_table,
> + led_tables->led_lookup_table_extra);
> }
--
With Best Regards,
Andy Shevchenko