public inbox for u-boot@lists.denx.de
 help / color / mirror / Atom feed
From: Johan Jonker <jbx6244@gmail.com>
To: Michael Nazzareno Trimarchi <michael@amarulasolutions.com>
Cc: chin-ting_kuo@aspeedtech.com, clg@kaod.org, sjg@chromium.org,
	kever.yang@rock-chips.com, BMC-SW@aspeedtech.com,
	jagan@amarulasolutions.com, ryan_chen@aspeedtech.com,
	chiawei_wang@aspeedtech.com, joel@jms.id.au,
	dario.binacchi@amarulasolutions.com, philipp.tomsich@vrull.eu,
	u-boot@lists.denx.de, yifeng.zhao@rock-chips.com
Subject: Re: [PATCH v1] spi: spi-aspeed-smc: convert devfdt_get_addr_index output to phys_addr_t
Date: Sat, 25 Feb 2023 10:50:05 +0100	[thread overview]
Message-ID: <21d1b028-c50c-856a-e74a-8aa7684338ee@gmail.com> (raw)
In-Reply-To: <CAOf5uwkZCAFM8Y6kQFGoLMYmZuE1XVJpLN8xv++bEqOYUunN9w@mail.gmail.com>



On 2/25/23 10:26, Michael Nazzareno Trimarchi wrote:
> Hi Johan
> 
> On Thu, Feb 23, 2023 at 3:06 PM Johan Jonker <jbx6244@gmail.com> wrote:
>>
>> The fdt_addr_t and phys_addr_t size have been decoupled.
>> A 32bit CPU can expect 64-bit data from the device tree parser,
>> so convert devfdt_get_addr_index output to phys_addr_t in the
>> spi-aspeed-smc.c file. Also fix dev_dbg to be able to handle
>> both sizes.
>>
>> Signed-off-by: Johan Jonker <jbx6244@gmail.com>
>> ---
>>
>> Note:
>>
>> This is needed for a Rockchip patch serie to pass the test and
>> must be merged before by Rockchip maintainers:
>>
>> [PATCH v4 00/11] Fixes for Rockchip NFC driver part 1
>> https://lore.kernel.org/u-boot/f3dba231-4a55-0a94-dfab-5cab1419d132@gmail.com/
>>
>> Request for hardware test by Aspeed people.
>> ---
>>  drivers/spi/spi-aspeed-smc.c | 8 ++++----
>>  1 file changed, 4 insertions(+), 4 deletions(-)
>>
>> diff --git a/drivers/spi/spi-aspeed-smc.c b/drivers/spi/spi-aspeed-smc.c
>> index a3c96333..17696441 100644
>> --- a/drivers/spi/spi-aspeed-smc.c
>> +++ b/drivers/spi/spi-aspeed-smc.c
>> @@ -1125,14 +1125,14 @@ static int apseed_spi_of_to_plat(struct udevice *bus)
>>         int ret;
>>         struct clk hclk;
>>
>> -       priv->regs = (void __iomem *)devfdt_get_addr_index(bus, 0);
>> +       priv->regs = (void __iomem *)((phys_addr_t)devfdt_get_addr_index(bus, 0));
> 

> devfdt_get_addr_index_ptr is not the right way?

That may work.

> 
>>         if ((u32)priv->regs == FDT_ADDR_T_NONE) {
>>                 dev_err(bus, "wrong ctrl base\n");
>>                 return -ENODEV;
>>         }
>>
>>         plat->ahb_base =
>> -               (void __iomem *)devfdt_get_addr_size_index(bus, 1, &plat->ahb_sz);
>> +               (void __iomem *)((phys_addr_t)devfdt_get_addr_size_index(bus, 1, &plat->ahb_sz));
> 

> devfdt_get_addr_index_ptr, same here

fdt_addr_t devfdt_get_addr_size_index(const struct udevice *dev, int index,
				      fdt_size_t *size)
vs

void *devfdt_get_addr_index_ptr(const struct udevice *dev, int index)

===

devfdt_get_addr_index_ptr does not offer the ahb_sz size.

https://elixir.bootlin.com/u-boot/latest/source/drivers/core/fdtaddr.c#L112

This function is used for that in devfdt_get_addr_size_index:

fdtdec_get_addr_size_auto_noparent(gd->fdt_blob, dev_of_offset(dev),
					   "reg", index, size, false);

What would you suggest? Keep the cast or use fdtdec_get_addr_size_auto_noparent ?

I'm a little bit "reluctant" to poke in code that I don't have hardware for.

Johan

