[U-Boot] [PATCH v4 0/8] add support for atheros ath79 based SOCs

Wills Wang wills.wang at live.com
Fri Dec 25 19:56:20 CET 2015


These series of patch add support for atheros ath79 based SOCs in u-boot,
at the present moment it's just available for ar933x chip.

Changes in v4:
- Add div64 macro for MIPS
- Convert physical address to uncached and cached(KSEG0/1) memory range
  in map_physmem
- Auto calculate baudrate for serial driver
- Move pinctrl code in serial driver into arch/mips/mach-ath79
- Use global_data to save CPU/DDR/AHB clock
- Use get_serial_clock to serial clock source
- Use get_bus_freq instead of hardcode in SPI driver
- Use arch_global_data to save SOC's type, revison and id
- move CPU optimize tuning flag from config.mk to Kconfig

Changes in v3:
- Convert serial driver to driver model
- Convert spi driver to driver model
- Add support for device tree
- Move SoC specific header files into arch/mips/mach-ath79/include/mach
- Optimize assembly code
- Same code style convertion

Changes in v2:
- Move all SoC specific header files into arch/mips/include/asm/arch-ath79
- Check SOC type and extract common code into arch/mips/mach-ath79
- Add a compatible spi driver
- Move serial driver code into drivers/serial
- Add a reference board implemention

Wills Wang (8):
  include: Add support for "do_div" macro
  mips: implement to access the KSEG0/1 memory range in map_physmem
  mips: add base support for atheros ath79 based SOCs
  mips: ath79: add serial driver for ar933x SOC
  mips: ath79: add spi driver
  mips: ath79: add AP121 reference board
  mips: support optimize tuning for same common processor cores
  mips: move optimize tuning option from deprecated config.mk to Kconfig

 arch/mips/Kconfig                                  |   17 +
 arch/mips/Makefile                                 |    8 +
 arch/mips/dts/Makefile                             |    2 +-
 arch/mips/dts/ap121.dts                            |   37 +
 arch/mips/dts/ar933x.dtsi                          |   64 ++
 arch/mips/include/asm/div64.h                      |   68 ++
 arch/mips/include/asm/global_data.h                |    5 +
 arch/mips/include/asm/io.h                         |    7 +-
 arch/mips/mach-ath79/Makefile                      |    9 +
 arch/mips/mach-ath79/ar933x/Makefile               |    8 +
 arch/mips/mach-ath79/ar933x/clk.c                  |   86 ++
 arch/mips/mach-ath79/ar933x/cpu.c                  |   32 +
 arch/mips/mach-ath79/ar933x/ddr_tap.S              |  268 +++++
 arch/mips/mach-ath79/ar933x/lowlevel_init.S        |  460 ++++++++
 arch/mips/mach-ath79/cpu.c                         |  171 +++
 arch/mips/mach-ath79/dram.c                        |   27 +
 arch/mips/mach-ath79/include/mach/ar71xx_regs.h    | 1144 ++++++++++++++++++++
 arch/mips/mach-ath79/include/mach/ath79.h          |  143 +++
 arch/mips/mach-ath79/include/mach/ddr.h            |   13 +
 arch/mips/mach-ath79/reset.c                       |   46 +
 board/ath79/ap121/Kconfig                          |   15 +
 board/ath79/ap121/MAINTAINERS                      |    6 +
 .../config.mk => board/ath79/ap121/Makefile        |    4 +-
 board/ath79/ap121/README                           |   18 +
 board/ath79/ap121/ap121.c                          |   17 +
 board/ath79/ap121/config.mk                        |   16 +
 configs/ap121_defconfig                            |   42 +
 drivers/serial/Makefile                            |    1 +
 drivers/serial/serial_ar933x.c                     |  225 ++++
 drivers/spi/Kconfig                                |    8 +
 drivers/spi/Makefile                               |    1 +
 drivers/spi/ath79_spi.c                            |  211 ++++
 include/asm-generic/div64.h                        |   59 +
 include/configs/ap121.h                            |   82 ++
 34 files changed, 3315 insertions(+), 5 deletions(-)
 create mode 100644 arch/mips/dts/ap121.dts
 create mode 100644 arch/mips/dts/ar933x.dtsi
 create mode 100644 arch/mips/include/asm/div64.h
 create mode 100644 arch/mips/mach-ath79/Makefile
 create mode 100644 arch/mips/mach-ath79/ar933x/Makefile
 create mode 100644 arch/mips/mach-ath79/ar933x/clk.c
 create mode 100644 arch/mips/mach-ath79/ar933x/cpu.c
 create mode 100644 arch/mips/mach-ath79/ar933x/ddr_tap.S
 create mode 100644 arch/mips/mach-ath79/ar933x/lowlevel_init.S
 create mode 100644 arch/mips/mach-ath79/cpu.c
 create mode 100644 arch/mips/mach-ath79/dram.c
 create mode 100644 arch/mips/mach-ath79/include/mach/ar71xx_regs.h
 create mode 100644 arch/mips/mach-ath79/include/mach/ath79.h
 create mode 100644 arch/mips/mach-ath79/include/mach/ddr.h
 create mode 100644 arch/mips/mach-ath79/reset.c
 create mode 100644 board/ath79/ap121/Kconfig
 create mode 100644 board/ath79/ap121/MAINTAINERS
 rename arch/mips/mach-au1x00/config.mk => board/ath79/ap121/Makefile (65%)
 create mode 100644 board/ath79/ap121/README
 create mode 100644 board/ath79/ap121/ap121.c
 create mode 100644 board/ath79/ap121/config.mk
 create mode 100644 configs/ap121_defconfig
 create mode 100644 drivers/serial/serial_ar933x.c
 create mode 100644 drivers/spi/ath79_spi.c
 create mode 100644 include/asm-generic/div64.h
 create mode 100644 include/configs/ap121.h

-- 
1.9.1



More information about the U-Boot mailing list