[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <54235BB5.5020909@uclinux.org>
Date: Thu, 25 Sep 2014 10:03:01 +1000
From: Greg Ungerer <gerg@...inux.org>
To: Nicolas Ferre <nicolas.ferre@...el.com>,
linux-arm-kernel@...ts.infradead.org,
u.kleine-koenig@...gutronix.de, Arnd Bergmann <arnd@...db.de>,
Olof Johansson <olof@...om.net>,
ARM Maintainers <arm@...nel.org>
CC: linux-kernel@...r.kernel.org,
Patrice Vilchez <patrice.vilchez@...el.com>,
Alexandre Belloni <alexandre.belloni@...e-electrons.com>,
Ludovic Desroches <ludovic.desroches@...el.com>,
Boris BREZILLON <boris.brezillon@...e-electrons.com>,
Jean-Christophe PLAGNIOL-VILLARD <plagnioj@...osoft.com>
Subject: Re: [RFC PATCH] ARM: at91: remove no-MMU at91x40 support
On 25/09/14 00:18, Nicolas Ferre wrote:
> As there is currently no-one to take care of this old !MMU target and as its
> support in recent kernels is a bit rotten, remove this at91x40 support and the
> board file associated with it (at91eb01).
> There are modern ARM !MMU in Mainline now so this target is not interesting for
> building tests anymore. It would be better to start from these modern ARM !MMU
> platforms to reintroduce at91x40 support if needed.
>
> Signed-off-by: Nicolas Ferre <nicolas.ferre@...el.com>
Acked-by: Greg Ungerer <gerg@...inux.org>
> ---
> arch/arm/configs/at91x40_defconfig | 48 --------------
> arch/arm/mach-at91/Kconfig | 25 ++------
> arch/arm/mach-at91/Kconfig.non_dt | 17 -----
> arch/arm/mach-at91/Makefile | 4 --
> arch/arm/mach-at91/at91x40.c | 93 ----------------------------
> arch/arm/mach-at91/at91x40_time.c | 85 -------------------------
> arch/arm/mach-at91/board-eb01.c | 52 ----------------
> arch/arm/mach-at91/generic.h | 3 -
> arch/arm/mach-at91/include/mach/at91_dbgu.h | 3 -
> arch/arm/mach-at91/include/mach/at91x40.h | 60 ------------------
> arch/arm/mach-at91/include/mach/cpu.h | 1 -
> arch/arm/mach-at91/include/mach/hardware.h | 4 --
> arch/arm/mach-at91/include/mach/uncompress.h | 7 ---
> arch/arm/mach-at91/setup.c | 2 +-
> drivers/rtc/Kconfig | 2 +-
> 15 files changed, 7 insertions(+), 399 deletions(-)
> delete mode 100644 arch/arm/configs/at91x40_defconfig
> delete mode 100644 arch/arm/mach-at91/at91x40.c
> delete mode 100644 arch/arm/mach-at91/at91x40_time.c
> delete mode 100644 arch/arm/mach-at91/board-eb01.c
> delete mode 100644 arch/arm/mach-at91/include/mach/at91x40.h
>
> diff --git a/arch/arm/configs/at91x40_defconfig b/arch/arm/configs/at91x40_defconfig
> deleted file mode 100644
> index c55e9212fcbb..000000000000
> --- a/arch/arm/configs/at91x40_defconfig
> +++ /dev/null
> @@ -1,48 +0,0 @@
> -CONFIG_EXPERIMENTAL=y
> -CONFIG_LOG_BUF_SHIFT=14
> -CONFIG_EMBEDDED=y
> -# CONFIG_HOTPLUG is not set
> -# CONFIG_ELF_CORE is not set
> -# CONFIG_FUTEX is not set
> -# CONFIG_TIMERFD is not set
> -# CONFIG_VM_EVENT_COUNTERS is not set
> -# CONFIG_COMPAT_BRK is not set
> -CONFIG_SLAB=y
> -# CONFIG_LBDAF is not set
> -# CONFIG_BLK_DEV_BSG is not set
> -# CONFIG_IOSCHED_DEADLINE is not set
> -# CONFIG_IOSCHED_CFQ is not set
> -# CONFIG_MMU is not set
> -CONFIG_ARCH_AT91=y
> -CONFIG_ARCH_AT91X40=y
> -CONFIG_MACH_AT91EB01=y
> -CONFIG_AT91_EARLY_USART0=y
> -CONFIG_CPU_ARM7TDMI=y
> -CONFIG_SET_MEM_PARAM=y
> -CONFIG_DRAM_BASE=0x01000000
> -CONFIG_DRAM_SIZE=0x00400000
> -CONFIG_FLASH_MEM_BASE=0x01400000
> -CONFIG_PROCESSOR_ID=0x14000040
> -CONFIG_ZBOOT_ROM_TEXT=0x0
> -CONFIG_ZBOOT_ROM_BSS=0x0
> -CONFIG_BINFMT_FLAT=y
> -# CONFIG_SUSPEND is not set
> -# CONFIG_FW_LOADER is not set
> -CONFIG_MTD=y
> -CONFIG_MTD_PARTITIONS=y
> -CONFIG_MTD_CHAR=y
> -CONFIG_MTD_BLOCK=y
> -CONFIG_MTD_RAM=y
> -CONFIG_MTD_ROM=y
> -CONFIG_BLK_DEV_RAM=y
> -# CONFIG_INPUT is not set
> -# CONFIG_SERIO is not set
> -# CONFIG_VT is not set
> -# CONFIG_DEVKMEM is not set
> -# CONFIG_HW_RANDOM is not set
> -# CONFIG_HWMON is not set
> -# CONFIG_USB_SUPPORT is not set
> -CONFIG_EXT2_FS=y
> -# CONFIG_DNOTIFY is not set
> -CONFIG_ROMFS_FS=y
> -# CONFIG_ENABLE_MUST_CHECK is not set
> diff --git a/arch/arm/mach-at91/Kconfig b/arch/arm/mach-at91/Kconfig
> index 807b22dadcb6..f3bd8abd25c0 100644
> --- a/arch/arm/mach-at91/Kconfig
> +++ b/arch/arm/mach-at91/Kconfig
> @@ -18,26 +18,22 @@ config HAVE_AT91_DBGU2
> config AT91_USE_OLD_CLK
> bool
>
> -config AT91_PMC_UNIT
> - bool
> - default !ARCH_AT91X40
> -
> config COMMON_CLK_AT91
> bool
> - default AT91_PMC_UNIT && USE_OF && !AT91_USE_OLD_CLK
> + default USE_OF && !AT91_USE_OLD_CLK
> select COMMON_CLK
>
> config OLD_CLK_AT91
> bool
> - default AT91_PMC_UNIT && AT91_USE_OLD_CLK
> + default AT91_USE_OLD_CLK
>
> config AT91_SAM9_ALT_RESET
> bool
> - default !ARCH_AT91X40
> + default y
>
> config AT91_SAM9G45_RESET
> bool
> - default !ARCH_AT91X40
> + default y
>
> config AT91_SAM9_TIME
> bool
> @@ -71,17 +67,6 @@ choice
>
> prompt "Core type"
>
> -config ARCH_AT91X40
> - bool "ARM7 AT91X40"
> - depends on !MMU
> - select CPU_ARM7TDMI
> - select ARCH_USES_GETTIMEOFFSET
> - select MULTI_IRQ_HANDLER
> - select SPARSE_IRQ
> -
> - help
> - Select this if you are using one of Atmel's AT91X40 SoC.
> -
> config SOC_SAM_V4_V5
> bool "ARM9 AT91SAM9/AT91RM9200"
> help
> @@ -207,7 +192,7 @@ config SOC_AT91SAM9N12
> endif # SOC_SAM_V4_V5
>
>
> -if SOC_SAM_V4_V5 || ARCH_AT91X40
> +if SOC_SAM_V4_V5
> source arch/arm/mach-at91/Kconfig.non_dt
> endif
>
> diff --git a/arch/arm/mach-at91/Kconfig.non_dt b/arch/arm/mach-at91/Kconfig.non_dt
> index aa31e556e2e5..2c62a078c1d9 100644
> --- a/arch/arm/mach-at91/Kconfig.non_dt
> +++ b/arch/arm/mach-at91/Kconfig.non_dt
> @@ -5,7 +5,6 @@ config HAVE_AT91_DATAFLASH_CARD
>
> choice
> prompt "Atmel AT91 Processor Devices for non DT boards"
> - depends on !ARCH_AT91X40
>
> config ARCH_AT91_NONE
> bool "None"
> @@ -311,22 +310,6 @@ endif
>
> # ----------------------------------------------------------
>
> -if ARCH_AT91X40
> -
> -comment "AT91X40 Board Type"
> -
> -config MACH_AT91EB01
> - bool "Atmel AT91EB01 Evaluation Kit"
> - help
> - Select this if you are using Atmel's AT91EB01 Evaluation Kit.
> - It is also a popular target for simulators such as GDB's
> - ARM simulator (commonly known as the ARMulator) and the
> - Skyeye simulator.
> -
> -endif
> -
> -# ----------------------------------------------------------
> -
> comment "AT91 Board Options"
>
> config MTD_AT91_DATAFLASH_CARD
> diff --git a/arch/arm/mach-at91/Makefile b/arch/arm/mach-at91/Makefile
> index 3e9f01ca142a..3c27e434dad7 100644
> --- a/arch/arm/mach-at91/Makefile
> +++ b/arch/arm/mach-at91/Makefile
> @@ -31,7 +31,6 @@ obj-$(CONFIG_ARCH_AT91SAM9261) += at91sam9261_devices.o
> obj-$(CONFIG_ARCH_AT91SAM9263) += at91sam9263_devices.o
> obj-$(CONFIG_ARCH_AT91SAM9RL) += at91sam9rl_devices.o
> obj-$(CONFIG_ARCH_AT91SAM9G45) += at91sam9g45_devices.o
> -obj-$(CONFIG_ARCH_AT91X40) += at91x40.o at91x40_time.o
>
> # AT91RM9200 board-specific support
> obj-$(CONFIG_MACH_ONEARM) += board-1arm.o
> @@ -87,9 +86,6 @@ obj-$(CONFIG_MACH_AT91SAM9_DT) += board-dt-sam9.o
> # SAMA5 board with device-tree
> obj-$(CONFIG_MACH_SAMA5_DT) += board-dt-sama5.o
>
> -# AT91X40 board-specific support
> -obj-$(CONFIG_MACH_AT91EB01) += board-eb01.o
> -
> # Drivers
> obj-y += leds.o
>
> diff --git a/arch/arm/mach-at91/at91x40.c b/arch/arm/mach-at91/at91x40.c
> deleted file mode 100644
> index 7523f1cdfe1d..000000000000
> --- a/arch/arm/mach-at91/at91x40.c
> +++ /dev/null
> @@ -1,93 +0,0 @@
> -/*
> - * arch/arm/mach-at91/at91x40.c
> - *
> - * (C) Copyright 2007, Greg Ungerer <gerg@...pgear.com>
> - * Copyright (C) 2005 SAN People
> - *
> - * This program is free software; you can redistribute it and/or modify
> - * it under the terms of the GNU General Public License as published by
> - * the Free Software Foundation; either version 2 of the License, or
> - * (at your option) any later version.
> - */
> -
> -#include <linux/kernel.h>
> -#include <linux/init.h>
> -#include <linux/irq.h>
> -#include <linux/io.h>
> -#include <asm/proc-fns.h>
> -#include <asm/system_misc.h>
> -#include <asm/mach/arch.h>
> -#include <mach/at91x40.h>
> -#include <mach/at91_st.h>
> -#include <mach/hardware.h>
> -
> -#include "at91_aic.h"
> -#include "generic.h"
> -
> -/*
> - * Export the clock functions for the AT91X40. Some external code common
> - * to all AT91 family parts relys on this, like the gpio and serial support.
> - */
> -int clk_enable(struct clk *clk)
> -{
> - return 0;
> -}
> -
> -void clk_disable(struct clk *clk)
> -{
> -}
> -
> -unsigned long clk_get_rate(struct clk *clk)
> -{
> - return AT91X40_MASTER_CLOCK;
> -}
> -
> -static void at91x40_idle(void)
> -{
> - /*
> - * Disable the processor clock. The processor will be automatically
> - * re-enabled by an interrupt or by a reset.
> - */
> - __raw_writel(AT91_PS_CR_CPU, AT91_IO_P2V(AT91_PS_CR));
> - cpu_do_idle();
> -}
> -
> -void __init at91x40_initialize(unsigned long main_clock)
> -{
> - arm_pm_idle = at91x40_idle;
> -}
> -
> -/*
> - * The default interrupt priority levels (0 = lowest, 7 = highest).
> - */
> -static unsigned int at91x40_default_irq_priority[NR_AIC_IRQS] __initdata = {
> - 7, /* Advanced Interrupt Controller (FIQ) */
> - 0, /* System Peripherals */
> - 0, /* USART 0 */
> - 0, /* USART 1 */
> - 2, /* Timer Counter 0 */
> - 2, /* Timer Counter 1 */
> - 2, /* Timer Counter 2 */
> - 0, /* Watchdog timer */
> - 0, /* Parallel IO Controller A */
> - 0, /* Reserved */
> - 0, /* Reserved */
> - 0, /* Reserved */
> - 0, /* Reserved */
> - 0, /* Reserved */
> - 0, /* Reserved */
> - 0, /* Reserved */
> - 0, /* External IRQ0 */
> - 0, /* External IRQ1 */
> - 0, /* External IRQ2 */
> -};
> -
> -void __init at91x40_init_interrupts(unsigned int priority[NR_AIC_IRQS])
> -{
> - u32 extern_irq = (1 << AT91X40_ID_IRQ0) | (1 << AT91X40_ID_IRQ1)
> - | (1 << AT91X40_ID_IRQ2);
> - if (!priority)
> - priority = at91x40_default_irq_priority;
> -
> - at91_aic_init(priority, extern_irq);
> -}
> diff --git a/arch/arm/mach-at91/at91x40_time.c b/arch/arm/mach-at91/at91x40_time.c
> deleted file mode 100644
> index 07d0bf2ac2da..000000000000
> --- a/arch/arm/mach-at91/at91x40_time.c
> +++ /dev/null
> @@ -1,85 +0,0 @@
> -/*
> - * arch/arm/mach-at91/at91x40_time.c
> - *
> - * (C) Copyright 2007, Greg Ungerer <gerg@...pgear.com>
> - *
> - * This program is free software; you can redistribute it and/or modify
> - * it under the terms of the GNU General Public License as published by
> - * the Free Software Foundation; either version 2 of the License, or
> - * (at your option) any later version.
> - *
> - * This program is distributed in the hope that it will be useful,
> - * but WITHOUT ANY WARRANTY; without even the implied warranty of
> - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
> - * GNU General Public License for more details.
> - *
> - * You should have received a copy of the GNU General Public License
> - * along with this program; if not, write to the Free Software
> - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
> - */
> -
> -#include <linux/kernel.h>
> -#include <linux/init.h>
> -#include <linux/interrupt.h>
> -#include <linux/irq.h>
> -#include <linux/time.h>
> -#include <linux/io.h>
> -#include <mach/hardware.h>
> -#include <mach/at91x40.h>
> -#include <asm/mach/time.h>
> -
> -#include "at91_tc.h"
> -
> -#define at91_tc_read(field) \
> - __raw_readl(AT91_IO_P2V(AT91_TC) + field)
> -
> -#define at91_tc_write(field, value) \
> - __raw_writel(value, AT91_IO_P2V(AT91_TC) + field)
> -
> -/*
> - * 3 counter/timer units present.
> - */
> -#define AT91_TC_CLK0BASE 0
> -#define AT91_TC_CLK1BASE 0x40
> -#define AT91_TC_CLK2BASE 0x80
> -
> -static u32 at91x40_gettimeoffset(void)
> -{
> - return (at91_tc_read(AT91_TC_CLK1BASE + AT91_TC_CV) * 1000000 /
> - (AT91X40_MASTER_CLOCK / 128)) * 1000;
> -}
> -
> -static irqreturn_t at91x40_timer_interrupt(int irq, void *dev_id)
> -{
> - at91_tc_read(AT91_TC_CLK1BASE + AT91_TC_SR);
> - timer_tick();
> - return IRQ_HANDLED;
> -}
> -
> -static struct irqaction at91x40_timer_irq = {
> - .name = "at91_tick",
> - .flags = IRQF_TIMER,
> - .handler = at91x40_timer_interrupt
> -};
> -
> -void __init at91x40_timer_init(void)
> -{
> - unsigned int v;
> -
> - arch_gettimeoffset = at91x40_gettimeoffset;
> -
> - at91_tc_write(AT91_TC_BCR, 0);
> - v = at91_tc_read(AT91_TC_BMR);
> - v = (v & ~AT91_TC_TC1XC1S) | AT91_TC_TC1XC1S_NONE;
> - at91_tc_write(AT91_TC_BMR, v);
> -
> - at91_tc_write(AT91_TC_CLK1BASE + AT91_TC_CCR, AT91_TC_CLKDIS);
> - at91_tc_write(AT91_TC_CLK1BASE + AT91_TC_CMR, (AT91_TC_TIMER_CLOCK4 | AT91_TC_CPCTRG));
> - at91_tc_write(AT91_TC_CLK1BASE + AT91_TC_IDR, 0xffffffff);
> - at91_tc_write(AT91_TC_CLK1BASE + AT91_TC_RC, (AT91X40_MASTER_CLOCK / 128) / HZ - 1);
> - at91_tc_write(AT91_TC_CLK1BASE + AT91_TC_IER, (1<<4));
> -
> - setup_irq(AT91X40_ID_TC1, &at91x40_timer_irq);
> -
> - at91_tc_write(AT91_TC_CLK1BASE + AT91_TC_CCR, (AT91_TC_SWTRG | AT91_TC_CLKEN));
> -}
> diff --git a/arch/arm/mach-at91/board-eb01.c b/arch/arm/mach-at91/board-eb01.c
> deleted file mode 100644
> index becf0a6a289e..000000000000
> --- a/arch/arm/mach-at91/board-eb01.c
> +++ /dev/null
> @@ -1,52 +0,0 @@
> -/*
> - * arch/arm/mach-at91/board-eb01.c
> - *
> - * (C) Copyright 2007, Greg Ungerer <gerg@...pgear.com>
> - *
> - * This program is free software; you can redistribute it and/or modify
> - * it under the terms of the GNU General Public License as published by
> - * the Free Software Foundation; either version 2 of the License, or
> - * (at your option) any later version.
> - *
> - * This program is distributed in the hope that it will be useful,
> - * but WITHOUT ANY WARRANTY; without even the implied warranty of
> - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
> - * GNU General Public License for more details.
> - *
> - * You should have received a copy of the GNU General Public License
> - * along with this program; if not, write to the Free Software
> - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
> - */
> -
> -#include <linux/kernel.h>
> -#include <linux/init.h>
> -#include <linux/module.h>
> -#include <linux/platform_device.h>
> -#include <linux/irq.h>
> -#include <asm/mach-types.h>
> -#include <mach/hardware.h>
> -#include <asm/mach/arch.h>
> -#include <asm/mach/map.h>
> -
> -#include "at91_aic.h"
> -#include "board.h"
> -#include "generic.h"
> -
> -static void __init at91eb01_init_irq(void)
> -{
> - at91x40_init_interrupts(NULL);
> -}
> -
> -static void __init at91eb01_init_early(void)
> -{
> - at91x40_initialize(40000000);
> -}
> -
> -MACHINE_START(AT91EB01, "Atmel AT91 EB01")
> - /* Maintainer: Greg Ungerer <gerg@...pgear.com> */
> - .init_time = at91x40_timer_init,
> - .handle_irq = at91_aic_handle_irq,
> - .init_early = at91eb01_init_early,
> - .init_irq = at91eb01_init_irq,
> -MACHINE_END
> -
> diff --git a/arch/arm/mach-at91/generic.h b/arch/arm/mach-at91/generic.h
> index cddf1e51c50e..4c12d1eba4d6 100644
> --- a/arch/arm/mach-at91/generic.h
> +++ b/arch/arm/mach-at91/generic.h
> @@ -21,14 +21,12 @@ extern void __init at91_init_sram(int bank, unsigned long base,
> /* Processors */
> extern void __init at91rm9200_set_type(int type);
> extern void __init at91_initialize(unsigned long main_clock);
> -extern void __init at91x40_initialize(unsigned long main_clock);
> extern void __init at91rm9200_dt_initialize(void);
> extern void __init at91_dt_initialize(void);
>
> /* Interrupts */
> extern void __init at91_init_irq_default(void);
> extern void __init at91_init_interrupts(unsigned int priority[]);
> -extern void __init at91x40_init_interrupts(unsigned int priority[]);
> extern void __init at91_aic_init(unsigned int priority[],
> unsigned int ext_irq_mask);
> extern int __init at91_aic_of_init(struct device_node *node,
> @@ -44,7 +42,6 @@ extern void at91rm9200_ioremap_st(u32 addr);
> extern void at91rm9200_timer_init(void);
> extern void at91sam926x_ioremap_pit(u32 addr);
> extern void at91sam926x_pit_init(void);
> -extern void at91x40_timer_init(void);
>
> /* Clocks */
> #ifdef CONFIG_OLD_CLK_AT91
> diff --git a/arch/arm/mach-at91/include/mach/at91_dbgu.h b/arch/arm/mach-at91/include/mach/at91_dbgu.h
> index 3b5948566e52..42925e8f78e4 100644
> --- a/arch/arm/mach-at91/include/mach/at91_dbgu.h
> +++ b/arch/arm/mach-at91/include/mach/at91_dbgu.h
> @@ -16,7 +16,6 @@
> #ifndef AT91_DBGU_H
> #define AT91_DBGU_H
>
> -#if !defined(CONFIG_ARCH_AT91X40)
> #define AT91_DBGU_CR (0x00) /* Control Register */
> #define AT91_DBGU_MR (0x04) /* Mode Register */
> #define AT91_DBGU_IER (0x08) /* Interrupt Enable Register */
> @@ -34,8 +33,6 @@
> #define AT91_DBGU_FNR (0x48) /* Force NTRST Register [SAM9 only] */
> #define AT91_DBGU_FNTRST (1 << 0) /* Force NTRST */
>
> -#endif /* AT91_DBGU */
> -
> /*
> * Some AT91 parts that don't have full DEBUG units still support the ID
> * and extensions register.
> diff --git a/arch/arm/mach-at91/include/mach/at91x40.h b/arch/arm/mach-at91/include/mach/at91x40.h
> deleted file mode 100644
> index 38dca2bb027f..000000000000
> --- a/arch/arm/mach-at91/include/mach/at91x40.h
> +++ /dev/null
> @@ -1,60 +0,0 @@
> -/*
> - * arch/arm/mach-at91/include/mach/at91x40.h
> - *
> - * (C) Copyright 2007, Greg Ungerer <gerg@...pgear.com>
> - *
> - * This program is free software; you can redistribute it and/or modify
> - * it under the terms of the GNU General Public License as published by
> - * the Free Software Foundation; either version 2 of the License, or
> - * (at your option) any later version.
> - */
> -
> -#ifndef AT91X40_H
> -#define AT91X40_H
> -
> -/*
> - * IRQ list.
> - */
> -#define AT91X40_ID_USART0 2 /* USART port 0 */
> -#define AT91X40_ID_USART1 3 /* USART port 1 */
> -#define AT91X40_ID_TC0 4 /* Timer/Counter 0 */
> -#define AT91X40_ID_TC1 5 /* Timer/Counter 1*/
> -#define AT91X40_ID_TC2 6 /* Timer/Counter 2*/
> -#define AT91X40_ID_WD 7 /* Watchdog? */
> -#define AT91X40_ID_PIOA 8 /* Parallel IO Controller A */
> -
> -#define AT91X40_ID_IRQ0 16 /* External IRQ 0 */
> -#define AT91X40_ID_IRQ1 17 /* External IRQ 1 */
> -#define AT91X40_ID_IRQ2 18 /* External IRQ 2 */
> -
> -/*
> - * System Peripherals
> - */
> -#define AT91_BASE_SYS 0xffc00000
> -
> -#define AT91_EBI 0xffe00000 /* External Bus Interface */
> -#define AT91_SF 0xfff00000 /* Special Function */
> -#define AT91_USART1 0xfffcc000 /* USART 1 */
> -#define AT91_USART0 0xfffd0000 /* USART 0 */
> -#define AT91_TC 0xfffe0000 /* Timer Counter */
> -#define AT91_PIOA 0xffff0000 /* PIO Controller A */
> -#define AT91_PS 0xffff4000 /* Power Save */
> -#define AT91_WD 0xffff8000 /* Watchdog Timer */
> -
> -/*
> - * The AT91x40 series doesn't have a debug unit like the other AT91 parts.
> - * But it does have a chip identify register and extension ID, so define at
> - * least these here.
> - */
> -#define AT91_DBGU_CIDR (AT91_SF + 0) /* CIDR in PS segment */
> -#define AT91_DBGU_EXID (AT91_SF + 4) /* EXID in PS segment */
> -
> -/*
> - * Support defines for the simple Power Controller module.
> - */
> -#define AT91_PS_CR (AT91_PS + 0) /* PS Control register */
> -#define AT91_PS_CR_CPU (1 << 0) /* CPU clock disable bit */
> -
> -#define AT91X40_MASTER_CLOCK 40000000
> -
> -#endif /* AT91X40_H */
> diff --git a/arch/arm/mach-at91/include/mach/cpu.h b/arch/arm/mach-at91/include/mach/cpu.h
> index b27e9ca65653..61914fb35f5d 100644
> --- a/arch/arm/mach-at91/include/mach/cpu.h
> +++ b/arch/arm/mach-at91/include/mach/cpu.h
> @@ -62,7 +62,6 @@
> #define ARCH_EXID_SAMA5D43 0x00000003
> #define ARCH_EXID_SAMA5D44 0x00000004
>
> -#define ARCH_FAMILY_AT91X92 0x09200000
> #define ARCH_FAMILY_AT91SAM9 0x01900000
> #define ARCH_FAMILY_AT91SAM9XE 0x02900000
>
> diff --git a/arch/arm/mach-at91/include/mach/hardware.h b/arch/arm/mach-at91/include/mach/hardware.h
> index d84776f6b8ac..3fe30f613f23 100644
> --- a/arch/arm/mach-at91/include/mach/hardware.h
> +++ b/arch/arm/mach-at91/include/mach/hardware.h
> @@ -24,9 +24,6 @@
> /* sama5d4 */
> #define AT91_BASE_DBGU2 0xfc069000
>
> -#if defined(CONFIG_ARCH_AT91X40)
> -#include <mach/at91x40.h>
> -#else
> #include <mach/at91rm9200.h>
> #include <mach/at91sam9260.h>
> #include <mach/at91sam9261.h>
> @@ -55,7 +52,6 @@
> * On sama5d4 there is no system controller, we map some needed peripherals
> */
> #define AT91_ALT_BASE_SYS 0xfc069000
> -#endif
>
> /*
> * On all at91 have the Advanced Interrupt Controller starts at address
> diff --git a/arch/arm/mach-at91/include/mach/uncompress.h b/arch/arm/mach-at91/include/mach/uncompress.h
> index acb2d890ad7e..4ebb609369e3 100644
> --- a/arch/arm/mach-at91/include/mach/uncompress.h
> +++ b/arch/arm/mach-at91/include/mach/uncompress.h
> @@ -31,7 +31,6 @@
>
> void __iomem *at91_uart;
>
> -#if !defined(CONFIG_ARCH_AT91X40)
> static const u32 uarts_rm9200[] = {
> AT91_BASE_DBGU0,
> AT91RM9200_BASE_US0,
> @@ -188,12 +187,6 @@ static inline void arch_decomp_setup(void)
>
> at91_uart = NULL;
> }
> -#else
> -static inline void arch_decomp_setup(void)
> -{
> - at91_uart = NULL;
> -}
> -#endif
>
> /*
> * The following code assumes the serial port has already been
> diff --git a/arch/arm/mach-at91/setup.c b/arch/arm/mach-at91/setup.c
> index 535a6e70f4ef..7fcb9fa5aa31 100644
> --- a/arch/arm/mach-at91/setup.c
> +++ b/arch/arm/mach-at91/setup.c
> @@ -440,7 +440,7 @@ void __init at91_ioremap_matrix(u32 base_addr)
> panic("Impossible to ioremap at91_matrix_base\n");
> }
>
> -#if defined(CONFIG_OF) && !defined(CONFIG_ARCH_AT91X40)
> +#if defined(CONFIG_OF)
> static struct of_device_id rstc_ids[] = {
> { .compatible = "atmel,at91sam9260-rstc", .data = at91sam9_alt_restart },
> { .compatible = "atmel,at91sam9g45-rstc", .data = at91sam9g45_restart },
> diff --git a/drivers/rtc/Kconfig b/drivers/rtc/Kconfig
> index a168e96142b9..65acf0707f63 100644
> --- a/drivers/rtc/Kconfig
> +++ b/drivers/rtc/Kconfig
> @@ -1080,7 +1080,7 @@ config RTC_DRV_AT91RM9200
>
> config RTC_DRV_AT91SAM9
> tristate "AT91SAM9x/AT91CAP9 RTT as RTC"
> - depends on ARCH_AT91 && !(ARCH_AT91RM9200 || ARCH_AT91X40)
> + depends on ARCH_AT91 && !ARCH_AT91RM9200
> help
> RTC driver for the Atmel AT91SAM9x and AT91CAP9 internal RTT
> (Real Time Timer). These timers are powered by the backup power
>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists