2018-07-25 15:54:49

by Krzysztof Kozlowski

[permalink] [raw]
Subject: [PATCH] mfd: sec: Export OF module alias table

In case of Device Tree platforms, even though the Samsung PMIC sec
device is instantiated from DT, the driver is still matched through I2C
module alias. That is because I2C core always reports an I2C module
alias instead of DT one.

This could change in the future so export DT module alias.

Signed-off-by: Krzysztof Kozlowski <[email protected]>
---
drivers/mfd/sec-core.c | 1 +
1 file changed, 1 insertion(+)

diff --git a/drivers/mfd/sec-core.c b/drivers/mfd/sec-core.c
index ca6b80d08ffc..9613b4257302 100644
--- a/drivers/mfd/sec-core.c
+++ b/drivers/mfd/sec-core.c
@@ -146,6 +146,7 @@ static const struct of_device_id sec_dt_match[] = {
/* Sentinel */
},
};
+MODULE_DEVICE_TABLE(of, sec_dt_match);
#endif

static bool s2mpa01_volatile(struct device *dev, unsigned int reg)
--
2.14.1



2018-07-27 08:28:22

by Lee Jones

[permalink] [raw]
Subject: Re: [PATCH] mfd: sec: Export OF module alias table

On Wed, 25 Jul 2018, Krzysztof Kozlowski wrote:

> In case of Device Tree platforms, even though the Samsung PMIC sec
> device is instantiated from DT, the driver is still matched through I2C
> module alias. That is because I2C core always reports an I2C module
> alias instead of DT one.
>
> This could change in the future so export DT module alias.
>
> Signed-off-by: Krzysztof Kozlowski <[email protected]>
> ---
> drivers/mfd/sec-core.c | 1 +
> 1 file changed, 1 insertion(+)

Applied, thanks.

--
Lee Jones [李琼斯]
Linaro Services Technical Lead
Linaro.org │ Open source software for ARM SoCs
Follow Linaro: Facebook | Twitter | Blog

2018-08-03 23:31:32

by Javier Martinez Canillas

[permalink] [raw]
Subject: Re: [PATCH] mfd: sec: Export OF module alias table

Hi Krzysztof,

On Wed, Jul 25, 2018 at 5:53 PM, Krzysztof Kozlowski <[email protected]> wrote:
> In case of Device Tree platforms, even though the Samsung PMIC sec
> device is instantiated from DT, the driver is still matched through I2C
> module alias. That is because I2C core always reports an I2C module
> alias instead of DT one.
>

Just a heads up that this already changed in v4.17 since commit
af503716ac1 ("i2c: core: report OF style module alias for devices
registered via OF").

> This could change in the future so export DT module alias.
>
> Signed-off-by: Krzysztof Kozlowski <[email protected]>
> ---
> drivers/mfd/sec-core.c | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/drivers/mfd/sec-core.c b/drivers/mfd/sec-core.c
> index ca6b80d08ffc..9613b4257302 100644
> --- a/drivers/mfd/sec-core.c
> +++ b/drivers/mfd/sec-core.c
> @@ -146,6 +146,7 @@ static const struct of_device_id sec_dt_match[] = {
> /* Sentinel */
> },
> };
> +MODULE_DEVICE_TABLE(of, sec_dt_match);

This driver can't be built as a module since its config symbol is
bool, so technically this macro isn't needed. But it's a no-op when
the driver is built-in so it's harmless to have it.

Best regards,
Javier

2018-08-07 09:28:25

by Krzysztof Kozlowski

[permalink] [raw]
Subject: Re: [PATCH] mfd: sec: Export OF module alias table

On 4 August 2018 at 01:30, Javier Martinez Canillas <[email protected]> wrote:
> Hi Krzysztof,
>
> On Wed, Jul 25, 2018 at 5:53 PM, Krzysztof Kozlowski <[email protected]> wrote:
>> In case of Device Tree platforms, even though the Samsung PMIC sec
>> device is instantiated from DT, the driver is still matched through I2C
>> module alias. That is because I2C core always reports an I2C module
>> alias instead of DT one.
>>
>
> Just a heads up that this already changed in v4.17 since commit
> af503716ac1 ("i2c: core: report OF style module alias for devices
> registered via OF").

True, I missed that part and blindly followed the old principle.

>
>> This could change in the future so export DT module alias.
>>
>> Signed-off-by: Krzysztof Kozlowski <[email protected]>
>> ---
>> drivers/mfd/sec-core.c | 1 +
>> 1 file changed, 1 insertion(+)
>>
>> diff --git a/drivers/mfd/sec-core.c b/drivers/mfd/sec-core.c
>> index ca6b80d08ffc..9613b4257302 100644
>> --- a/drivers/mfd/sec-core.c
>> +++ b/drivers/mfd/sec-core.c
>> @@ -146,6 +146,7 @@ static const struct of_device_id sec_dt_match[] = {
>> /* Sentinel */
>> },
>> };
>> +MODULE_DEVICE_TABLE(of, sec_dt_match);
>
> This driver can't be built as a module since its config symbol is
> bool, so technically this macro isn't needed. But it's a no-op when
> the driver is built-in so it's harmless to have it.

Indeed. I tried converting it to module but that does not work in all
configurations (regulators are needed early).

Anyway my patch even though not that correct, it should not bring any issues.

Thanks for valuable feedback!

Best regards,
Krzysztof