2023-08-04 10:58:11

by Tony Lindgren

[permalink] [raw]
Subject: [PATCH 1/3] bus: ti-sysc: Fix build warning for 64-bit build

Fix "warning: cast from pointer to integer of different size" on 64-bit
builds.

Note that this is a cosmetic fix at this point as the driver is not yet
used for 64-bit systems.

Fixes: feaa8baee82a ("bus: ti-sysc: Implement SoC revision handling")
Signed-off-by: Tony Lindgren <[email protected]>
---
drivers/bus/ti-sysc.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/bus/ti-sysc.c b/drivers/bus/ti-sysc.c
--- a/drivers/bus/ti-sysc.c
+++ b/drivers/bus/ti-sysc.c
@@ -3104,7 +3104,7 @@ static int sysc_init_static_data(struct sysc *ddata)

match = soc_device_match(sysc_soc_match);
if (match && match->data)
- sysc_soc->soc = (int)match->data;
+ sysc_soc->soc = (unsigned long)match->data;

/*
* Check and warn about possible old incomplete dtb. We now want to see
--
2.41.0


2023-08-04 11:03:46

by Tony Lindgren

[permalink] [raw]
Subject: [PATCH 2/3] bus: ti-sysc: Build driver for TI K3 SoCs

Allow building ti-sysc also for K3 SoCs. This allows configuring the wkup
domain devices for SYSCONFIG register wake-up events in a generic way.

Signed-off-by: Tony Lindgren <[email protected]>
---
drivers/bus/Kconfig | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/drivers/bus/Kconfig b/drivers/bus/Kconfig
--- a/drivers/bus/Kconfig
+++ b/drivers/bus/Kconfig
@@ -210,7 +210,8 @@ config TI_PWMSS

config TI_SYSC
bool "TI sysc interconnect target module driver"
- depends on ARCH_OMAP2PLUS
+ depends on ARCH_OMAP2PLUS || ARCH_K3
+ default y
help
Generic driver for Texas Instruments interconnect target module
found on many TI SoCs.
--
2.41.0

2023-08-04 11:15:36

by Tony Lindgren

[permalink] [raw]
Subject: [PATCH 3/3] bus: ti-sysc: Configure uart quirks for k3 SoC

Enable the uart quirks similar to the earlier SoCs. Let's assume we are
likely going to need a k3 specific quirk mask separate from the earlier
SoCs, so let's not start changing the revision register mask at this point.

Note that SYSC_QUIRK_LEGACY_IDLE will be needed until we can remove the
need for pm_runtime_irq_safe() from 8250_omap driver.

Signed-off-by: Tony Lindgren <[email protected]>
---
drivers/bus/ti-sysc.c | 2 ++
1 file changed, 2 insertions(+)

diff --git a/drivers/bus/ti-sysc.c b/drivers/bus/ti-sysc.c
--- a/drivers/bus/ti-sysc.c
+++ b/drivers/bus/ti-sysc.c
@@ -1525,6 +1525,8 @@ static const struct sysc_revision_quirk sysc_revision_quirks[] = {
SYSC_QUIRK_SWSUP_SIDLE | SYSC_QUIRK_LEGACY_IDLE),
SYSC_QUIRK("uart", 0, 0x50, 0x54, 0x58, 0x47422e03, 0xffffffff,
SYSC_QUIRK_SWSUP_SIDLE | SYSC_QUIRK_LEGACY_IDLE),
+ SYSC_QUIRK("uart", 0, 0x50, 0x54, 0x58, 0x47424e03, 0xffffffff,
+ SYSC_QUIRK_SWSUP_SIDLE | SYSC_QUIRK_LEGACY_IDLE),

/* Quirks that need to be set based on the module address */
SYSC_QUIRK("mcpdm", 0x40132000, 0, 0x10, -ENODEV, 0x50000800, 0xffffffff,
--
2.41.0

2023-08-05 05:37:12

by Dhruva Gole

[permalink] [raw]
Subject: Re: [PATCH 1/3] bus: ti-sysc: Fix build warning for 64-bit build

Hi Tony,

On Aug 04, 2023 at 13:38:57 +0300, Tony Lindgren wrote:
> Fix "warning: cast from pointer to integer of different size" on 64-bit
> builds.

Thanks for enabling this on 64 bit, will help us in K3 SOCs.

>
> Note that this is a cosmetic fix at this point as the driver is not yet
> used for 64-bit systems.
>
> Fixes: feaa8baee82a ("bus: ti-sysc: Implement SoC revision handling")
> Signed-off-by: Tony Lindgren <[email protected]>
> ---
> drivers/bus/ti-sysc.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/bus/ti-sysc.c b/drivers/bus/ti-sysc.c
> --- a/drivers/bus/ti-sysc.c
> +++ b/drivers/bus/ti-sysc.c
> @@ -3104,7 +3104,7 @@ static int sysc_init_static_data(struct sysc *ddata)
>
> match = soc_device_match(sysc_soc_match);
> if (match && match->data)
> - sysc_soc->soc = (int)match->data;
> + sysc_soc->soc = (unsigned long)match->data;

Reviewed-by: Dhruva Gole <[email protected]>

>
> /*
> * Check and warn about possible old incomplete dtb. We now want to see
> --
> 2.41.0

--
Best regards,
Dhruva Gole <[email protected]>

2023-08-05 06:33:41

by Dhruva Gole

[permalink] [raw]
Subject: Re: [PATCH 2/3] bus: ti-sysc: Build driver for TI K3 SoCs

On Aug 04, 2023 at 13:38:58 +0300, Tony Lindgren wrote:
> Allow building ti-sysc also for K3 SoCs. This allows configuring the wkup
> domain devices for SYSCONFIG register wake-up events in a generic way.

If possible, can we add explanation also on why it now needs to be default y
in the Kconfig?

>
> Signed-off-by: Tony Lindgren <[email protected]>
> ---
> drivers/bus/Kconfig | 3 ++-
> 1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/bus/Kconfig b/drivers/bus/Kconfig
> --- a/drivers/bus/Kconfig
> +++ b/drivers/bus/Kconfig
> @@ -210,7 +210,8 @@ config TI_PWMSS
>
> config TI_SYSC
> bool "TI sysc interconnect target module driver"
> - depends on ARCH_OMAP2PLUS
> + depends on ARCH_OMAP2PLUS || ARCH_K3
> + default y

Reviewed-by: Dhruva Gole <[email protected]>

> help
> Generic driver for Texas Instruments interconnect target module
> found on many TI SoCs.
> --
> 2.41.0

--
Best regards,
Dhruva Gole <[email protected]>

2023-08-05 19:53:38

by Nishanth Menon

[permalink] [raw]
Subject: Re: [PATCH 1/3] bus: ti-sysc: Fix build warning for 64-bit build

On 10:47-20230805, Dhruva Gole wrote:
> Hi Tony,
>
> On Aug 04, 2023 at 13:38:57 +0300, Tony Lindgren wrote:
> > Fix "warning: cast from pointer to integer of different size" on 64-bit
> > builds.
>
> Thanks for enabling this on 64 bit, will help us in K3 SOCs.
>
> >
> > Note that this is a cosmetic fix at this point as the driver is not yet
> > used for 64-bit systems.
> >
> > Fixes: feaa8baee82a ("bus: ti-sysc: Implement SoC revision handling")
> > Signed-off-by: Tony Lindgren <[email protected]>
> > ---
> > drivers/bus/ti-sysc.c | 2 +-
> > 1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/drivers/bus/ti-sysc.c b/drivers/bus/ti-sysc.c
> > --- a/drivers/bus/ti-sysc.c
> > +++ b/drivers/bus/ti-sysc.c
> > @@ -3104,7 +3104,7 @@ static int sysc_init_static_data(struct sysc *ddata)
> >
> > match = soc_device_match(sysc_soc_match);
> > if (match && match->data)
> > - sysc_soc->soc = (int)match->data;
> > + sysc_soc->soc = (unsigned long)match->data;
>
> Reviewed-by: Dhruva Gole <[email protected]>

Dumb q: is'nt this an enum? Is it better to cast it as (enum
sysc_soc)match->data ?

>
> >
> > /*
> > * Check and warn about possible old incomplete dtb. We now want to see
> > --
> > 2.41.0
>
> --
> Best regards,
> Dhruva Gole <[email protected]>

--
Regards,
Nishanth Menon
Key (0xDDB5849D1736249D) / Fingerprint: F8A2 8693 54EB 8232 17A3 1A34 DDB5 849D 1736 249D

2023-08-09 08:27:27

by Tony Lindgren

[permalink] [raw]
Subject: Re: [PATCH 1/3] bus: ti-sysc: Fix build warning for 64-bit build

* Nishanth Menon <[email protected]> [230805 17:23]:
> On 10:47-20230805, Dhruva Gole wrote:
> > On Aug 04, 2023 at 13:38:57 +0300, Tony Lindgren wrote:
> > > match = soc_device_match(sysc_soc_match);
> > > if (match && match->data)
> > > - sysc_soc->soc = (int)match->data;
> > > + sysc_soc->soc = (unsigned long)match->data;
> >
> > Reviewed-by: Dhruva Gole <[email protected]>
>
> Dumb q: is'nt this an enum? Is it better to cast it as (enum
> sysc_soc)match->data ?

Good idea, will update.

Regards,

Tony

2023-08-09 10:21:35

by Tony Lindgren

[permalink] [raw]
Subject: Re: [PATCH 2/3] bus: ti-sysc: Build driver for TI K3 SoCs

* Dhruva Gole <[email protected]> [230805 05:20]:
> On Aug 04, 2023 at 13:38:58 +0300, Tony Lindgren wrote:
> > Allow building ti-sysc also for K3 SoCs. This allows configuring the wkup
> > domain devices for SYSCONFIG register wake-up events in a generic way.
>
> If possible, can we add explanation also on why it now needs to be default y
> in the Kconfig?

Sure will add that for v2.

Thanks,

Tony