> 
>>         if ((u32)plat->ahb_base == FDT_ADDR_T_NONE) {
>>                 dev_err(bus, "wrong AHB base\n");
>>                 return -ENODEV;
>> @@ -1151,8 +1151,8 @@ static int apseed_spi_of_to_plat(struct udevice *bus)
>>         plat->hclk_rate = clk_get_rate(&hclk);
>>         clk_free(&hclk);
>>
>> -       dev_dbg(bus, "ctrl_base = 0x%x, ahb_base = 0x%p, size = 0x%lx\n",
>> -               (u32)priv->regs, plat->ahb_base, plat->ahb_sz);
>> +       dev_dbg(bus, "ctrl_base = 0x%x, ahb_base = 0x%p, size = 0x%llx\n",
>> +               (u32)priv->regs, plat->ahb_base, (fdt64_t)plat->ahb_sz);
>>         dev_dbg(bus, "hclk = %dMHz, max_cs = %d\n",
>>                 plat->hclk_rate / 1000000, plat->max_cs);
>>
>> --
> 
> Michael
> 
>> 2.20.1
>>
> 
> 

  reply	other threads:[~2023-02-25  9:50 UTC|newest]

Thread overview: 38+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-02-18 15:23 [PATCH v4 00/11] Fixes for Rockchip NFC driver part 1 Johan Jonker
2023-02-18 15:26 ` [PATCH v4 01/11] include: fdtdec: decouple fdt_addr_t and phys_addr_t size Johan Jonker
2023-02-23  0:47   ` Kever Yang
2023-02-23 14:06     ` [PATCH v1] spi: spi-aspeed-smc: convert devfdt_get_addr_index output to phys_addr_t Johan Jonker
2023-02-25  9:26       ` Michael Nazzareno Trimarchi
2023-02-25  9:50         ` Johan Jonker [this message]
2023-02-25  9:53           ` Michael Nazzareno Trimarchi
2023-02-25 11:40             ` Michael Nazzareno Trimarchi
2023-02-25  9:11     ` [PATCH v4 01/11] include: fdtdec: decouple fdt_addr_t and phys_addr_t size Johan Jonker
2023-02-25  9:15       ` Michael Nazzareno Trimarchi
2023-02-25  9:20         ` Johan Jonker
2023-02-25 11:43     ` [PATCH v2 1/2] core: fdtaddr: add devfdt_get_addr_size_index_ptr function Johan Jonker
2023-02-25 11:44       ` [PATCH v2 2/2] spi: spi-aspeed-smc: use devfdt_get_addr_index_ptr Johan Jonker
2023-02-25 11:47         ` Michael Nazzareno Trimarchi
2023-02-25 11:47       ` [PATCH v2 1/2] core: fdtaddr: add devfdt_get_addr_size_index_ptr function Michael Nazzareno Trimarchi
2023-02-25 16:52         ` Michael Nazzareno Trimarchi
2023-02-25 19:16     ` [RFC PATCH v1 1/4] drivers: use dev_read_addr_index_ptr when cast to pointer Johan Jonker
2023-02-25 19:19       ` [RFC PATCH v1 2/4] drivers: use dev_read_addr_ptr " Johan Jonker
2023-02-25 23:05         ` Johan Jonker
2023-02-25 19:19       ` [RFC PATCH v1 3/4] drivers: use devfdt_get_addr_size_index_ptr " Johan Jonker
2023-02-25 20:39         ` Michael Nazzareno Trimarchi
2023-02-27 15:17         ` Dario Binacchi
2023-02-25 19:19       ` [RFC PATCH v1 4/4] drivers: use devfdt_get_addr_index_ptr " Johan Jonker
2023-02-25 20:40         ` Michael Nazzareno Trimarchi
2023-02-25 20:37       ` [RFC PATCH v1 1/4] drivers: use dev_read_addr_index_ptr " Michael Nazzareno Trimarchi
2023-02-18 15:26 ` [PATCH v4 02/11] include: dm: ofnode: fix headers Johan Jonker
2023-02-18 15:27 ` [PATCH v4 03/11] core: remap: convert regmap_init_mem_plat() input to phys_addr_t Johan Jonker
2023-02-22  7:59   ` Kever Yang
2023-02-18 15:27 ` [PATCH v4 04/11] rockchip: adc: rockchip-saradc: use dev_read_addr_ptr Johan Jonker
2023-02-22  8:00   ` Kever Yang
2023-02-18 15:27 ` [PATCH v4 05/11] rockchip: timer: dw-apb-timer: convert dev_read_addr output to phys_addr_t Johan Jonker
2023-02-18 15:27 ` [PATCH v4 06/11] mtd: nand: raw: rockchip_nfc: use dev_read_addr_ptr Johan Jonker
2023-02-18 15:28 ` [PATCH v4 07/11] mtd: nand: raw: rockchip_nfc: remove the compatible string "rockchip,rk3308-nfc" Johan Jonker
2023-02-18 15:28 ` [PATCH v4 08/11] mtd: nand: raw: rockchip_nfc: add layout structure Johan Jonker
2023-02-18 15:28 ` [PATCH v4 09/11] mtd: nand: raw: rockchip_nfc: add flash_node to chip structure Johan Jonker
2023-02-18 15:28 ` [PATCH v4 10/11] mtd: nand: add support for the Sandisk SDTNQGAMA chip Johan Jonker
2023-02-18 15:29 ` [PATCH v4 11/11] mtd: nand: raw: rockchip_nfc: fix oobfree offset and description Johan Jonker
2023-02-22  8:01   ` Kever Yang

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=21d1b028-c50c-856a-e74a-8aa7684338ee@gmail.com \
    --to=jbx6244@gmail.com \
    --cc=BMC-SW@aspeedtech.com \
    --cc=chiawei_wang@aspeedtech.com \
    --cc=chin-ting_kuo@aspeedtech.com \
    --cc=clg@kaod.org \
    --cc=dario.binacchi@amarulasolutions.com \
    --cc=jagan@amarulasolutions.com \
    --cc=joel@jms.id.au \
    --cc=kever.yang@rock-chips.com \
    --cc=michael@amarulasolutions.com \
    --cc=philipp.tomsich@vrull.eu \
    --cc=ryan_chen@aspeedtech.com \
    --cc=sjg@chromium.org \
    --cc=u-boot@lists.denx.de \
    --cc=yifeng.zhao@rock-chips.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox