From: Kuo-Jung Su <dant...@faraday-tech.com> These patches introduce Faraday A36x SoC platform support.
Here are some public documents for your reference. http://www.faraday-tech.com/html/documentation/index.html There is also a A369 QEMU emulator available at my github account: https://github.com/dantesu1218/qemu.git Here is quick start for QEMU: 1. Download the QEMU source tree $ git clone -b qemu-1.3.0 https://github.com/dantesu1218/qemu.git 2. Build & Install the QEMU: $ ./configure --target-list=arm-softmmu $ make $ make install 3. Launch u-boot with QEMU: $ qemu-system-arm -M a369 -m 512M -nographic -kernel ~/u-boot-devel/u-boot Changes for v2: - Coding Style cleanup. - Use readl(), writel(), clrsetbits_le32() to replace REG() macros. - Use structure based hardware registers to replace the macro constants. - Replace BIT() with BIT_MASK(). - echi-faraday: Remove debug codes. - ftmac110: Remove debug codes. - cache-cp15: Enable write buffer in write-through mode. Kuo-Jung Su (12): mtd: spi: winbond: add W25PXX support net: ftgmac100: add MMU/D-cache support net: add Faraday FTMAC110 10/100Mbps ethernet support i2c: add Faraday FTI2C010 I2C controller support spi: add Faraday FTSPI010 SPI controller support mmc: add an alternative driver to Faraday FTSDC010 mtd: nand: add Faraday FTNANDC021 NAND controller support mtd: spi: add FTSPI020 SPI Flash controller support usb: ehci: add Faraday USB 2.0 EHCI controller support usb: gadget: add Faraday FOTG210 USB gadget support arm: add MMU/d-cache support for Faraday cores arm: add Faraday A36x SoC platform support arch/arm/cpu/faraday/Makefile | 57 ++ arch/arm/cpu/faraday/a360/Makefile | 49 ++ arch/arm/cpu/faraday/a360/reset.c | 26 + arch/arm/cpu/faraday/a369/Makefile | 50 ++ arch/arm/cpu/faraday/a369/cmd_fa606.c | 75 +++ arch/arm/cpu/faraday/a369/reset.c | 26 + arch/arm/cpu/faraday/cmd_bootfa.c | 132 +++++ arch/arm/cpu/faraday/config.mk | 33 ++ arch/arm/cpu/faraday/cpu.c | 238 ++++++++ arch/arm/cpu/faraday/ftintc020.h | 37 ++ arch/arm/cpu/faraday/ftpwmtmr010.c | 156 +++++ arch/arm/cpu/faraday/ftpwmtmr010.h | 41 ++ arch/arm/cpu/faraday/fttmr010.c | 159 +++++ arch/arm/cpu/faraday/fwimage.h | 38 ++ arch/arm/cpu/faraday/fwimage2.h | 70 +++ arch/arm/cpu/faraday/interrupts.c | 155 +++++ arch/arm/cpu/faraday/start.S | 523 ++++++++++++++++ arch/arm/cpu/u-boot.lds | 11 + arch/arm/include/asm/arch-a360/hardware.h | 72 +++ arch/arm/include/asm/arch-a369/hardware.h | 98 +++ arch/arm/include/asm/dma-mapping.h | 56 +- arch/arm/include/asm/global_data.h | 4 + arch/arm/include/asm/io.h | 84 ++- arch/arm/include/asm/mach-types.h | 1 + arch/arm/lib/cache-cp15.c | 42 ++ board/faraday/a360evb/Makefile | 49 ++ board/faraday/a360evb/board.c | 67 +++ board/faraday/a360evb/clk.c | 52 ++ board/faraday/a360evb/config.mk | 33 ++ board/faraday/a360evb/lowlevel_init.S | 33 ++ board/faraday/a369evb/Makefile | 49 ++ board/faraday/a369evb/board.c | 178 ++++++ board/faraday/a369evb/clk.c | 81 +++ board/faraday/a369evb/config.mk | 33 ++ board/faraday/a369evb/lowlevel_init.S | 136 +++++ boards.cfg | 3 + common/cmd_boot.c | 4 + common/usb_hub.c | 5 + drivers/i2c/Makefile | 1 + drivers/i2c/fti2c010.c | 363 ++++++++++++ drivers/i2c/fti2c010.h | 71 +++ drivers/mmc/Makefile | 1 + drivers/mmc/ftsdc010_mci.c | 373 ++++++++++++ drivers/mtd/nand/Makefile | 1 + drivers/mtd/nand/ftnandc021.c | 544 +++++++++++++++++ drivers/mtd/nand/ftnandc021.h | 132 +++++ drivers/mtd/spi/Makefile | 4 + drivers/mtd/spi/ftspi020.c | 691 +++++++++++++++++++++ drivers/mtd/spi/ftspi020.h | 109 ++++ drivers/mtd/spi/winbond.c | 17 +- drivers/net/Makefile | 1 + drivers/net/ftgmac100.c | 70 ++- drivers/net/ftmac110.c | 452 ++++++++++++++ drivers/net/ftmac110.h | 159 +++++ drivers/spi/Makefile | 1 + drivers/spi/ftssp010_spi.c | 337 +++++++++++ drivers/spi/ftssp010_spi.h | 86 +++ drivers/usb/gadget/Makefile | 1 + drivers/usb/gadget/fotg210.c | 922 +++++++++++++++++++++++++++++ drivers/usb/gadget/gadget_chips.h | 8 + drivers/usb/host/Makefile | 1 + drivers/usb/host/ehci-faraday.c | 139 +++++ drivers/usb/host/ehci-hcd.c | 11 + drivers/usb/host/ehci.h | 5 + include/common.h | 13 + include/configs/a360.h | 185 ++++++ include/configs/a369.h | 41 ++ include/configs/a369_defaults.h | 295 +++++++++ include/configs/a369_fa606te.h | 32 + include/faraday/ftsdc010.h | 16 +- include/faraday/fttmr010.h | 17 + include/faraday/mmc.h | 16 + include/faraday/nand.h | 16 + include/netdev.h | 1 + include/usb/fotg210.h | 71 +++ include/usb/fusbh200.h | 28 + 76 files changed, 8158 insertions(+), 29 deletions(-) create mode 100644 arch/arm/cpu/faraday/Makefile create mode 100644 arch/arm/cpu/faraday/a360/Makefile create mode 100644 arch/arm/cpu/faraday/a360/reset.c create mode 100644 arch/arm/cpu/faraday/a369/Makefile create mode 100644 arch/arm/cpu/faraday/a369/cmd_fa606.c create mode 100644 arch/arm/cpu/faraday/a369/reset.c create mode 100644 arch/arm/cpu/faraday/cmd_bootfa.c create mode 100644 arch/arm/cpu/faraday/config.mk create mode 100644 arch/arm/cpu/faraday/cpu.c create mode 100644 arch/arm/cpu/faraday/ftintc020.h create mode 100644 arch/arm/cpu/faraday/ftpwmtmr010.c create mode 100644 arch/arm/cpu/faraday/ftpwmtmr010.h create mode 100644 arch/arm/cpu/faraday/fttmr010.c create mode 100644 arch/arm/cpu/faraday/fwimage.h create mode 100644 arch/arm/cpu/faraday/fwimage2.h create mode 100644 arch/arm/cpu/faraday/interrupts.c create mode 100644 arch/arm/cpu/faraday/start.S create mode 100644 arch/arm/include/asm/arch-a360/hardware.h create mode 100644 arch/arm/include/asm/arch-a369/hardware.h create mode 100644 board/faraday/a360evb/Makefile create mode 100644 board/faraday/a360evb/board.c create mode 100644 board/faraday/a360evb/clk.c create mode 100644 board/faraday/a360evb/config.mk create mode 100644 board/faraday/a360evb/lowlevel_init.S create mode 100644 board/faraday/a369evb/Makefile create mode 100644 board/faraday/a369evb/board.c create mode 100644 board/faraday/a369evb/clk.c create mode 100644 board/faraday/a369evb/config.mk create mode 100644 board/faraday/a369evb/lowlevel_init.S create mode 100644 drivers/i2c/fti2c010.c create mode 100644 drivers/i2c/fti2c010.h create mode 100644 drivers/mmc/ftsdc010_mci.c create mode 100644 drivers/mtd/nand/ftnandc021.c create mode 100644 drivers/mtd/nand/ftnandc021.h create mode 100644 drivers/mtd/spi/ftspi020.c create mode 100644 drivers/mtd/spi/ftspi020.h create mode 100644 drivers/net/ftmac110.c create mode 100644 drivers/net/ftmac110.h create mode 100644 drivers/spi/ftssp010_spi.c create mode 100644 drivers/spi/ftssp010_spi.h create mode 100644 drivers/usb/gadget/fotg210.c create mode 100644 drivers/usb/host/ehci-faraday.c create mode 100644 include/configs/a360.h create mode 100644 include/configs/a369.h create mode 100644 include/configs/a369_defaults.h create mode 100644 include/configs/a369_fa606te.h create mode 100644 include/faraday/mmc.h create mode 100644 include/faraday/nand.h create mode 100644 include/usb/fotg210.h create mode 100644 include/usb/fusbh200.h -- 1.7.9.5 _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot