On 5/29/19 10:48 PM, Bin Meng wrote:
On Thu, May 30, 2019 at 1:06 PM Atish Patra <atish.pa...@wdc.com> wrote:

On 5/29/19 6:19 PM, Bin Meng wrote:
On Sun, May 26, 2019 at 5:13 PM Paul Walmsley <paul.walms...@sifive.com> wrote:

The U-Boot PRCI driver for the SiFive FU540 uses an out-of-date DT
binding string, since the U-boot PRCI driver was upstreamed before the

nits: U-boot -> U-Boot

mainline Linux kernel PRCI driver was finished.  This means that the
U-Boot PRCI driver won't probe when used with a DT file that is
aligned to the DT bindings and the driver in the Linux kernel:

     
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/Documentation/devicetree/bindings/clock/sifive/fu540-prci.txt#n7

     
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/drivers/clk/sifive/fu540-prci.c#n610

Fix by aligning the U-Boot DT match string to the string that's used
in the upstream DT bindings and the Linux kernel driver.


Signed-off-by: Paul Walmsley <paul.walms...@sifive.com>
Signed-off-by: Paul Walmsley <p...@pwsan.com>
Cc: Anup Patel <anup.pa...@wdc.com>
Cc: Atish Patra <atish.pa...@wdc.com>
Cc: Alexander Graf <ag...@suse.de>
---
   drivers/clk/sifive/fu540-prci.c | 2 +-
   1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/clk/sifive/fu540-prci.c b/drivers/clk/sifive/fu540-prci.c
index 2d47ebc6b1..d79d1a5351 100644
--- a/drivers/clk/sifive/fu540-prci.c
+++ b/drivers/clk/sifive/fu540-prci.c
@@ -589,7 +589,7 @@ static struct clk_ops sifive_fu540_prci_ops = {
   };

   static const struct udevice_id sifive_fu540_prci_ids[] = {
-       { .compatible = "sifive,fu540-c000-prci0" },
+       { .compatible = "sifive,fu540-c000-prci" },

Can we keep the previous compatible string for compatibility reason?
U-Boot is now reusing the DT that FSBL passes. Changing the name here
means we need re-flash an updated FSBL?

Unfortunately yes. However, you can also use OpenSBI/BBL to use the
updated DT instead of DT from FSBL.

OpenSBI method: Just use the additional argument during OpenSBI compilation.

FW_PAYLOAD_FDT_PATH=<linux kernel
source>/arch/riscv/boot/dts/sifive/hifive-unleashed-a00.dtb

OK, please update the doc/README.sifive-fu540, to mention an updated
FDT needs to be provided to OpenSBI, if we remove the old compatible
string in the U-Boot PRCI driver.


Sure. I think we need to update it anyways once the clock driver is fixed as per new DT. I have not looked into details but I was not able to boot U-Boot only with this patch after using the new DT from kernel.

This is expected as compatible string is not the only change as described in Linux mailing list[1].

[1] http://lists.infradead.org/pipermail/linux-riscv/2019-April/004259.html

BBL: Paul has a working branch. Details are here

http://lists.infradead.org/pipermail/linux-riscv/2019-May/004685.html


Regards,
Bin



--
Regards,
Atish
_______________________________________________
U-Boot mailing list
U-Boot@lists.denx.de
https://lists.denx.de/listinfo/u-boot

Reply via email to