From e1965a1d1a8e98673c5851ea42e191f4ebd7bf4f Mon Sep 17 00:00:00 2001
From: Gabor Juhos <juhosg@openwrt.org>
Date: Tue, 1 Jan 2013 13:10:41 +0000
Subject: [PATCH] ar71xx: register the NAND flash controller device on the
 AP135/136 boards

Signed-off-by: Gabor Juhos <juhosg@openwrt.org>

SVN-Revision: 34946
---
 .../patches-3.6/609-MIPS-ath79-ap136-fixes.patch  | 15 ++++++++++-----
 .../610-MIPS-ath79-openwrt-machines.patch         | 14 +++++++-------
 .../patches-3.7/609-MIPS-ath79-ap136-fixes.patch  | 15 ++++++++++-----
 .../610-MIPS-ath79-openwrt-machines.patch         | 14 +++++++-------
 4 files changed, 34 insertions(+), 24 deletions(-)

diff --git a/target/linux/ar71xx/patches-3.6/609-MIPS-ath79-ap136-fixes.patch b/target/linux/ar71xx/patches-3.6/609-MIPS-ath79-ap136-fixes.patch
index 3f57443e20..6358e47807 100644
--- a/target/linux/ar71xx/patches-3.6/609-MIPS-ath79-ap136-fixes.patch
+++ b/target/linux/ar71xx/patches-3.6/609-MIPS-ath79-ap136-fixes.patch
@@ -7,7 +7,7 @@
   *
   * Copyright (c) 2012 Qualcomm Atheros
   * Copyright (c) 2012 Gabor Juhos <juhosg@openwrt.org>
-@@ -18,23 +18,27 @@
+@@ -18,23 +18,28 @@
   *
   */
  
@@ -26,6 +26,7 @@
  #include "dev-leds-gpio.h"
 -#include "dev-spi.h"
 +#include "dev-m25p80.h"
++#include "dev-nfc.h"
  #include "dev-usb.h"
  #include "dev-wmac.h"
 -#include "pci.h"
@@ -43,7 +44,7 @@
  #define AP136_GPIO_LED_WPS_GREEN	20
  
  #define AP136_GPIO_BTN_WPS		16
-@@ -43,8 +47,10 @@
+@@ -43,8 +48,10 @@
  #define AP136_KEYS_POLL_INTERVAL	20	/* msecs */
  #define AP136_KEYS_DEBOUNCE_INTERVAL	(3 * AP136_KEYS_POLL_INTERVAL)
  
@@ -56,7 +57,7 @@
  
  static struct gpio_led ap136_leds_gpio[] __initdata = {
  	{
-@@ -98,64 +104,156 @@ static struct gpio_keys_button ap136_gpi
+@@ -98,64 +105,158 @@ static struct gpio_keys_button ap136_gpi
  	},
  };
  
@@ -156,6 +157,8 @@
  	ath79_register_usb();
 -	ath79_register_wmac(art + AP136_WMAC_CALDATA_OFFSET);
 -	ap136_pci_init(art + AP136_PCIE_CALDATA_OFFSET);
++	ath79_register_nfc();
++
 +	ath79_register_wmac(art + AP136_WMAC_CALDATA_OFFSET, NULL);
 +	ap91_pci_init(art + AP136_PCIE_CALDATA_OFFSET, NULL);
 +
@@ -266,7 +269,7 @@
  	ATH79_MACH_PB44,		/* Atheros PB44 reference board */
 --- a/arch/mips/ath79/Kconfig
 +++ b/arch/mips/ath79/Kconfig
-@@ -16,7 +16,7 @@ config ATH79_MACH_AP121
+@@ -16,16 +16,17 @@ config ATH79_MACH_AP121
  	  Atheros AP121 reference board.
  
  config ATH79_MACH_AP136
@@ -275,7 +278,9 @@
  	select SOC_QCA955X
  	select ATH79_DEV_GPIO_BUTTONS
  	select ATH79_DEV_LEDS_GPIO
-@@ -25,7 +25,7 @@ config ATH79_MACH_AP136
++	select ATH79_DEV_NFC
+ 	select ATH79_DEV_SPI
+ 	select ATH79_DEV_USB
  	select ATH79_DEV_WMAC
  	help
  	  Say 'Y' here if you want your kernel to support the
diff --git a/target/linux/ar71xx/patches-3.6/610-MIPS-ath79-openwrt-machines.patch b/target/linux/ar71xx/patches-3.6/610-MIPS-ath79-openwrt-machines.patch
index 7e3005898d..73253bb5ab 100644
--- a/target/linux/ar71xx/patches-3.6/610-MIPS-ath79-openwrt-machines.patch
+++ b/target/linux/ar71xx/patches-3.6/610-MIPS-ath79-openwrt-machines.patch
@@ -177,7 +177,7 @@
  config ATH79_MACH_AP121
  	bool "Atheros AP121 reference board"
  	select SOC_AR933X
