2016-10-17 19:40:40

by Javier Martinez Canillas

[permalink] [raw]
Subject: [PATCH] hwrng: meson: Fix module autoload for OF registration

If the driver is built as a module, autoload won't work because the module
alias information is not filled. So user-space can't match the registered
device with the corresponding module.

Export the module alias information using the MODULE_DEVICE_TABLE() macro.

Before this patch:

$ modinfo drivers/char/hw_random/meson-rng.ko | grep alias
alias: platform:meson-rng

After this patch:

$ modinfo drivers/char/hw_random/meson-rng.ko | grep alias
alias: platform:meson-rng
alias: of:N*T*Camlogic,meson-rngC*
alias: of:N*T*Camlogic,meson-rng

Signed-off-by: Javier Martinez Canillas <[email protected]>
---

drivers/char/hw_random/meson-rng.c | 1 +
drivers/char/tpm/Kconfig | 2 +-
2 files changed, 2 insertions(+), 1 deletion(-)

diff --git a/drivers/char/hw_random/meson-rng.c b/drivers/char/hw_random/meson-rng.c
index 58bef39f7286..51864a509be7 100644
--- a/drivers/char/hw_random/meson-rng.c
+++ b/drivers/char/hw_random/meson-rng.c
@@ -110,6 +110,7 @@ static const struct of_device_id meson_rng_of_match[] = {
{ .compatible = "amlogic,meson-rng", },
{},
};
+MODULE_DEVICE_TABLE(of, meson_rng_of_match);

static struct platform_driver meson_rng_driver = {
.probe = meson_rng_probe,
diff --git a/drivers/char/tpm/Kconfig b/drivers/char/tpm/Kconfig
index 9faa0b1e7766..982ed2fe927c 100644
--- a/drivers/char/tpm/Kconfig
+++ b/drivers/char/tpm/Kconfig
@@ -32,7 +32,7 @@ config TCG_TIS_CORE

config TCG_TIS
tristate "TPM Interface Specification 1.2 Interface / TPM 2.0 FIFO Interface"
- depends on X86
+ depends on X86 || COMPILE_TEST
select TCG_TIS_CORE
---help---
If you have a TPM security chip that is compliant with the
--
2.7.4


2016-10-17 19:45:42

by Fabio Estevam

[permalink] [raw]
Subject: Re: [PATCH] hwrng: meson: Fix module autoload for OF registration

On Mon, Oct 17, 2016 at 5:40 PM, Javier Martinez Canillas
<[email protected]> wrote:

> --- a/drivers/char/tpm/Kconfig
> +++ b/drivers/char/tpm/Kconfig
> @@ -32,7 +32,7 @@ config TCG_TIS_CORE
>
> config TCG_TIS
> tristate "TPM Interface Specification 1.2 Interface / TPM 2.0 FIFO Interface"
> - depends on X86
> + depends on X86 || COMPILE_TEST

This is a separate change.

2016-10-17 19:46:26

by Jason Gunthorpe

[permalink] [raw]
Subject: Re: [PATCH] hwrng: meson: Fix module autoload for OF registration

On Mon, Oct 17, 2016 at 04:40:14PM -0300, Javier Martinez Canillas wrote:

> Signed-off-by: Javier Martinez Canillas <[email protected]>
>
> drivers/char/hw_random/meson-rng.c | 1 +
> drivers/char/tpm/Kconfig | 2 +-

Looks like this patch should not have tpm in it.

Jason

2016-10-17 19:48:06

by Javier Martinez Canillas

[permalink] [raw]
Subject: Re: [PATCH] hwrng: meson: Fix module autoload for OF registration

Hello Jason,

On 10/17/2016 04:45 PM, Jason Gunthorpe wrote:
> On Mon, Oct 17, 2016 at 04:40:14PM -0300, Javier Martinez Canillas wrote:
>
>> Signed-off-by: Javier Martinez Canillas <[email protected]>
>>
>> drivers/char/hw_random/meson-rng.c | 1 +
>> drivers/char/tpm/Kconfig | 2 +-
>
> Looks like this patch should not have tpm in it.
>

Argh, yes. I had some unrelated changes in my staging area and did a
commit by mistake. Thanks a lot for pointing out and sorry for that.

I'll post a v2 without this.

> Jason
>

Best regards,
--
Javier Martinez Canillas
Open Source Group
Samsung Research America

2016-10-17 19:53:42

by Javier Martinez Canillas

[permalink] [raw]
Subject: Re: [PATCH] hwrng: meson: Fix module autoload for OF registration

Hello Fabio,

On 10/17/2016 04:45 PM, Fabio Estevam wrote:
> On Mon, Oct 17, 2016 at 5:40 PM, Javier Martinez Canillas
> <[email protected]> wrote:
>
>> --- a/drivers/char/tpm/Kconfig
>> +++ b/drivers/char/tpm/Kconfig
>> @@ -32,7 +32,7 @@ config TCG_TIS_CORE
>>
>> config TCG_TIS
>> tristate "TPM Interface Specification 1.2 Interface / TPM 2.0 FIFO Interface"
>> - depends on X86
>> + depends on X86 || COMPILE_TEST
>
> This is a separate change.
>

Yes, I did a commit by mistake. Sorry about that.

Jason already pointed out and I posted a v2.

Best regards,
--
Javier Martinez Canillas
Open Source Group
Samsung Research America