* [PATCH 0/2] mci: fix warning and linker error @ 2024-03-26 11:50 Steffen Trumtrar 2024-03-26 11:50 ` [PATCH 1/2] mci: mci-core: fix mci_switch_status call Steffen Trumtrar ` (2 more replies) 0 siblings, 3 replies; 8+ messages in thread From: Steffen Trumtrar @ 2024-03-26 11:50 UTC (permalink / raw) To: barebox This series fixes the following warning in mci-core: drivers/mci/mci-core.c:1455:17: warning: the address of 'status' will always evaluate as 'true' [-Waddress] And the following linker error: arm-v7a-linux-gnueabihf-ld: drivers/mci/arasan-sdhci.o: in function `arasan_zynqmp_sdcardclk_set_phase': drivers/mci/arasan-sdhci.c:467: undefined reference to `zynqmp_pm_set_sd_tapdelay' arm-v7a-linux-gnueabihf-ld: drivers/mci/arasan-sdhci.c:472: undefined reference to `zynqmp_pm_sd_dll_reset' arm-v7a-linux-gnueabihf-ld: drivers/mci/arasan-sdhci.o: in function `arasan_zynqmp_sampleclk_set_phase': drivers/mci/arasan-sdhci.c:372: undefined reference to `zynqmp_pm_sd_dll_reset' arm-v7a-linux-gnueabihf-ld: /home/str/work/customers/bosch.be.ppm2/worktree/barebox/bosch.be.ppm2/drivers/mci/arasan-sdhci.c:398: undefined reference to `zynqmp_pm_set_sd_tapdelay' make[1]: *** [Makefile:900: .tmp_barebox1] Error 1 Signed-off-by: Steffen Trumtrar <s.trumtrar@pengutronix.de> --- Steffen Trumtrar (2): mci: mci-core: fix mci_switch_status call mci: arasan: fix build for non-ZynqMP drivers/mci/arasan-sdhci.c | 3 ++- drivers/mci/mci-core.c | 4 +--- 2 files changed, 3 insertions(+), 4 deletions(-) --- base-commit: bbda2f90b296e953bbef20d00c58447eb88ff84f change-id: 20240326-worktree-barebox-bosch-be-ppm4-0e9bfd511418 Best regards, -- Steffen Trumtrar <s.trumtrar@pengutronix.de> ^ permalink raw reply [flat|nested] 8+ messages in thread
* [PATCH 1/2] mci: mci-core: fix mci_switch_status call 2024-03-26 11:50 [PATCH 0/2] mci: fix warning and linker error Steffen Trumtrar @ 2024-03-26 11:50 ` Steffen Trumtrar 2024-03-26 11:50 ` [PATCH 2/2] mci: arasan: fix build for non-ZynqMP Steffen Trumtrar 2024-04-02 8:20 ` [PATCH 0/2] mci: fix warning and linker error Sascha Hauer 2 siblings, 0 replies; 8+ messages in thread From: Steffen Trumtrar @ 2024-03-26 11:50 UTC (permalink / raw) To: barebox mci_switch_status needs to be called with a boolean instead of a u32. Signed-off-by: Steffen Trumtrar <s.trumtrar@pengutronix.de> --- drivers/mci/mci-core.c | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/drivers/mci/mci-core.c b/drivers/mci/mci-core.c index 414bcf6f06..78c65c8614 100644 --- a/drivers/mci/mci-core.c +++ b/drivers/mci/mci-core.c @@ -1431,8 +1431,6 @@ static int mmc_select_hs200(struct mci *mci) /* find out maximum bus width and then try DDR if supported */ err = mci_mmc_select_bus_width(mci); if (err > 0) { - u32 status; - /* TODO actually set drive strength instead of 0. Currently unsupported. */ val = EXT_CSD_TIMING_HS200 | 0 << EXT_CSD_DRV_STR_SHIFT; err = mci_switch(mci, EXT_CSD_HS_TIMING, val); @@ -1452,7 +1450,7 @@ static int mmc_select_hs200(struct mci *mci) mci_set_ios(mci); mci_set_clock(mci, mci->host->hs_max_dtr); - err = mci_switch_status(mci, &status); + err = mci_switch_status(mci, true); /* * mmc_select_timing() assumes timing has not changed if -- 2.43.2 ^ permalink raw reply [flat|nested] 8+ messages in thread
* [PATCH 2/2] mci: arasan: fix build for non-ZynqMP 2024-03-26 11:50 [PATCH 0/2] mci: fix warning and linker error Steffen Trumtrar 2024-03-26 11:50 ` [PATCH 1/2] mci: mci-core: fix mci_switch_status call Steffen Trumtrar @ 2024-03-26 11:50 ` Steffen Trumtrar 2024-03-26 12:34 ` Sascha Hauer 2024-04-02 8:20 ` [PATCH 0/2] mci: fix warning and linker error Sascha Hauer 2 siblings, 1 reply; 8+ messages in thread From: Steffen Trumtrar @ 2024-03-26 11:50 UTC (permalink / raw) To: barebox Registering sdclk only makes sense on the ZynqMP architecture. Guard calling the function with a IS_ENABLED() Signed-off-by: Steffen Trumtrar <s.trumtrar@pengutronix.de> --- drivers/mci/arasan-sdhci.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/drivers/mci/arasan-sdhci.c b/drivers/mci/arasan-sdhci.c index f01396d7ee..b7dd98049f 100644 --- a/drivers/mci/arasan-sdhci.c +++ b/drivers/mci/arasan-sdhci.c @@ -772,7 +772,8 @@ static int arasan_sdhci_probe(struct device *dev) mci->f_min = 50000000 / 256; - arasan_sdhci_register_sdclk(&arasan_sdhci->clk_data, clk_xin, dev); + if (IS_ENABLED(CONFIG_ARCH_ZYNQMP)) + arasan_sdhci_register_sdclk(&arasan_sdhci->clk_data, clk_xin, dev); arasan_dt_parse_clk_phases(dev, &arasan_sdhci->clk_data); -- 2.43.2 ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH 2/2] mci: arasan: fix build for non-ZynqMP 2024-03-26 11:50 ` [PATCH 2/2] mci: arasan: fix build for non-ZynqMP Steffen Trumtrar @ 2024-03-26 12:34 ` Sascha Hauer 2024-04-02 8:33 ` Sascha Hauer 0 siblings, 1 reply; 8+ messages in thread From: Sascha Hauer @ 2024-03-26 12:34 UTC (permalink / raw) To: Steffen Trumtrar; +Cc: barebox On Tue, Mar 26, 2024 at 12:50:42PM +0100, Steffen Trumtrar wrote: > Registering sdclk only makes sense on the ZynqMP architecture. Guard > calling the function with a IS_ENABLED() > > Signed-off-by: Steffen Trumtrar <s.trumtrar@pengutronix.de> > --- > drivers/mci/arasan-sdhci.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/drivers/mci/arasan-sdhci.c b/drivers/mci/arasan-sdhci.c > index f01396d7ee..b7dd98049f 100644 > --- a/drivers/mci/arasan-sdhci.c > +++ b/drivers/mci/arasan-sdhci.c > @@ -772,7 +772,8 @@ static int arasan_sdhci_probe(struct device *dev) > > mci->f_min = 50000000 / 256; > > - arasan_sdhci_register_sdclk(&arasan_sdhci->clk_data, clk_xin, dev); > + if (IS_ENABLED(CONFIG_ARCH_ZYNQMP)) > + arasan_sdhci_register_sdclk(&arasan_sdhci->clk_data, clk_xin, dev); CONFIG_ARCH_ZYNQMP being enabled doesn't necessarily mean the code actually runs on Zynqmp. Does this need a runtime check for other architectures? Sascha -- Pengutronix e.K. | | Steuerwalder Str. 21 | http://www.pengutronix.de/ | 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 | Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 | ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH 2/2] mci: arasan: fix build for non-ZynqMP 2024-03-26 12:34 ` Sascha Hauer @ 2024-04-02 8:33 ` Sascha Hauer 2024-04-02 8:43 ` Lucas Stach 0 siblings, 1 reply; 8+ messages in thread From: Sascha Hauer @ 2024-04-02 8:33 UTC (permalink / raw) To: Steffen Trumtrar; +Cc: barebox On Tue, Mar 26, 2024 at 01:34:49PM +0100, Sascha Hauer wrote: > On Tue, Mar 26, 2024 at 12:50:42PM +0100, Steffen Trumtrar wrote: > > Registering sdclk only makes sense on the ZynqMP architecture. Guard > > calling the function with a IS_ENABLED() > > > > Signed-off-by: Steffen Trumtrar <s.trumtrar@pengutronix.de> > > --- > > drivers/mci/arasan-sdhci.c | 3 ++- > > 1 file changed, 2 insertions(+), 1 deletion(-) > > > > diff --git a/drivers/mci/arasan-sdhci.c b/drivers/mci/arasan-sdhci.c > > index f01396d7ee..b7dd98049f 100644 > > --- a/drivers/mci/arasan-sdhci.c > > +++ b/drivers/mci/arasan-sdhci.c > > @@ -772,7 +772,8 @@ static int arasan_sdhci_probe(struct device *dev) > > > > mci->f_min = 50000000 / 256; > > > > - arasan_sdhci_register_sdclk(&arasan_sdhci->clk_data, clk_xin, dev); > > + if (IS_ENABLED(CONFIG_ARCH_ZYNQMP)) > > + arasan_sdhci_register_sdclk(&arasan_sdhci->clk_data, clk_xin, dev); > > CONFIG_ARCH_ZYNQMP being enabled doesn't necessarily mean the code > actually runs on Zynqmp. Does this need a runtime check for other > architectures? The arasan MMC driver is currently only used on ZynqMP, so it's OK for now. In Linux the driver the ZynqMP specifics are only used with the "xlnx,zynqmp-8.9a" compatible whereas our driver binds to the "arasan,sdhci-8.9a" compatible. This makes it more clear that this is really a ZynqMP specific path that is taken here. Sascha -- Pengutronix e.K. | | Steuerwalder Str. 21 | http://www.pengutronix.de/ | 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 | Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 | ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH 2/2] mci: arasan: fix build for non-ZynqMP 2024-04-02 8:33 ` Sascha Hauer @ 2024-04-02 8:43 ` Lucas Stach 2024-04-02 8:59 ` Sascha Hauer 0 siblings, 1 reply; 8+ messages in thread From: Lucas Stach @ 2024-04-02 8:43 UTC (permalink / raw) To: Sascha Hauer, Steffen Trumtrar; +Cc: barebox Am Dienstag, dem 02.04.2024 um 10:33 +0200 schrieb Sascha Hauer: > On Tue, Mar 26, 2024 at 01:34:49PM +0100, Sascha Hauer wrote: > > On Tue, Mar 26, 2024 at 12:50:42PM +0100, Steffen Trumtrar wrote: > > > Registering sdclk only makes sense on the ZynqMP architecture. Guard > > > calling the function with a IS_ENABLED() > > > > > > Signed-off-by: Steffen Trumtrar <s.trumtrar@pengutronix.de> > > > --- > > > drivers/mci/arasan-sdhci.c | 3 ++- > > > 1 file changed, 2 insertions(+), 1 deletion(-) > > > > > > diff --git a/drivers/mci/arasan-sdhci.c b/drivers/mci/arasan-sdhci.c > > > index f01396d7ee..b7dd98049f 100644 > > > --- a/drivers/mci/arasan-sdhci.c > > > +++ b/drivers/mci/arasan-sdhci.c > > > @@ -772,7 +772,8 @@ static int arasan_sdhci_probe(struct device *dev) > > > > > > mci->f_min = 50000000 / 256; > > > > > > - arasan_sdhci_register_sdclk(&arasan_sdhci->clk_data, clk_xin, dev); > > > + if (IS_ENABLED(CONFIG_ARCH_ZYNQMP)) > > > + arasan_sdhci_register_sdclk(&arasan_sdhci->clk_data, clk_xin, dev); > > > > CONFIG_ARCH_ZYNQMP being enabled doesn't necessarily mean the code > > actually runs on Zynqmp. Does this need a runtime check for other > > architectures? > > The arasan MMC driver is currently only used on ZynqMP, so it's OK for > now. > That's not true. The driver is also used on the Zynq7000. Regards, Lucas > In Linux the driver the ZynqMP specifics are only used with the "xlnx,zynqmp-8.9a" > compatible whereas our driver binds to the "arasan,sdhci-8.9a" > compatible. This makes it more clear that this is really a ZynqMP > specific path that is taken here. > > Sascha > ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH 2/2] mci: arasan: fix build for non-ZynqMP 2024-04-02 8:43 ` Lucas Stach @ 2024-04-02 8:59 ` Sascha Hauer 0 siblings, 0 replies; 8+ messages in thread From: Sascha Hauer @ 2024-04-02 8:59 UTC (permalink / raw) To: Lucas Stach; +Cc: Steffen Trumtrar, barebox On Tue, Apr 02, 2024 at 10:43:24AM +0200, Lucas Stach wrote: > Am Dienstag, dem 02.04.2024 um 10:33 +0200 schrieb Sascha Hauer: > > On Tue, Mar 26, 2024 at 01:34:49PM +0100, Sascha Hauer wrote: > > > On Tue, Mar 26, 2024 at 12:50:42PM +0100, Steffen Trumtrar wrote: > > > > Registering sdclk only makes sense on the ZynqMP architecture. Guard > > > > calling the function with a IS_ENABLED() > > > > > > > > Signed-off-by: Steffen Trumtrar <s.trumtrar@pengutronix.de> > > > > --- > > > > drivers/mci/arasan-sdhci.c | 3 ++- > > > > 1 file changed, 2 insertions(+), 1 deletion(-) > > > > > > > > diff --git a/drivers/mci/arasan-sdhci.c b/drivers/mci/arasan-sdhci.c > > > > index f01396d7ee..b7dd98049f 100644 > > > > --- a/drivers/mci/arasan-sdhci.c > > > > +++ b/drivers/mci/arasan-sdhci.c > > > > @@ -772,7 +772,8 @@ static int arasan_sdhci_probe(struct device *dev) > > > > > > > > mci->f_min = 50000000 / 256; > > > > > > > > - arasan_sdhci_register_sdclk(&arasan_sdhci->clk_data, clk_xin, dev); > > > > + if (IS_ENABLED(CONFIG_ARCH_ZYNQMP)) > > > > + arasan_sdhci_register_sdclk(&arasan_sdhci->clk_data, clk_xin, dev); > > > > > > CONFIG_ARCH_ZYNQMP being enabled doesn't necessarily mean the code > > > actually runs on Zynqmp. Does this need a runtime check for other > > > architectures? > > > > The arasan MMC driver is currently only used on ZynqMP, so it's OK for > > now. > > > That's not true. The driver is also used on the Zynq7000. You're right. I didn't remember we have support for that in barebox as well. In this case this note becomes relevant: > > > In Linux the driver the ZynqMP specifics are only used with the "xlnx,zynqmp-8.9a" > > compatible whereas our driver binds to the "arasan,sdhci-8.9a" > > compatible. This makes it more clear that this is really a ZynqMP > > specific path that is taken here. We have to put the ZynqMP specific stuff behind the "xlnx,zynqmp-8.9a" compatible to make sure Zynq7000 doesn't take this path. Sascha -- Pengutronix e.K. | | Steuerwalder Str. 21 | http://www.pengutronix.de/ | 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 | Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 | ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH 0/2] mci: fix warning and linker error 2024-03-26 11:50 [PATCH 0/2] mci: fix warning and linker error Steffen Trumtrar 2024-03-26 11:50 ` [PATCH 1/2] mci: mci-core: fix mci_switch_status call Steffen Trumtrar 2024-03-26 11:50 ` [PATCH 2/2] mci: arasan: fix build for non-ZynqMP Steffen Trumtrar @ 2024-04-02 8:20 ` Sascha Hauer 2 siblings, 0 replies; 8+ messages in thread From: Sascha Hauer @ 2024-04-02 8:20 UTC (permalink / raw) To: barebox, Steffen Trumtrar On Tue, 26 Mar 2024 12:50:40 +0100, Steffen Trumtrar wrote: > This series fixes the following warning in mci-core: > > drivers/mci/mci-core.c:1455:17: warning: the address of 'status' will always evaluate as 'true' [-Waddress] > > And the following linker error: > > arm-v7a-linux-gnueabihf-ld: drivers/mci/arasan-sdhci.o: in function `arasan_zynqmp_sdcardclk_set_phase': drivers/mci/arasan-sdhci.c:467: undefined reference to `zynqmp_pm_set_sd_tapdelay' > arm-v7a-linux-gnueabihf-ld: drivers/mci/arasan-sdhci.c:472: undefined reference to `zynqmp_pm_sd_dll_reset' > arm-v7a-linux-gnueabihf-ld: drivers/mci/arasan-sdhci.o: in function `arasan_zynqmp_sampleclk_set_phase': drivers/mci/arasan-sdhci.c:372: undefined reference to `zynqmp_pm_sd_dll_reset' > arm-v7a-linux-gnueabihf-ld: /home/str/work/customers/bosch.be.ppm2/worktree/barebox/bosch.be.ppm2/drivers/mci/arasan-sdhci.c:398: undefined reference to `zynqmp_pm_set_sd_tapdelay' > make[1]: *** [Makefile:900: .tmp_barebox1] Error 1 > > [...] Applied, thanks! [1/2] mci: mci-core: fix mci_switch_status call https://git.pengutronix.de/cgit/barebox/commit/?id=7818608d7e69 (link may not be stable) [2/2] mci: arasan: fix build for non-ZynqMP https://git.pengutronix.de/cgit/barebox/commit/?id=98bfb54c0a0f (link may not be stable) Best regards, -- Sascha Hauer <s.hauer@pengutronix.de> ^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2024-04-02 8:59 UTC | newest] Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2024-03-26 11:50 [PATCH 0/2] mci: fix warning and linker error Steffen Trumtrar 2024-03-26 11:50 ` [PATCH 1/2] mci: mci-core: fix mci_switch_status call Steffen Trumtrar 2024-03-26 11:50 ` [PATCH 2/2] mci: arasan: fix build for non-ZynqMP Steffen Trumtrar 2024-03-26 12:34 ` Sascha Hauer 2024-04-02 8:33 ` Sascha Hauer 2024-04-02 8:43 ` Lucas Stach 2024-04-02 8:59 ` Sascha Hauer 2024-04-02 8:20 ` [PATCH 0/2] mci: fix warning and linker error Sascha Hauer
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox