[U-Boot] [PATCH v10 0/4] Update SiFive Unleashed Drivers

Anup Patel Anup.Patel at wdc.com
Mon Jul 22 07:37:58 UTC 2019


This series update SiFive Unleashed clock driver and Cadence MACB driver
so that:
1. It is in sync with upstream Linux driver
2. It uses latest DT bindings as-per upstream Linux driver

With this series, we can now use latest DT bindings with U-Boot. I have
tested SiFive Serial driver and Cadence MACB ethernet driver with this
changes and both work fine.

The legacy FSBL will still pass DTB with older DT bindings which will break
the updated SiFive Unleashed clock driver. To tackle this, we have embedded
DTB in OpenSBI FW_PAYLOAD firmware for SiFive Unleashed so that OpenSBI will
override and pass updated DTB to U-Boot.

The updated DTB passed by OpenSBI is in fact the DTB build by upstream Linux
so we can straight away pass this DTB to Linux as well.

This series can be found in riscv_unleashed_clk_sync_v10 branch at:
https://github.com/avpatel/u-boot.git

To try this series use latest OpenSBI at:
https://github.com/riscv/opensbi.git
And Linux-5.3-rc1 from v5.3-rc1_unleashed branch at:
https://github.com/avpatel/linux.git

Changes since v9:
- Remove all accepted and merged patches except MACB driver patches
- Rebased MACB driver patches upon v2 patches from Ramon Fried
  (Refer, https://www.mail-archive.com/u-boot@lists.denx.de/msg334300.html)
- Added separate patch to sync-up SiFive Unleashed config header with
  QEMU RISC-V virt machine config header
- Added separate patch for more updates to SiFive Unleashed README

Changes since v8:
- Removed probe() from macb_config for PATCH6
- Renamed set_tx_clk() to clk_init() in macb_config for PATCH6

Changes since v7:
- Update PATCH6 to not treat dma_burst_length = 0 as skip gmac_configure_dma()
- Update PATCH9 to check endianess at runtime

Changes since v6:
- Added separate patch to fix endianess check in gmac_configure_dma()

Changes since v5:
- Addressed Ramon's comments in PATCH6
- Addressed Bin's comments in PATCH7

Changes since v4:
- Rebased patches upon Ramon's MACB changes
  (Refer, https://patchwork.ozlabs.org/patch/1114025/)
- Added PATCH7 to setup ethaddr based on board serial number read from OTP
- Added PATCH8 to update documentation

Changes since v3:
- Extend MACB ethernet driver for SiFive Unleashed board (just like Linux)

Changes since v2:
- Dropped PATCH6 which adds new compatible string to MACB driver because
  more changes are required in MACB driver for different ethernet speeds

Changes since v1:
- Dropped GEMGXL clock driver
- Added new compatible string for SiFive MACB ethernet

Anup Patel (4):
  net: macb: Extend MACB driver for SiFive Unleashed board
  net: macb: Fix check for little-endian system in gmac_configure_dma()
  riscv: sifive: fu540: Sync-up config header with RISC-V QEMU support
  doc: sifive-fu540: Update README to explicitly load DTB for Linux

 doc/README.sifive-fu540        | 317 ++++++++++++++++++++-------------
 drivers/net/macb.c             |  83 ++++++---
 include/configs/sifive-fu540.h |  18 +-
 3 files changed, 264 insertions(+), 154 deletions(-)

--
2.17.1


More information about the U-Boot mailing list