aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2009-03-12[ARM] 5422/1: ARM: MMU: add a Non-cacheable Normal executable memory typePaul Walmsley
This patch adds a Non-cacheable Normal ARM executable memory type, MT_MEMORY_NONCACHED. On OMAP3, this is used for rapid dynamic voltage/frequency scaling in the VDD2 voltage domain. OMAP3's SDRAM controller (SDRC) is in the VDD2 voltage domain, and its clock frequency must change along with voltage. The SDRC clock change code cannot run from SDRAM itself, since SDRAM accesses are paused during the clock change. So the current implementation of the DVFS code executes from OMAP on-chip SRAM, aka "OCM RAM." If the OCM RAM pages are marked as Cacheable, the ARM cache controller will attempt to flush dirty cache lines to the SDRC, so it can fill those lines with OCM RAM instruction code. The problem is that the SDRC is paused during DVFS, and so any SDRAM access causes the ARM MPU subsystem to hang. TI's original solution to this problem was to mark the OCM RAM sections as Strongly Ordered memory, thus preventing caching. This is overkill: since the memory is marked as non-bufferable, OCM RAM writes become needlessly slow. The idea of "Strongly Ordered SRAM" is also conceptually disturbing. Previous LAKML list discussion is here: http://www.spinics.net/lists/arm-kernel/msg54312.html This memory type MT_MEMORY_NONCACHED is used for OCM RAM by a future patch. Cc: Richard Woodruff <r-woodruff2@ti.com> Signed-off-by: Paul Walmsley <paul@pwsan.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2009-03-12[ARM] 5420/1: MMCI devinit and devexit macrosLinus Walleij
This adds __devinit and __devexit macros to the module probe and remove functions in MMCI. Now includes the __devexit_p() thing too. Signed-off-by: Linus Walleij <linus.walleij@ericsson.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2009-03-09[ARM] pxa: add DM9000_PLATF_NO_EEPROM flag to CM-X... platformsMike Rapoport
Signed-off-by: Mike Rapoport <mike@compulab.co.il> Signed-off-by: Eric Miao <eric.miao@marvell.com>
2009-03-09[ARM] pxa: separate definitions from pxa-regs.h and remove it finallyEric Miao
The remaining registers are separated into: - <mach/regs-ost.h> - <mach/regs-rtc.h> - <mach/regs-intc.h> and then we can remove pxa-regs.h completely. Instead of #include this file, let's: 1. include the specific <mach/regs-*.h> with care (if that's absolutely necessary) 2. define the registers in the driver, make cleanly defined API to expose the register access to external with sufficient reason Signed-off-by: Eric Miao <eric.miao@marvell.com>
2009-03-09[ARM] pxa: move pxa2xx chip selects definitions out of pxa-regs.hEric Miao
The definitions of PXA_CS<x>_PHYS are really PXA2xx specific and should be moved out of pxa-regs.h. As an illustration, the PXA3xx static chip selects definitions are added into pxa3xx-regs.h. Signed-off-by: Eric Miao <eric.miao@marvell.com>
2009-03-09[ARM] pxa: make lubbock specific debugging stuffs back into lubbock.cEric Miao
This isn't perfect but at least solves the problem of pm.c's dependency on register definitions in <mach/lubbock.h>, which doesn't make much sense. Signed-off-by: Eric Miao <eric.miao@marvell.com>
2009-03-09[ARM] pxa: move PCMCIA definitions out of pxa-regs.h into pxa2xx_base.cEric Miao
Move the processor specific initialization (largely resources initialization) out of soc_common_drv_pcmcia_probe() into dedicated sa11xx_drv_pcmcia_probe() and __pxa2xx_drv_pcmcia_probe(). By doing this, we are now able to move the PCMCIA related definitions out of pxa-regs.h and back into pxa2xx_base.c. As a result, remove that reference of _PCMCIA1IO in arch/arm/mach-pxa/viper.c. Signed-off-by: Eric Miao <eric.miao@marvell.com>
2009-03-09[ARM] pxa: remove unnecessary #include of pxa-regs.h and hardware.hEric Miao
pxa-regs.h and hardware.h are not intended for use directly in driver code, remove those unnecessary references. Signed-off-by: Eric Miao <eric.miao@marvell.com>
2009-03-09[ARM] pxa: remove machine class specific stuffs from serial driverEric Miao
The only things prevent drivers/serial/pxa.c from being generic enough are: 1. IER_UUE which can be safely replaced by UART_IER_UUE as defined in serial_reg.h for PXA 2. __PREG() and FFUART/BTUART/STUART definitions to decide the UART port name And removed the un-necessary #include of <mach/...> and <asm/...> headers. Signed-off-by: Eric Miao <eric.miao@marvell.com>
2009-03-09[ARM] pxa: access GPIO registers by chip so to make it further genericEric Miao
Let's handle GPIOs by banks, each bank covers up to 32 GPIOs with one set of registers, and each set of registers start from different offsets. GPLR GPDR GPSR GPCR GRER GFER GEDR BANK 0 - 0x0000 0x000C 0x0018 0x0024 0x0030 0x003C 0x0048 BANK 1 - 0x0004 0x0010 0x001C 0x0028 0x0034 0x0040 0x004C BANK 2 - 0x0008 0x0014 0x0020 0x002C 0x0038 0x0044 0x0050 BANK 3 - 0x0100 0x010C 0x0118 0x0124 0x0130 0x013C 0x0148 BANK 4 - 0x0104 0x0110 0x011C 0x0128 0x0134 0x0140 0x014C BANK 5 - 0x0108 0x0114 0x0120 0x012C 0x0138 0x0144 0x0150 NOTE: BANK 3 is only available on PXA27x and later processors. BANK 4 and 5 are only available on PXA935 1. introduce GPIO_BANK(n) for the offset base of each bank 2. 'struct pxa_gpio_chip' is expanded to include IRQ edge and mask setings, and saved register values as well, and is dynamically allocated due to possible bank number ranging from 3 to 6 3. all accesses to GPIO registers are made through 'regbase' within 'pxa_gpio_chip', and register offset 4. introduce several inline functions to simplify the code a bit 5. change IRQ demux handler to base on gpio chips Signed-off-by: Mike Rapoport <mike@compulab.co.il> Signed-off-by: Eric Miao <eric.miao@marvell.com>
2009-03-09[ARM] pxa: move declaration of 'pxa_last_gpio' into <mach/gpio.h>Eric Miao
Signed-off-by: Eric Miao <eric.miao@marvell.com>
2009-03-09[ARM] pxa: move GPIO register definitions into <mach/gpio.h>Eric Miao
This makes gpio.c fully independent of pxa-regs.h (except for the virtual address of the registers). Signed-off-by: Mike Rapoport <mike@compulab.co.il> Signed-off-by: Eric Miao <eric.miao@marvell.com>
2009-03-09[ARM] pxa: move pxa_gpio_mode() outside of generic gpio.cEric Miao
Looks like we have to live with pxa_gpio_mode() for a while, giving its presence is actually making gpio.c not generic enough, let's move it temporarily outside before it can be fully purged. Signed-off-by: Eric Miao <eric.miao@marvell.com>
2009-03-09[ARM] pxa: move IRQ handling of GPIO 0 and 1 outside of gpio.cEric Miao
This is part of the work making gpio.c generic enough, the changes include: 1. move IRQ handling of GPIO 0 and 1 outside (and back into irq.c) 2. pxa_init_gpio() accepts a range for muxed GPIO IRQs, and an IRQ number for the muxed GPIOs 3. __gpio_is_occupied() and __gpio_is_inverted() are made inline, and are moved into <mach/gpio.h> instead of generic gpio.c Signed-off-by: Eric Miao <eric.miao@marvell.com>
2009-03-09[ARM] pxa: move DMA registers definitions into <mach/dma.h>Eric Miao
1. Driver code where pxa_request_dma() is called will most likely reference DMA registers as well, and it is really unnecessary to include pxa-regs.h just for this. Move the definitions into <mach/dma.h> and make relevant drivers include it instead of <mach/pxa-regs.h>. 2. Introduce DMAC_REGS_VIRT as the virtual address base for these DMA registers. This allows later processors to re-use the same IP while registers may start at different I/O address. Signed-off-by: Eric Miao <eric.miao@marvell.com>
2009-03-09[ARM] pxa: allow DMA controller IRQ being specifiedEric Miao
Signed-off-by: Eric Miao <eric.miao@marvell.com>
2009-03-09[ARM] pxa: introduce pxa{25x,27x,300,320,930}.h for board usageEric Miao
Considering the header mess ATM, it is not always possible to include the correct header files within board code. Let's keep this simple: <mach/pxa25x.h> - for pxa25x based platforms <mach/pxa27x.h> - for pxa27x based platforms <mach/pxa300.h> - for pxa300 based platforms <mach/pxa320.h> - for pxa320 based platforms <mach/pxa930.h> - for pxa930 based platforms NOTE: 1. one header one board file, they are not compatible (i.e. they have conflicting definitions which won't compile if included together). 2. Unless strictly necessary, the following header files are considered to be SoC files use _only_, and is not recommended to be included in board code: <mach/hardware.h> <mach/pxa-regs.h> <mach/pxa2xx-regs.h> <mach/pxa3xx-regs.h> <mach/mfp.h> <mach/mfp-pxa2xx.h> <mach/mfp-pxa25x.h> <mach/mfp-pxa27x.h> <mach/mfp-pxa3xx.h> <mach/mfp-pxa300.h> <mach/mfp-pxa320.h> <mach/mfp-pxa930.h> Signed-off-by: Eric Miao <eric.miao@marvell.com>
2009-03-09[ARM] pxa/magician: remove unused forward declaration of pasic3Philipp Zabel
Signed-off-by: Philipp Zabel <philipp.zabel@gmail.com> Signed-off-by: Eric Miao <eric.miao@marvell.com>
2009-03-09[ARM] pxa/magician: default to backlight trigger for keypad illuminationPhilipp Zabel
Default to the same behaviour as the shipped WinCE system. Signed-off-by: Philipp Zabel <philipp.zabel@gmail.com> Signed-off-by: Eric Miao <eric.miao@marvell.com>
2009-03-09[ARM] pxa/magician: register pda_power IRQs as rising/falling edgePhilipp Zabel
so they can be shared with gpio_vbus. Signed-off-by: Philipp Zabel <philipp.zabel@gmail.com> Signed-off-by: Eric Miao <eric.miao@marvell.com>
2009-03-09[ARM] pxa/magician: select PXA_SSP for touchscreen and soundPhilipp Zabel
Signed-off-by: Philipp Zabel <philipp.zabel@gmail.com> Signed-off-by: Eric Miao <eric.miao@marvell.com>
2009-03-09[ARM] pxa/magician: fix htc-egpio resource sizePhilipp Zabel
Fixes an off-by-one error. Signed-off-by: Philipp Zabel <philipp.zabel@gmail.com> Signed-off-by: Eric Miao <eric.miao@marvell.com>
2009-03-09Merge branch 'devel' of ssh://master.kernel.org/home/rmk/linux-2.6-arm into ↵Eric Miao
devel
2009-03-09Merge branch 'fix' of ↵Eric Miao
git://git.kernel.org/pub/scm/linux/kernel/git/ycmiao/pxa-linux-2.6 into devel
2009-03-03[ARM] 5414/2: ep93xx m2p dma coreRyan Mallon
Add m2p dma support to the ep93xx Signed-off-by: Ryan Mallon <ryan@bluewatersys.com> Acked-by: Lennert Buytenhek <buytenh@wantstofly.org> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2009-02-27[ARM] 5413/1: Add ep93xx dma m2p clocksRyan Mallon
Add the clocks for ep93xx m2p dma engine. Signed-off-by: Ryan Mallon <ryan@bluewatersys.com> Acked-by: Lennert Buytenhek <buytenh@wantstofly.org> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2009-02-27[ARM] 5412/1: XSCALE: add ice dcc supportJean-Christop PLAGNIOL-VILLARD
SCALE: add ice dcc support Tested on the ixp425 with the ice PEEDI Ack-by: Eric Miao <eric.miao@marvell.com> Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2009-02-21Merge branch 'dma' into develRussell King
Conflicts: arch/arm/plat-mxc/dma-mx1-mx2.c
2009-02-21[ARM] dma: RiscPC: don't modify DMA SG entriesRussell King
We should not be modifying the scatterlist passed to us from the driver code; doing so breaks assumptions made by the DMA API code, and could cause problems if the driver retries a transfer using an old scatterlist. Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2009-02-21[ARM] dma: move IOMD and floppy DMA structures to RiscPC DMA codeRussell King
There's no point these being in a generic include file when they're only used in arch/arm/mach-rpc/dma.c. Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2009-02-21[ARM] 5399/1: [AT91] Configure MCLK and SSC for AT91SAMG20-EKMark Brown
The AT91SAM20-EK has a WM8731 attached to it with MCLK supplied from PCLK0 and the digital audio interface supplied by SSC0. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Andrew Victor <linux@maxim.org.za> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2009-02-21[ARM] 5408/1: SA1100: update defconfigs after h3800 removalDmitry Artamonow
Signed-off-by: Dmitry Artamonow <mad_soft@inbox.ru> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2009-02-21[ARM] 5407/1: SA1100: drop broken for ages iPAQ h3800 supportDmitry Artamonow
Code has never been in buildable state since initial merge. Signed-off-by: Dmitry Artamonow <mad_soft@inbox.ru> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2009-02-21[ARM] 5406/1: ep93xx: remove unneeded header in ohci-ep93xx.cHartley Sweeten
Remove the unneeded #include <mach/hardware.h> Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2009-02-19[ARM] 5397/1: RealView: Add support for the ISP1761 USB chipCatalin Marinas
This patch adds the platform_device and resource structures for the USB ISP1761 chip, usable with the in-kernel isp1760 driver. Signed-off-by: Catalin Marinas <catalin.marinas@arm.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2009-02-19[ARM] 5396/1: RealView: Use PATA_PLATFORM to access the CompactFlashCatalin Marinas
This driver adds the platform_device definitions to allow the use of CompactFlash on the RealView PB11MPCore and PB-A8 platforms. Note that the CompactFlash controller is expected to be initialised by the Boot Monitor and support the True IDE mode. Signed-off-by: Catalin Marinas <catalin.marinas@arm.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2009-02-19[ARM] 5395/1: RealView: Add support for the DS1338 RTC chipCatalin Marinas
This chip is on the I2C bus on the RealView and Versatile boards. The patch adds the i2c_board_info definition for this device and registers it with the I2C subsystem. Signed-off-by: Catalin Marinas <catalin.marinas@arm.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2009-02-19[ARM] 5394/1: Add static bus numbering support to i2c-versatileCatalin Marinas
If dev->id is not -1, the platform code may use static bus numbering rather than dynamic. The patch also changes the i2c_versatile_init to a subsys_initcall rather than module_init to make sure it is initialised before the I2C devices initialisation. Signed-off-by: Catalin Marinas <catalin.marinas@arm.com> Acked-by: Jean Delvare <khali@linux-fr.org> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2009-02-19[ARM] 5363/1: Shark cleanup and new defconfigAlexander Schulz
This includes a new defconfig for the Shark and some changes to the mach-shark directory to avoid namespace pollution and to switch the rtc to the newer driver. Signed-off-by: Alexander Schulz <alex@shark-linux.de> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2009-02-19[ARM] 5377/1: S3C2410-Framebuffer: Fix resume path in S3C2410 framebuffer ↵Daniel Silverstone
driver. Ensure that the LCD engine is correctly re-initialised and the correct parameters passed ot s3c2410fb_init_registers. Signed-off-by: Simtec Linux Team <linux@simtec.co.uk> Signed-off-by: Ben Dooks <ben@simtec.co.uk> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2009-02-19[ARM] 5376/1: S3C24XX: Fix sparse errors in platform uncompress.hDaniel Silverstone
Ensure __iomem attribute is __force 'd off in the minimal __raw_writel() implementation. Signed-off-by: Simtec Linux Team <linux@simtec.co.uk> Signed-off-by: Ben Dooks <ben@simtec.co.uk> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2009-02-19[ARM] 5386/2: unwind: Add Makefile and Kconfig entries for ARM stack unwindingCatalin Marinas
This patch also makes the frame pointer default to y only if !ARM_UNWIND. LOCKDEP no longer selects FRAME_POINTER if ARM_UNWIND is enabled. Signed-off-by: Catalin Marinas <catalin.marinas@arm.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2009-02-19[ARM] 5385/2: unwind: Add unwinding information to exception entry pointsCatalin Marinas
This is needed to allow or stop the unwinding at certain points in the kernel like exception entries. Signed-off-by: Catalin Marinas <catalin.marinas@arm.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2009-02-19[ARM] 5384/1: unwind: Add stack unwinding support for loadable modulesCatalin Marinas
This patch adds ELF section parsing for the unwinding tables in loadable modules together with the PREL31 relocation symbol resolving. Signed-off-by: Catalin Marinas <catalin.marinas@arm.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2009-02-19[ARM] 5383/2: unwind: Add core support for ARM stack unwindingCatalin Marinas
This patch adds the main functionality for parsing the stack unwinding information generated by the ARM EABI toolchains. The unwinding information consists of an index with a pair of words per function and a table with unwinding instructions. For more information, see "Exception Handling ABI for the ARM Architecture" at: http://infocenter.arm.com/help/topic/com.arm.doc.subset.swdev.abi/index.html Signed-off-by: Catalin Marinas <catalin.marinas@arm.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2009-02-12[ARM] 5382/1: unwind: Reorganise the stacktrace supportCatalin Marinas
This patch changes the walk_stacktrace and its callers for easier integration of stack unwinding. The arch/arm/kernel/stacktrace.h file is also moved to arch/arm/include/asm/stacktrace.h. Signed-off-by: Catalin Marinas <catalin.marinas@arm.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2009-02-12[ARM] 5381/1: unwind: Reorganise the traps.c codeCatalin Marinas
This patch moves code around in the arch/arm/kernel/traps.c file for easier integration of the stack unwinding support. Signed-off-by: Catalin Marinas <catalin.marinas@arm.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2009-02-12[ARM] 5393/1: Add W90P910 EVB NOR flash driverwanzongshun
Add W90P910 Evaluate Board NOR flash driver support, The EV Board default support W19B320ABT7H of Winbond inc. Signed-off-by: Wan ZongShun <mcuos.com@gmail.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2009-02-12[ARM] 5392/1: Delete redundant macros for w90p910wanzongshun
Delete the macros W90X900_RES and W90X900_DEVICE I thought it will be better to define the structures for each device directly. Signed-off-by: Wan ZongShun <mcuos.com@gmail.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2009-02-12[ARM] 5389/1: Make sure the pmd entries are visible by the secondary CPUCatalin Marinas
The __cpu_up() function in arch/arm/kernel/smp.c sets the pmd entries without flushing or cleaning them. Signed-off-by: Catalin Marinas <catalin.marinas@arm.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>