Re: [PATCH v3 2/2] gpio: loongson: add firmware offset parse support
From: Yinbo Zhu <zhuyinbo@loongson.cn>
Date: 2023-08-11 03:50:41
Also in:
linux-gpio, lkml
在 2023/8/10 下午4:27, Linus Walleij 写道:
Hi Yinbo, thanks for your patch! On Mon, Aug 7, 2023 at 9:41 AM Yinbo Zhu [off-list ref] wrote:quoted
Loongson GPIO controllers come in multiple variants that are compatible except for certain register offset values. Add support for device properties allowing to specify them in ACPI or DT. Signed-off-by: Yinbo Zhu <zhuyinbo@loongson.cn>(...)quoted
@@ -26,6 +26,7 @@ struct loongson_gpio_chip_data { unsigned int conf_offset; unsigned int out_offset; unsigned int in_offset; + unsigned int inten_offset;Consider just changing all of these from unsigned int to u32.
okay, I got it.
(...)quoted
+ if (device_property_read_u32(dev, "loongson,gpio-conf-offset", (u32 *)&d->conf_offset) + || device_property_read_u32(dev, "loongson,gpio-in-offset", (u32 *)&d->in_offset) + || device_property_read_u32(dev, "loongson,gpio-out-offset", (u32 *)&d->out_offset) + || device_property_read_u32(dev, "loongson,gpio-ctrl-mode", (u32 *)&d->mode))Because then you can get rid of this annoying forest of cast.
Change offset to u32 and here still need use a (u32 *) cast, because the chip_data is const type so &chip_data->offset will be (const u32 *) type and need a (u32 *) cast.
I'm fine with doing this change in this patch without a need for a separate refactoring, as it's just a contained driver and clearly just about typing.
okay, I got it. Thanks, Yinbo.