aboutsummaryrefslogtreecommitdiff
path: root/arch/arm
AgeCommit message (Collapse)Author
2008-12-02[ARM] pxa: move power I2C device definitions into devices.cEric Miao
Let's put these devices into a central place even if they are now processor specific, as they might be re-used in later processors. Signed-off-by: Eric Miao <eric.miao@marvell.com>
2008-12-02[ARM] pxa: remove unnecessary #include of pxa2xx-gpio.h in clock.cEric Miao
Signed-off-by: Eric Miao <eric.miao@marvell.com>
2008-12-02[ARM] pxa: include <mach/hardware.h> in pxa-regs.hEric Miao
for the reference of __REG() within <mach/hardware.h> Signed-off-by: Eric Miao <eric.miao@marvell.com>
2008-12-02[ARM] pxa: further cleanup of pxa-regs.hEric Miao
Signed-off-by: Eric Miao <eric.miao@marvell.com>
2008-12-02[ARM] pxa: move GPIOx_BASE and GPIO register offsets to gpio.cEric Miao
Signed-off-by: Eric Miao <eric.miao@marvell.com>
2008-12-02[ARM] pxa: move AC97 register definitions into dedicated regs-ac97.hEric Miao
The optimal change would be to move the AC97 register definitions into the AC97 driver, unfortunately, the registers are shared between several files. Move them into a dedicated regs-ac97.h first. Signed-off-by: Eric Miao <eric.miao@marvell.com>
2008-12-02[ARM] pxa: move UART register definitions into dedicated regs-uart.hEric Miao
Signed-off-by: Eric Miao <eric.miao@marvell.com>
2008-12-02[ARM] pxa: move pxa2xx specific PWRMODE definitions into pxa2xx-regs.hEric Miao
Signed-off-by: Eric Miao <eric.miao@marvell.com>
2008-12-02[ARM] pxa: remove the now unused IMPMCR/IMPMSR register definitionsEric Miao
There two are internal registers that are used to control the power management of the Internal Memory (i.e. Internal SRAM). They are referenced nowhere and removed here to simplify pxa-regs.h a bit. Signed-off-by: Eric Miao <eric.miao@marvell.com>
2008-12-02[ARM] pxa: remove unused PWM register definitions, use generic PWM APIEric Miao
We now have generic PWM API for PXA, the PWM registers definitions are now used nowhere, and it is not encouraged to manipulate them directly by driver code. Signed-off-by: Eric Miao <eric.miao@marvell.com>
2008-12-02[ARM] pxa: move FICP register definitions into pxaficp_ir.cEric Miao
Signed-off-by: Eric Miao <eric.miao@marvell.com>
2008-12-02[ARM] pxa: move camera (QCI) registers definition out of pxa-regs.hEric Miao
Signed-off-by: Eric Miao <eric.miao@marvell.com> Acked-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
2008-12-02[ARM] pxa: removed unused declarations of pxa_gpio_* in hardware.hEric Miao
pxa_gpio_{get,set}_value() are not used anymore, remove them from hardware.h. Declaration of pxa_gpio_mode() is still being referenced and thus moved into pxa2xx-gpio.h Signed-off-by: Eric Miao <eric.miao@marvell.com>
2008-12-02[ARM] pxa: use <linux/gpio.h> instead of unnecessary <mach/gpio.h>Eric Miao
Signed-off-by: Eric Miao <eric.miao@marvell.com>
2008-12-02[ARM] pxa: add support for additional GPIOs on PXA26xEric Miao
Original patch from Marek Vasut, the problems with PXA26x are: 1. there are additional 4 GPIOs 86,87,88,89 have their direction bits inverted in GPDR2, as well as their alternate function bits being '1' for their GPIO functionality in GAFRx 2. there is no easy way to decide if the processor is a pxa26x or a pxa250/pxa255 at run-time, so the assumption here is the pxa26x will be treated as one of the pxa25x variants, and board code should have a better knowledge of the processor it is featured Introduce pxa26x_init_irq() for the second purpose, and treat the additional GPIOs > 85 on PXA25x specially. Kconfig option CONFIG_CPU_PXA26x is introduced to optimize the code a bit when PXA26x support isn't needed. Board config options have to select this to enable the support for PXA26x. __gpio_is_inverted() will be optimized way when CONFIG_CPU_PXA26x isn't selected. Signed-off-by: Marek Vasut <marek.vasut@gmail.com> Signed-off-by: Eric Miao <eric.miao@marvell.com>
2008-12-02Revert "[ARM] pxa: introduce cpu_is_pxa26x()"Eric Miao
This reverts commit da1a3dc0ebb4f9209a1939eaa6b18901e0cd7bc0. The originally proposed way in the above commit is incorrect. And there is no easy way to distinguish between pxa25x and pxa26x at run-time. Signed-off-by: Eric Miao <eric.miao@marvell.com>
2008-12-02[ARM] pxa: use 'pxa_last_gpio' instead of 'gpio_nr' in mfp-pxa2xx.cEric Miao
The 'gpio_nr' can really be inferred by 'pxa_last_gpio', and since we already have that variable, remove the unnecessary 'gpio_nr' now. Also, fix the incorrect GPIO number passed in pxa27x_init_irq(). Note: pxa_last_gpio should be initialized earlier, and this is true since it's been assigned in machine_desc->init_irq(). Signed-off-by: Eric Miao <eric.miao@marvell.com>
2008-12-02[ARM] pxa: add muxed gpio wakeup sources on pxa2xx architecturesRobert Jarzmik
PXA SoC have several GPIOs muxed on only one wakeup source. Add support for these wakeup sources which were missing in mfp core support. Signed-off-by: Robert Jarzmik <robert.jarzmik@free.fr> Signed-off-by: Eric Miao <eric.miao@marvell.com>
2008-11-17[ARM] 5330/1: mach-pxa: Fixup reset for systems using reboot=cold or other ↵Jaya Kumar
strings This patch makes do_hw_reset the default reboot behavior when nothing else matches. This restores reboot functionality on gumstix basix devices where reboot=cold is the default boot argument. Signed-off-by: Jaya Kumar <jayakumar.lkml@gmail.com> Acked-by: Eric Miao <eric.miao@marvell.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2008-11-17Merge branch 'for-rmk' of ↵Russell King
git://git.kernel.org/pub/scm/linux/kernel/git/ycmiao/pxa-linux-2.6
2008-11-16[ARM] pxa: fix incorrect PCMCIA PSKTSEL pin configuration for spitzEric Miao
The original incorrect configuration caused GPIO79_nCS_3 being overriden, thus resulted in the NAND flash not being detected. The real PSKTSEL pin is on GPIO104 instead of GPIO79. Signed-off-by: Eric Miao <eric.miao@marvell.com> Cc: Richard Purdie <rpurdie@rpsys.net>
2008-11-16[ARM] pxa: fix I2C controller device being registered twice on AkitaEric Miao
Signed-off-by: Eric Miao <eric.miao@marvell.com> Cc: Richard Purdie <rpurdie@rpsys.net>
2008-11-13Merge master.kernel.org:/home/rmk/linux-2.6-armLinus Torvalds
* master.kernel.org:/home/rmk/linux-2.6-arm: [ARM] cdb89712: avoid namespace clashes with SRAM_ and BOOTROM_ constants [ARM] cdb89712,clps7500,h720x: avoid namespace clash for FLASH_* constants [ARM] integrator,realview,versatile: remove FLASH_* and EPROM_* constants [ARM] dma-mapping: fix compiler warning [ARM] iop: iop3xx needs registers mapped uncached+unbuffered [ARM] versatile: correct MMC clock rate [ARM] realview: correct MMC clock rate [ARM] 5329/1: Feroceon: fix feroceon_l2_inv_range
2008-11-13[ARM] cdb89712: avoid namespace clashes with SRAM_ and BOOTROM_ constantsRussell King
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2008-11-13[ARM] cdb89712,clps7500,h720x: avoid namespace clash for FLASH_* constantsRussell King
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2008-11-13[ARM] integrator,realview,versatile: remove FLASH_* and EPROM_* constantsRussell King
FLASH_* and EPROM_* constants are unused, and clash with drivers: drivers/atm/ambassador.h:257:1: warning: "FLASH_BASE" redefined drivers/atm/ambassador.h:258:1: warning: "FLASH_SIZE" redefined drivers/atm/iphase.h:332:1: warning: "EPROM_SIZE" redefined so remove them. Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2008-11-13[ARM] dma-mapping: fix compiler warningRussell King
arch/arm/mm/dma-mapping.c: In function `dma_sync_sg_for_cpu': arch/arm/mm/dma-mapping.c:588: warning: statement with no effect Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2008-11-11iop-adma: use iop_paranoia() for debug BUG_ONsDan Williams
Now that the critical read back to flush the next descriptor address is fixed we can downgrade some BUG_ONs that need only be enabled when testing changes to the driver. Signed-off-by: Dan Williams <dan.j.williams@intel.com>
2008-11-11pxafb: introduce LCD_TYPE_MASK and use it.Eric Miao
Signed-off-by: Daniel Mack <daniel@caiaq.de> Signed-off-by: Eric Miao <eric.miao@marvell.com>
2008-11-09[ARM] iop: iop3xx needs registers mapped uncached+unbufferedRussell King
Mikael Pettersson reported: The 2.6.28-rc kernels fail to detect PCI device 0000:00:01.0 (the first ethernet port) on my Thecus n2100 XScale box. There is however still a strange "ghost" device that gets partially detected in 2.6.28-rc2 vanilla. The IOP321 manual says: The user designates the memory region containing the OCCDR as non-cacheable and non-bufferable from the IntelR XScaleTM core. This guarantees that all load/stores to the OCCDR are only of DWORD quantities. Ensure that the OCCDR is so mapped. Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2008-11-08[ARM] versatile: correct MMC clock rateRussell King
The MMC clock source is actually 24MHz, not 33MHz. Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2008-11-08[ARM] realview: correct MMC clock rateRussell King
The MMC clock source is actually 24MHz, not 33MHz. Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2008-11-08[ARM] 5329/1: Feroceon: fix feroceon_l2_inv_rangeNicolas Pitre
Same fix as commit c7cf72dcadb: when 'start' and 'end' are less than a cacheline apart and 'start' is unaligned we are done after cleaning and invalidating the first cacheline. Cc: <stable@kernel.org> Signed-off-by: Nicolas Pitre <nico@marvell.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2008-11-06Merge branch 'omap-fixes' of ↵Russell King
git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap-2.6
2008-11-06Merge branch 'fixes' of ↵Russell King
git://git.kernel.org/pub/scm/linux/kernel/git/djbw/xscaleiop
2008-11-06[ARM] xsc3: fix xsc3_l2_inv_rangeDan Williams
When 'start' and 'end' are less than a cacheline apart and 'start' is unaligned we are done after cleaning and invalidating the first cacheline. So check for (start < end) which will not walk off into invalid address ranges when (start > end). This issue was caught by drivers/dma/dmatest. 2.6.27 is susceptible. Cc: <stable@kernel.org> Cc: Haavard Skinnemoen <haavard.skinnemoen@atmel.com> Cc: Lothar WaÃ<9f>mann <LW@KARO-electronics.de> Cc: Lennert Buytenhek <buytenh@marvell.com> Cc: Eric Miao <eric.miao@marvell.com> Signed-off-by: Dan Williams <dan.j.williams@intel.com>
2008-11-06[ARM] mm: fix page table initializationRussell King
As a result of the ptebits changes, we ended up marking device mappings as normal memory on ARMv7 CPUs, resulting in undesirable behaviour with serial ports and the like. While reviewing the section mapping table entries, other errors in the memory type settings for devices were detected and confirmed to prevent Xscale3 platforms booting. Tested on: OMAP34xx (ARMv7), OMAP24xx (ARMv6), OMAP16xx (ARM926T, ARMv5), PXA311 (Xscale3), PXA272 (Xscale), PXA255 (Xscale), IXP42x (Xscale), S3C2410 (ARM920T, ARMv4T), ARM720T (ARMv4T) StrongARM-110 (ARMv4) Acked-by: Tony Lindgren <tony@atomide.com> Tested-by: Robert Jarzmik <robert.jarzmik@free.fr> Tested-by: Mike Rapoport <mike@compulab.co.il> Tested-by: Ben Dooks <ben-linux@fluff.org> Tested-by: Anders Grafström <grfstrm@users.sourceforge.net> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2008-11-06[ARM] fix naming of MODULE_START / MODULE_ENDRussell King
As of 73bdf0a60e607f4b8ecc5aec597105976565a84f, the kernel needs to know where modules are located in the virtual address space. On ARM, we located this region between MODULE_START and MODULE_END. Unfortunately, everyone else calls it MODULES_VADDR and MODULES_END. Update ARM to use the same naming, so is_vmalloc_or_module_addr() can work properly. Also update the comment on mm/vmalloc.c to reflect that ARM also places modules in a separate region from the vmalloc space. Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2008-11-04ARM: OMAP: Fix define for twl4030 irqsTony Lindgren
Otherwise twl4030 gpios won't work. Signed-off-by: Tony Lindgren <tony@atomide.com>
2008-11-04ARM: OMAP: Fix get_irqnr_and_base to clear spurious interrupt bitsTony Lindgren
On omap24xx, INTCPS_SIR_IRQ_OFFSET bits [6:0] contains the current active interrupt number. However, on 34xx INTCPS_SIR_IRQ_OFFSET bits [31:7] also contains the SPURIOUSIRQFLAG, which gets set if the interrupt sorting information is invalid. If the SPURIOUSIRQFLAG bits are not ignored, the interrupt code will occasionally produce a bunch of confusing errors: irq -33, desc: c02ddcc8, depth: 0, count: 0, unhandled: 0 ->handle_irq(): c006f23c, handle_bad_irq+0x0/0x22c ->chip(): 00000000, 0x0 ->action(): 00000000 Fix this by masking out only the ACTIVEIRQ bits. Also fix a confusing comment. Signed-off-by: Tony Lindgren <tony@atomide.com>
2008-11-04ARM: OMAP: Fix debugfs_create_*'s error checking method for arm/plat-omapZhaolei
debugfs_create_*() returns NULL if an error occurs, returns -ENODEV when debugfs is not enabled in the kernel. Comparing to PATCH v1, because clk_debugfs_init is included in "#if defined CONFIG_DEBUG_FS", we only need to check NULL return. Thanks Li Zefan <lizf@cn.fujitsu.com> debugfs_create_u8() and other function's return value's checking method are also fixed in this patch. Signed-off-by: Zhao Lei <zhaolei@cn.fujitsu.com> Signed-off-by: Tony Lindgren <tony@atomide.com>
2008-11-04ARM: OMAP: Fix compiler warnings in gpmc.cSanjeev Premi
Fix these compiler warnings: gpmc.c: In function 'gpmc_init': gpmc.c:432: warning: 'return' with a value, in function returning void gpmc.c:439: warning: 'return' with a value, in function returning void Signed-off-by: Sanjeev Premi <premi@ti.com> Signed-off-by: Tony Lindgren <tony@atomide.com>
2008-11-04[ARM] fix VFP+softfloat binariesRussell King
2.6.28-rc tightened up the ELF architecture checks on ARM. For non-EABI it only allows VFP if the hardware supports it. However, the kernel fails to also inspect the soft-float flag, so it incorrectly rejects binaries using soft-VFP. The fix is simple: also check that EF_ARM_SOFT_FLOAT isn't set before rejecting VFP binaries on non-VFP hardware. Acked-by: Mikael Pettersson <mikpe@it.uu.se> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2008-10-30[ARM] 5326/1: AFEB9260: Fix for i2c_board_info structureSergey Lapin
i2c_board_info array was filled incorrectly. Due to circumstances, the way it is filled works. This patch fills array properly. Signed-off-by: Sergey Lapin <slapin@ossfans.org> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2008-10-30Merge branch 'for-rmk-rc' of ↵Russell King
git://pasiphae.extern.pengutronix.de/git/imx/linux-2.6
2008-10-30[ARM] mx31ads: Add missing includeSascha Hauer
mx31ads_defconfig compilation failed with arch/arm/mach-mx3/mx31ads.c: In function 'mxc_init_imx_uart': arch/arm/mach-mx3/mx31ads.c:102: error: 'mxc_uart_device0' undeclared (first use in this function) arch/arm/mach-mx3/mx31ads.c:102: error: (Each undeclared identifier is reported only once arch/arm/mach-mx3/mx31ads.c:102: error: for each function it appears in.) make[1]: *** [arch/arm/mach-mx3/mx31ads.o] Error 1 Add missing include Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2008-10-30[ARM] MXC: Fix mxc_gpio_get(), which must read PSR register instead DR.Darius Augulis
The Data register holds the value we have written to a gpio. To get the input value we must read the Pad Status Register MX3 (or Sample Status register in MX1/2 terms) Signed-off-by: Darius Augulis <augulis.darius@gmail.com> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2008-10-30[ARM] MX3: Use ioremap wrapper to map SoC devices nonsharedSascha Hauer
The internal devices of the MX3 Processor have to be mapped MT_DEVICE_NONSHARED devices, otherwise cache corruptions occur. Signed-off-by: Guennadi Liakhovetski <lg@denx.de> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2008-10-30[ARM] gpio_free might sleep, arm architectureUwe Kleine-König
According to the documentation gpio_free should only be called from task context only. To make this more explicit add a might sleep to all implementations. This patch changes the gpio_free implementations for the arm architecture. DaVinci is skipped on purpose to simplify the merge process for patches switching it over to use gpiolib as per request by David Brownell. Signed-off-by: Uwe Kleine-König <ukleinek@informatik.uni-freiburg.de> Cc: David Brownell <david-b@pacbell.net> Cc: Andrew Victor <linux@maxim.org.za> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2008-10-30[ARM] ep93xx: fix OHCI DMA maskMatthias Kaehlcke
Signed-off-by: Matthias Kaehlcke <matthias@kaehlcke.net> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>