-@@ -40,6 +95,24 @@ config ATH79_MACH_AP81
+@@ -41,6 +96,24 @@ config ATH79_MACH_AP81
  	  Say 'Y' here if you want your kernel to support the
  	  Atheros AP81 reference board.
  
@@ -202,7 +202,7 @@
  config ATH79_MACH_DB120
  	bool "Atheros DB120 reference board"
  	select SOC_AR934X
-@@ -55,6 +128,13 @@ config ATH79_MACH_DB120
+@@ -56,6 +129,13 @@ config ATH79_MACH_DB120
  	  Say 'Y' here if you want your kernel to support the
  	  Atheros DB120 reference board.
  
@@ -216,7 +216,7 @@
  config ATH79_MACH_PB44
  	bool "Atheros PB44 reference board"
  	select SOC_AR71XX
-@@ -67,6 +147,488 @@ config ATH79_MACH_PB44
+@@ -68,6 +148,488 @@ config ATH79_MACH_PB44
  	  Say 'Y' here if you want your kernel to support the
  	  Atheros PB44 reference board.
  
@@ -705,7 +705,7 @@
  config ATH79_MACH_UBNT_XM
  	bool "Ubiquiti Networks XM/UniFi boards"
  	select SOC_AR724X
-@@ -82,6 +644,24 @@ config ATH79_MACH_UBNT_XM
+@@ -83,6 +645,24 @@ config ATH79_MACH_UBNT_XM
  	  Say 'Y' here if you want your kernel to support the
  	  Ubiquiti Networks XM (rev 1.0) board.
  
@@ -730,7 +730,7 @@
  endmenu
  
  config SOC_AR71XX
-@@ -117,10 +697,6 @@ config SOC_QCA955X
+@@ -118,10 +698,6 @@ config SOC_QCA955X
  	select PCI_AR724X if PCI
  	def_bool n
  
@@ -741,7 +741,7 @@
  config ATH79_DEV_AP9X_PCI
  	select ATH79_PCI_ATH9K_FIXUP
  	def_bool n
-@@ -131,7 +707,14 @@ config ATH79_DEV_DSA
+@@ -132,7 +708,14 @@ config ATH79_DEV_DSA
  config ATH79_DEV_ETH
  	def_bool n
  
@@ -757,7 +757,7 @@
  	def_bool n
  
  config ATH79_DEV_GPIO_BUTTONS
-@@ -163,4 +746,7 @@ config ATH79_PCI_ATH9K_FIXUP
+@@ -164,4 +747,7 @@ config ATH79_PCI_ATH9K_FIXUP
  config ATH79_ROUTERBOOT
  	def_bool n
  
diff --git a/target/linux/ar71xx/patches-3.7/609-MIPS-ath79-ap136-fixes.patch b/target/linux/ar71xx/patches-3.7/609-MIPS-ath79-ap136-fixes.patch
index 3f57443e20..6358e47807 100644
--- a/target/linux/ar71xx/patches-3.7/609-MIPS-ath79-ap136-fixes.patch
+++ b/target/linux/ar71xx/patches-3.7/609-MIPS-ath79-ap136-fixes.patch
@@ -7,7 +7,7 @@
   *
   * Copyright (c) 2012 Qualcomm Atheros
   * Copyright (c) 2012 Gabor Juhos <juhosg@openwrt.org>
-@@ -18,23 +18,27 @@
+@@ -18,23 +18,28 @@
   *
   */
  
@@ -26,6 +26,7 @@
  #include "dev-leds-gpio.h"
 -#include "dev-spi.h"
 +#include "dev-m25p80.h"
++#include "dev-nfc.h"
  #include "dev-usb.h"
  #include "dev-wmac.h"
 -#include "pci.h"
@@ -43,7 +44,7 @@
  #define AP136_GPIO_LED_WPS_GREEN	20
  
  #define AP136_GPIO_BTN_WPS		16
-@@ -43,8 +47,10 @@
+@@ -43,8 +48,10 @@
  #define AP136_KEYS_POLL_INTERVAL	20	/* msecs */
  #define AP136_KEYS_DEBOUNCE_INTERVAL	(3 * AP136_KEYS_POLL_INTERVAL)
  
@@ -56,7 +57,7 @@
  
  static struct gpio_led ap136_leds_gpio[] __initdata = {
  	{
-@@ -98,64 +104,156 @@ static struct gpio_keys_button ap136_gpi
+@@ -98,64 +105,158 @@ static struct gpio_keys_button ap136_gpi
  	},
  };
  
