This patch set contains initial support for the following Atheros SoCs: AR5312, AR2312, AR2313, AR2315, AR2316, AR2317, AR2318. - Patches 1 through 15 add support for different parts of AR231x SoCs. - Patch 12 provided only for reference, since it should be rewritten to use spi-nor framework. - Patch 16 do a tiny cleanup in the ath5k driver. - Patch 17 updates ath5k dependecy, since I rename the original ATHEROS_AR231X config symbol to AR231X. - Patch 18 removes !PCI dependency from ath5k AHB support, since AR2315 has a builtin PCI controller. The original code was based on 3.14.18 kernel and successfully tested with AR2313, AR2315, AR2316, AR2317 SoCs. After rebasing the code was build tested only. This code has been written by OpenWRT developers and it resided in OpenWRT's tree for a long time. My work was to cleanup the code and its rebase on the latest linux-mips tree (3.17-rc2). Sergey Ryazanov (18): MIPS: ar231x: add common parts MIPS: ar231x: add basic AR5312 SoC support MIPS: ar231x: add basic AR2315 SoC support MIPS: ar231x: add interrupts handling routines MIPS: ar231x: add early printk support MIPS: ar231x: add UART support MIPS: ar231x: add board configuration detection gpio: add driver for Atheros AR5312 SoC GPIO controller gpio: add driver for Atheros AR5312 SoC GPIO controller MIPS: ar231x: add SoC type detection MIPS: ar231x: add AR5312 flash support mtd: add Atheros AR2315 SPI Flash driver watchdog: add Atheros AR2315 watchdog driver MIPS: ar231x: add AR2315 PCI host controller driver MIPS: ar231x: add Wireless device support ath5k: correct conditional compilation ath5k: update dependency ath5k: correct dependency arch/mips/Kbuild.platforms | 1 + arch/mips/Kconfig | 15 + arch/mips/ar231x/Kconfig | 18 + arch/mips/ar231x/Makefile | 16 + arch/mips/ar231x/Platform | 6 + arch/mips/ar231x/ar2315.c | 378 ++++++++++++++ arch/mips/ar231x/ar2315.h | 22 + arch/mips/ar231x/ar5312.c | 374 +++++++++++++ arch/mips/ar231x/ar5312.h | 22 + arch/mips/ar231x/board.c | 222 ++++++++ arch/mips/ar231x/devices.c | 111 ++++ arch/mips/ar231x/devices.h | 39 ++ arch/mips/ar231x/early_printk.c | 45 ++ arch/mips/ar231x/prom.c | 31 ++ arch/mips/include/asm/mach-ar231x/ar2315_regs.h | 581 +++++++++++++++++++++ arch/mips/include/asm/mach-ar231x/ar231x.h | 34 ++ .../mips/include/asm/mach-ar231x/ar231x_platform.h | 73 +++ arch/mips/include/asm/mach-ar231x/ar5312_regs.h | 215 ++++++++ .../asm/mach-ar231x/cpu-feature-overrides.h | 84 +++ arch/mips/include/asm/mach-ar231x/dma-coherence.h | 76 +++ arch/mips/include/asm/mach-ar231x/gpio.h | 16 + arch/mips/include/asm/mach-ar231x/war.h | 25 + arch/mips/pci/Makefile | 1 + arch/mips/pci/pci-ar2315.c | 345 ++++++++++++ drivers/gpio/Kconfig | 14 + drivers/gpio/Makefile | 2 + drivers/gpio/gpio-ar2315.c | 233 +++++++++ drivers/gpio/gpio-ar5312.c | 121 +++++ drivers/mtd/devices/Kconfig | 5 + drivers/mtd/devices/Makefile | 1 + drivers/mtd/devices/ar2315.c | 459 ++++++++++++++++ drivers/mtd/devices/ar2315_spiflash.h | 106 ++++ drivers/net/wireless/ath/ath5k/Kconfig | 10 +- drivers/net/wireless/ath/ath5k/ath5k.h | 2 +- drivers/net/wireless/ath/ath5k/base.c | 4 +- drivers/net/wireless/ath/ath5k/led.c | 4 +- drivers/watchdog/Kconfig | 7 + drivers/watchdog/Makefile | 1 + drivers/watchdog/ar2315-wtd.c | 202 +++++++ 39 files changed, 3911 insertions(+), 10 deletions(-) create mode 100644 arch/mips/ar231x/Kconfig create mode 100644 arch/mips/ar231x/Makefile create mode 100644 arch/mips/ar231x/Platform create mode 100644 arch/mips/ar231x/ar2315.c create mode 100644 arch/mips/ar231x/ar2315.h create mode 100644 arch/mips/ar231x/ar5312.c create mode 100644 arch/mips/ar231x/ar5312.h create mode 100644 arch/mips/ar231x/board.c create mode 100644 arch/mips/ar231x/devices.c create mode 100644 arch/mips/ar231x/devices.h create mode 100644 arch/mips/ar231x/early_printk.c create mode 100644 arch/mips/ar231x/prom.c create mode 100644 arch/mips/include/asm/mach-ar231x/ar2315_regs.h create mode 100644 arch/mips/include/asm/mach-ar231x/ar231x.h create mode 100644 arch/mips/include/asm/mach-ar231x/ar231x_platform.h create mode 100644 arch/mips/include/asm/mach-ar231x/ar5312_regs.h create mode 100644 arch/mips/include/asm/mach-ar231x/cpu-feature-overrides.h create mode 100644 arch/mips/include/asm/mach-ar231x/dma-coherence.h create mode 100644 arch/mips/include/asm/mach-ar231x/gpio.h create mode 100644 arch/mips/include/asm/mach-ar231x/war.h create mode 100644 arch/mips/pci/pci-ar2315.c create mode 100644 drivers/gpio/gpio-ar2315.c create mode 100644 drivers/gpio/gpio-ar5312.c create mode 100644 drivers/mtd/devices/ar2315.c create mode 100644 drivers/mtd/devices/ar2315_spiflash.h create mode 100644 drivers/watchdog/ar2315-wtd.c -- 1.8.1.5