aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/mcs814x/patches-3.3/006-mcs814x_wdt.patch
blob: 83547aab7880ab37b474d1bcd2d92b27d8aa2aa8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
--- a/drivers/watchdog/Kconfig
+++ b/drivers/watchdog/Kconfig
@@ -343,6 +343,12 @@ config IMX2_WDT
 	  To compile this driver as a module, choose M here: the
 	  module will be called imx2_wdt.
 
+config MCS814X_WATCHDOG
+	tristate "Moschip MCS814x watchdog"
+	depends on WATCHDOG_CORE && ARCH_MCS814X
+	help
+	  Support for the Moschip MCS814x SoCs on-chip watchdog timer.
+
 # AVR32 Architecture
 
 config AT32AP700X_WDT
--- a/drivers/watchdog/Makefile
+++ b/drivers/watchdog/Makefile
@@ -53,6 +53,7 @@ obj-$(CONFIG_STMP3XXX_WATCHDOG) += stmp3
 obj-$(CONFIG_NUC900_WATCHDOG) += nuc900_wdt.o
 obj-$(CONFIG_TS72XX_WATCHDOG) += ts72xx_wdt.o
 obj-$(CONFIG_IMX2_WDT) += imx2_wdt.o
+obj-$(CONFIG_MCS814X_WATCHDOG) += mcs814x_wdt.o
 
 # AVR32 Architecture
 obj-$(CONFIG_AT32AP700X_WDT) += at32ap700x_wdt.o
h(dev); if (dev->irq) free_irq(dev->irq, dev); - sysType = get_system_type(); - if (!strcmp(sysType, "Atheros AR5315")) +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,19) + devid = sc->aps_sc.devid; + config->tag = (unsigned long) devid; +#else + if (!strcmp(get_system_type(), "Atheros AR5315")) devid = (u_int16_t) (sysRegRead(AR5315_SREV) & (AR5315_REV_MAJ_M | AR5315_REV_MIN_M)); else devid = (u_int16_t) ((sysRegRead(AR531X_REV) >> 8) & (AR531X_REV_MAJ | AR531X_REV_MIN)); +#endif ahb_disable_wmac(devid, wlanNum); free_netdev(dev); @@ -401,7 +404,7 @@ static int ahb_wmac_remove(struct platform_device *pdev) { - exit_ath_wmac(pdev->id); + exit_ath_wmac(pdev->id, (struct ar531x_config *) pdev->dev.platform_data); return 0; }