@@ -156,6 +157,8 @@
  	ath79_register_usb();
 -	ath79_register_wmac(art + AP136_WMAC_CALDATA_OFFSET);
 -	ap136_pci_init(art + AP136_PCIE_CALDATA_OFFSET);
++	ath79_register_nfc();
++
 +	ath79_register_wmac(art + AP136_WMAC_CALDATA_OFFSET, NULL);
 +	ap91_pci_init(art + AP136_PCIE_CALDATA_OFFSET, NULL);
 +
@@ -266,7 +269,7 @@
  	ATH79_MACH_PB44,		/* Atheros PB44 reference board */
 --- a/arch/mips/ath79/Kconfig
 +++ b/arch/mips/ath79/Kconfig
-@@ -16,7 +16,7 @@ config ATH79_MACH_AP121
+@@ -16,16 +16,17 @@ config ATH79_MACH_AP121
  	  Atheros AP121 reference board.
  
  config ATH79_MACH_AP136
@@ -275,7 +278,9 @@
  	select SOC_QCA955X
  	select ATH79_DEV_GPIO_BUTTONS
  	select ATH79_DEV_LEDS_GPIO
-@@ -25,7 +25,7 @@ config ATH79_MACH_AP136
++	select ATH79_DEV_NFC
+ 	select ATH79_DEV_SPI
+ 	select ATH79_DEV_USB
  	select ATH79_DEV_WMAC
  	help
  	  Say 'Y' here if you want your kernel to support the
diff --git a/target/linux/ar71xx/patches-3.7/610-MIPS-ath79-openwrt-machines.patch b/target/linux/ar71xx/patches-3.7/610-MIPS-ath79-openwrt-machines.patch
index 7e3005898d..73253bb5ab 100644
--- a/target/linux/ar71xx/patches-3.7/610-MIPS-ath79-openwrt-machines.patch
+++ b/target/linux/ar71xx/patches-3.7/610-MIPS-ath79-openwrt-machines.patch
@@ -177,7 +177,7 @@
  config ATH79_MACH_AP121
  	bool "Atheros AP121 reference board"
  	select SOC_AR933X
-@@ -40,6 +95,24 @@ config ATH79_MACH_AP81
+@@ -41,6 +96,24 @@ config ATH79_MACH_AP81
  	  Say 'Y' here if you want your kernel to support the
  	  Atheros AP81 reference board.
  
@@ -202,7 +202,7 @@
  config ATH79_MACH_DB120
  	bool "Atheros DB120 reference board"
  	select SOC_AR934X
-@@ -55,6 +128,13 @@ config ATH79_MACH_DB120
+@@ -56,6 +129,13 @@ config ATH79_MACH_DB120
  	  Say 'Y' here if you want your kernel to support the
  	  Atheros DB120 reference board.
  
@@ -216,7 +216,7 @@
  config ATH79_MACH_PB44
  	bool "Atheros PB44 reference board"
  	select SOC_AR71XX
-@@ -67,6 +147,488 @@ config ATH79_MACH_PB44
+@@ -68,6 +148,488 @@ config ATH79_MACH_PB44
  	  Say 'Y' here if you want your kernel to support the
  	  Atheros PB44 reference board.
  
@@ -705,7 +705,7 @@
  config ATH79_MACH_UBNT_XM
  	bool "Ubiquiti Networks XM/UniFi boards"
  	select SOC_AR724X
-@@ -82,6 +644,24 @@ config ATH79_MACH_UBNT_XM
+@@ -83,6 +645,24 @@ config ATH79_MACH_UBNT_XM
  	  Say 'Y' here if you want your kernel to support the
  	  Ubiquiti Networks XM (rev 1.0) board.
  
@@ -730,7 +730,7 @@
  endmenu
  
  config SOC_AR71XX
-@@ -117,10 +697,6 @@ config SOC_QCA955X
+@@ -118,10 +698,6 @@ config SOC_QCA955X
  	select PCI_AR724X if PCI
  	def_bool n
  
@@ -741,7 +741,7 @@
  config ATH79_DEV_AP9X_PCI
  	select ATH79_PCI_ATH9K_FIXUP
  	def_bool n
-@@ -131,7 +707,14 @@ config ATH79_DEV_DSA
+@@ -132,7 +708,14 @@ config ATH79_DEV_DSA
  config ATH79_DEV_ETH
  	def_bool n
  
@@ -757,7 +757,7 @@
  	def_bool n
  
  config ATH79_DEV_GPIO_BUTTONS
-@@ -163,4 +746,7 @@ config ATH79_PCI_ATH9K_FIXUP
+@@ -164,4 +747,7 @@ config ATH79_PCI_ATH9K_FIXUP
  config ATH79_ROUTERBOOT
  	def_bool n
  
-- 
2.30.2