openwrt/staging/blogic.git
15 years ago[ARM] dma: correct dma_supported() implementation
Russell King [Mon, 20 Oct 2008 10:18:40 +0000 (11:18 +0100)]
[ARM] dma: correct dma_supported() implementation

dma_supported() is supposed to indicate whether the system can support
the DMA mask it was passed, which depends on the maximal address which
can be returned for DMA allocations.  If the mask is smaller than that,
we are unable to guarantee that the driver can reliably obtain suitable
memory.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
15 years ago[ARM] netwinder: clean up GPIO naming
Russell King [Sat, 6 Dec 2008 08:25:16 +0000 (08:25 +0000)]
[ARM] netwinder: clean up GPIO naming

Netwinder was using gpio_xxx names which could clash with the GPIO
layer.  Add a 'nw_' prefix to ensure that these remain separate.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
15 years ago[ARM] 5338/1: Add Nuvoton W90P910 Platform support
wanzongshun [Wed, 3 Dec 2008 02:55:38 +0000 (03:55 +0100)]
[ARM] 5338/1: Add Nuvoton W90P910 Platform support

Add Nuvoton W90X900 ARM9 plat support to linux arm tree,
Now, this patch include only W90P910 EVB of W90P910 CPU,
Its driver is nothing.

Signed-off-by: Wan ZongShun <mcuos.com@gmail.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
15 years agoMerge branch 'for-rmk' of git://git.kernel.org/pub/scm/linux/kernel/git/ycmiao/pxa...
Russell King [Tue, 2 Dec 2008 22:07:40 +0000 (22:07 +0000)]
Merge branch 'for-rmk' of git://git./linux/kernel/git/ycmiao/pxa-linux-2.6 into devel

Conflicts:

arch/arm/mach-pxa/pxa25x.c

15 years ago[ARM] pxa: add basic support for HP iPAQ h5000
Anton Vorontsov [Thu, 23 Oct 2008 19:06:56 +0000 (21:06 +0200)]
[ARM] pxa: add basic support for HP iPAQ h5000

This patch adds HP iPAQ h5000's (h5400, h5500) basic definitions.

Kernel will able to boot, work via serial console, mount filesystems
placed on flashes and run USB gadgets (g_ether by default).

Other device drivers (frame buffer, LCD, touchscreen, backlight,
bluetooth, w1/battery, ...) are depend on SAMCOP and MediaQ
SoCs/MFDs, drivers to which will be submitted too, after massive
cleanups.

This machine will be used as "real user" for these new drivers.

This is an updated version of the patch, which contains fixes proposed on
linux-arm-kernel mailing list.

Signed-off-by: Anton Vorontsov <cbouatmailru@gmail.com>
Signed-off-by: Milan Plzik <milan.plzik@gmail.com>
Signed-off-by: Eric Miao <eric.miao@marvell.com>
15 years ago[ARM] pxa/poodle: add physmap mapping for ROM
Dmitry Baryshkov [Mon, 24 Nov 2008 21:57:30 +0000 (00:57 +0300)]
[ARM] pxa/poodle: add physmap mapping for ROM

Add mapping for system ROM using physmap-flash mapping.

Signed-off-by: Dmitry Baryshkov <dbaryshkov@gmail.com>
Signed-off-by: Eric Miao <eric.miao@marvell.com>
15 years ago[ARM] pxa/corgi: add physmap mapping for ROM
Dmitry Baryshkov [Mon, 24 Nov 2008 21:57:29 +0000 (00:57 +0300)]
[ARM] pxa/corgi: add physmap mapping for ROM

Add mapping for system ROM using physmap-flash mapping.

Signed-off-by: Dmitry Baryshkov <dbaryshkov@gmail.com>
Signed-off-by: Eric Miao <eric.miao@marvell.com>
15 years ago[ARM] pxa/spitz: add physmap mapping for ROM
Dmitry Baryshkov [Mon, 24 Nov 2008 21:57:28 +0000 (00:57 +0300)]
[ARM] pxa/spitz: add physmap mapping for ROM

Add mapping for system ROM using physmap-flash mapping.

Signed-off-by: Dmitry Baryshkov <dbaryshkov@gmail.com>
Signed-off-by: Eric Miao <eric.miao@marvell.com>
15 years ago[ARM] pxa/tosa: add physmap mapping for ROM
Dmitry Baryshkov [Mon, 24 Nov 2008 21:57:27 +0000 (00:57 +0300)]
[ARM] pxa/tosa: add physmap mapping for ROM

Add mapping for system ROM using physmap-flash mapping.

Signed-off-by: Dmitry Baryshkov <dbaryshkov@gmail.com>
Signed-off-by: Eric Miao <eric.miao@marvell.com>
15 years ago[ARM] pxa/tosa: fix building w/o TC6393XB driver
Dmitry Baryshkov [Wed, 26 Nov 2008 22:25:09 +0000 (01:25 +0300)]
[ARM] pxa/tosa: fix building w/o TC6393XB driver

Signed-off-by: Dmitry Baryshkov <dbaryshkov@gmail.com>
Signed-off-by: Eric Miao <eric.miao@marvell.com>
15 years ago[ARM] pxa/tosa: support tc6393xb/tmiofb.
Dmitry Baryshkov [Tue, 28 Oct 2008 15:40:37 +0000 (18:40 +0300)]
[ARM] pxa/tosa: support tc6393xb/tmiofb.

Add platform data necessary to support tmiofb on tosa.

Signed-off-by: Dmitry Baryshkov <dbaryshkov@gmail.com>
Signed-off-by: Eric Miao <eric.miao@marvell.com>
15 years ago[ARM] pxa/MioA701: improve power supply sources
Robert Jarzmik [Sat, 15 Nov 2008 15:09:59 +0000 (16:09 +0100)]
[ARM] pxa/MioA701: improve power supply sources

Take advantage of the newly created wm97xx battery driver
and remove useless code in mioa701 board code. Add also the
ac connection detect capability after the matching gpio was
discovered.

Signed-off-by: Robert Jarzmik <robert.jarzmik@free.fr>
Signed-off-by: Eric Miao <eric.miao@marvell.com>
15 years ago[ARM] pxa/MioA701: discovered new gpio definitions.
Robert Jarzmik [Tue, 18 Nov 2008 19:23:32 +0000 (20:23 +0100)]
[ARM] pxa/MioA701: discovered new gpio definitions.

The charger enable gpio is straight (1 means draw from USB
Vbus, 0 mean do not draw). The USB Vbus sensing is inverted
(1 means no Vbus voltage sensed, 0 means Vbus voltage
present).

Signed-off-by: Robert Jarzmik <robert.jarzmik@free.fr>
Signed-off-by: Eric Miao <eric.miao@marvell.com>
15 years ago[ARM] pxa/MioA701: change reset function to preserve RTC.
Robert Jarzmik [Sat, 15 Nov 2008 15:09:58 +0000 (16:09 +0100)]
[ARM] pxa/MioA701: change reset function to preserve RTC.

Change the halt and reboot method from gpio based to "jump
to ROM IPL beginning". This gives control back to IPL, which
without PowerOn key pressed, will put the device into deep
sleep until PowerOn is pressed for 1 second.

But this has the benefit of keeping the RTC registers across
reboots, which is good for OS change.

Signed-off-by: Robert Jarzmik <robert.jarzmik@free.fr>
Signed-off-by: Eric Miao <eric.miao@marvell.com>
15 years ago[ARM] pxa/MioA701: add camera support for Mio A701 board.
Robert Jarzmik [Sat, 15 Nov 2008 15:09:54 +0000 (16:09 +0100)]
[ARM] pxa/MioA701: add camera support for Mio A701 board.

Add GPIO configuration and platform specific declarations
to make Mitac Mio A701 camera chip work. The chip is a
Micron MT9M111 CMOS sensor, based on PXA QIF interface and
I2C bus for sensor control.

Signed-off-by: Robert Jarzmik <robert.jarzmik@free.fr>
Signed-off-by: Eric Miao <eric.miao@marvell.com>
15 years ago[ARM] pxa/MioA701: remove KConfig leds driver requirement
Robert Jarzmik [Fri, 28 Nov 2008 19:08:19 +0000 (20:08 +0100)]
[ARM] pxa/MioA701: remove KConfig leds driver requirement

Since mioa701 board has migrated to the mfp architecture,
low power gpio setup is now correctly handled even when gpio
led driver is not loaded, and leds and vibrator don't stay
activated in suspend mode (especially vibrator).

Remove the not needed anymore dependency.

Signed-off-by: Robert Jarzmik <robert.jarzmik@free.fr>
Signed-off-by: Eric Miao <eric.miao@marvell.com>
15 years ago[ARM] pxa: add resources for incoming rtc-pxa driver
Robert Jarzmik [Thu, 13 Nov 2008 22:50:56 +0000 (23:50 +0100)]
[ARM] pxa: add resources for incoming rtc-pxa driver

Add IO memory and IRQ ressources for pxa based SoC to be
able to use the new rtc-pxa driver.

Signed-off-by: Robert Jarzmik <robert.jarzmik@free.fr>
Signed-off-by: Eric Miao <eric.miao@marvell.com>
15 years ago[ARM] pxa: cpufreq-pxa2xx: sdram_rows detection support
Philipp Zabel [Sun, 29 Jun 2008 14:53:34 +0000 (16:53 +0200)]
[ARM] pxa: cpufreq-pxa2xx: sdram_rows detection support

This patch implements Eric Miao's idea to detect the correct value of
sdram_rows by inspecting the MDCNFG register settings.
It is only tested on two pxa27x devices with 64MB RAM (magician and
hx4700) so far.

Signed-off-by: Philipp Zabel <philipp.zabel@gmail.com>
Signed-off-by: Eric Miao <eric.miao@marvell.com>
15 years ago[ARM] pxa: cpufreq-pxa2xx: allow frequency table selection
Marc Zyngier [Tue, 4 Nov 2008 12:33:25 +0000 (13:33 +0100)]
[ARM] pxa: cpufreq-pxa2xx: allow frequency table selection

Following the removal of the "->policy" usage for PXA255 in patch
459fc208abd1b365fa013c17d433dfb5b4bc1e3a (cpufreq: remove
policy->governor setting in drivers initialization), this patch
introduces an option (called "pxa255_turbo_table") to select either
the "run" or "turbo" frequency table.

It also cures the runtime warning that was printed each time the
frequency was changed.

Got rid of all references to CPUFREQ_POLICY_* for pxa255, and sticked
with the run/turbo thing.

Tested on an Arcom/Eurotech Viper.

Signed-off-by: Marc Zyngier <maz@misterjones.org>
Acked-by: Dominik Brodowski <linux@dominikbrodowski.net>
Signed-off-by: Eric Miao <eric.miao@marvell.com>
15 years ago[ARM] pxafb: make {backlight,lcd}_power() members of struct pxafb_info
Eric Miao [Tue, 11 Nov 2008 13:50:39 +0000 (21:50 +0800)]
[ARM] pxafb: make {backlight,lcd}_power() members of struct pxafb_info

instead of holding them as static pointers.

Signed-off-by: Daniel Mack <daniel@caiaq.de>
Signed-off-by: Eric Miao <eric.miao@marvell.com>
15 years ago[ARM] locomo: export locomo_frontlight_set()
Eric Miao [Mon, 1 Dec 2008 03:41:19 +0000 (11:41 +0800)]
[ARM] locomo: export locomo_frontlight_set()

This symbol is required by locomo backlight driver, exporting this
allows the driver to be built as a module.

Signed-off-by: Eric Miao <eric.miao@marvell.com>
15 years ago[ARM] pxa: add missing GPIOs definitions
Eric Miao [Sat, 22 Nov 2008 13:40:50 +0000 (21:40 +0800)]
[ARM] pxa: add missing GPIOs definitions

GPIO3/GPIO4 are a bit special on pxa27x, since it depends on PCFR/PI2C_EN
bit, add their definitions here with comments.

Signed-off-by: Eric Miao <eric.miao@marvell.com>
Acked-by: Stefan Schmidt <stefan@datenfreihafen.org>
15 years ago[ARM] pxa: add base PXA935 support due to CPUID change
Eric Miao [Sat, 29 Nov 2008 13:42:39 +0000 (21:42 +0800)]
[ARM] pxa: add base PXA935 support due to CPUID change

PXA935 has changed its implementor ID from Intel to Marvell, this
patch modifies arch/arm/boot/compressed/head.S and proc-xsc3.S to
support a smooth bootup.

Signed-off-by: Eric Miao <eric.miao@marvell.com>
15 years ago[ARM] pxa: introduced cpu_is_pxa935() and cpu_is_pxa9xx()
Eric Miao [Wed, 26 Nov 2008 07:39:39 +0000 (15:39 +0800)]
[ARM] pxa: introduced cpu_is_pxa935() and cpu_is_pxa9xx()

Signed-off-by: Eric Miao <eric.miao@marvell.com>
15 years ago[ARM] pxa: move I2C pin configurations out into board specific files
Eric Miao [Fri, 28 Nov 2008 08:00:24 +0000 (16:00 +0800)]
[ARM] pxa: move I2C pin configurations out into board specific files

Signed-off-by: Eric Miao <eric.miao@marvell.com>
15 years ago[ARM] pxa: register Power I2C device only when necessary
Eric Miao [Fri, 28 Nov 2008 07:24:12 +0000 (15:24 +0800)]
[ARM] pxa: register Power I2C device only when necessary

Signed-off-by: Eric Miao <eric.miao@marvell.com>
15 years ago[ARM] pxa: move power I2C device definitions into devices.c
Eric Miao [Fri, 28 Nov 2008 07:01:55 +0000 (15:01 +0800)]
[ARM] pxa: move power I2C device definitions into devices.c

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>
15 years ago[ARM] pxa: remove unnecessary #include of pxa2xx-gpio.h in clock.c
Eric Miao [Sun, 30 Nov 2008 13:10:05 +0000 (21:10 +0800)]
[ARM] pxa: remove unnecessary #include of pxa2xx-gpio.h in clock.c

Signed-off-by: Eric Miao <eric.miao@marvell.com>
15 years ago[ARM] pxa: include <mach/hardware.h> in pxa-regs.h
Eric Miao [Sun, 30 Nov 2008 15:13:52 +0000 (23:13 +0800)]
[ARM] pxa: include <mach/hardware.h> in pxa-regs.h

for the reference of __REG() within <mach/hardware.h>

Signed-off-by: Eric Miao <eric.miao@marvell.com>
15 years ago[ARM] pxa: further cleanup of pxa-regs.h
Eric Miao [Fri, 28 Nov 2008 06:57:33 +0000 (14:57 +0800)]
[ARM] pxa: further cleanup of pxa-regs.h

Signed-off-by: Eric Miao <eric.miao@marvell.com>
15 years ago[ARM] pxa: move GPIOx_BASE and GPIO register offsets to gpio.c
Eric Miao [Fri, 28 Nov 2008 06:54:39 +0000 (14:54 +0800)]
[ARM] pxa: move GPIOx_BASE and GPIO register offsets to gpio.c

Signed-off-by: Eric Miao <eric.miao@marvell.com>
15 years ago[ARM] pxa: move AC97 register definitions into dedicated regs-ac97.h
Eric Miao [Fri, 28 Nov 2008 06:19:33 +0000 (14:19 +0800)]
[ARM] pxa: move AC97 register definitions into dedicated regs-ac97.h

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>
15 years ago[ARM] pxa: move UART register definitions into dedicated regs-uart.h
Eric Miao [Fri, 28 Nov 2008 06:08:53 +0000 (14:08 +0800)]
[ARM] pxa: move UART register definitions into dedicated regs-uart.h

Signed-off-by: Eric Miao <eric.miao@marvell.com>
15 years ago[ARM] pxa: move pxa2xx specific PWRMODE definitions into pxa2xx-regs.h
Eric Miao [Fri, 28 Nov 2008 05:49:22 +0000 (13:49 +0800)]
[ARM] pxa: move pxa2xx specific PWRMODE definitions into pxa2xx-regs.h

Signed-off-by: Eric Miao <eric.miao@marvell.com>
15 years ago[ARM] pxa: remove the now unused IMPMCR/IMPMSR register definitions
Eric Miao [Fri, 28 Nov 2008 05:38:03 +0000 (13:38 +0800)]
[ARM] pxa: remove the now unused IMPMCR/IMPMSR register definitions

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>
15 years ago[ARM] pxa: remove unused PWM register definitions, use generic PWM API
Eric Miao [Thu, 27 Nov 2008 09:08:42 +0000 (17:08 +0800)]
[ARM] pxa: remove unused PWM register definitions, use generic PWM API

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>
15 years ago[ARM] pxa: move FICP register definitions into pxaficp_ir.c
Eric Miao [Fri, 28 Nov 2008 03:13:47 +0000 (11:13 +0800)]
[ARM] pxa: move FICP register definitions into pxaficp_ir.c

Signed-off-by: Eric Miao <eric.miao@marvell.com>
15 years ago[ARM] pxa: move camera (QCI) registers definition out of pxa-regs.h
Eric Miao [Fri, 28 Nov 2008 01:16:52 +0000 (09:16 +0800)]
[ARM] pxa: move camera (QCI) registers definition out of pxa-regs.h

Signed-off-by: Eric Miao <eric.miao@marvell.com>
Acked-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
15 years ago[ARM] pxa: removed unused declarations of pxa_gpio_* in hardware.h
Eric Miao [Sun, 30 Nov 2008 12:58:42 +0000 (20:58 +0800)]
[ARM] pxa: removed unused declarations of pxa_gpio_* in hardware.h

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>
15 years ago[ARM] pxa: use <linux/gpio.h> instead of unnecessary <mach/gpio.h>
Eric Miao [Tue, 25 Nov 2008 03:03:03 +0000 (11:03 +0800)]
[ARM] pxa: use <linux/gpio.h> instead of unnecessary <mach/gpio.h>

Signed-off-by: Eric Miao <eric.miao@marvell.com>
15 years ago[ARM] pxa: add support for additional GPIOs on PXA26x
Eric Miao [Wed, 26 Nov 2008 10:12:04 +0000 (18:12 +0800)]
[ARM] pxa: add support for additional GPIOs on PXA26x

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>
15 years agoRevert "[ARM] pxa: introduce cpu_is_pxa26x()"
Eric Miao [Wed, 26 Nov 2008 10:25:52 +0000 (18:25 +0800)]
Revert "[ARM] pxa: introduce cpu_is_pxa26x()"

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>
15 years ago[ARM] pxa: use 'pxa_last_gpio' instead of 'gpio_nr' in mfp-pxa2xx.c
Eric Miao [Wed, 26 Nov 2008 09:06:42 +0000 (17:06 +0800)]
[ARM] pxa: use 'pxa_last_gpio' instead of 'gpio_nr' in mfp-pxa2xx.c

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>
15 years ago[ARM] pxa: add muxed gpio wakeup sources on pxa2xx architectures
Robert Jarzmik [Thu, 13 Nov 2008 22:30:00 +0000 (23:30 +0100)]
[ARM] pxa: add muxed gpio wakeup sources on pxa2xx architectures

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>
15 years ago[ARM] pxa: explicit #include <mach/dma.h> in various drivers
Eric Miao [Mon, 1 Dec 2008 03:43:08 +0000 (11:43 +0800)]
[ARM] pxa: explicit #include <mach/dma.h> in various drivers

Where 'pxa_dma_desc' and 'pxa_{request,free}_dma' are referenced.

Signed-off-by: Eric Miao <eric.miao@marvell.com>
15 years ago[ARM] fix missing includes for iop33x and sa1100_ir
Russell King [Mon, 1 Dec 2008 23:01:19 +0000 (23:01 +0000)]
[ARM] fix missing includes for iop33x and sa1100_ir

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
15 years agoMerge branch 'for-rmk-realview' of git://linux-arm.org/linux-2.6 into devel
Russell King [Mon, 1 Dec 2008 17:53:45 +0000 (17:53 +0000)]
Merge branch 'for-rmk-realview' of git://linux-arm.org/linux-2.6 into devel

15 years ago[ARM] 5336/1: Formatting/Whitespace cleanups in mach-sa1100
Kristoffer Ericson [Wed, 26 Nov 2008 19:58:43 +0000 (20:58 +0100)]
[ARM] 5336/1: Formatting/Whitespace cleanups in mach-sa1100

This patch fixes bad formatting found in
mach-sa1100 files.

What it does is to replace/delete things like
excessive spaces (start || endline). The code
looks the same just alot less junk.

Signed-off-by: Kristoffer Ericson <Kristoffer.Ericson@gmail.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
15 years ago[ARM] 5324/2: ep93xx: support gpio interrupt debounce
Hartley Sweeten [Tue, 28 Oct 2008 16:55:30 +0000 (17:55 +0100)]
[ARM] 5324/2: ep93xx: support gpio interrupt debounce

Add debounce support for ep93xx gpio interrupts.

On the EP93xx, GPIO ports A, B, and F can be used to generate
interrupts. For each port, if interrupts are enabled, it is
possible to debouce the input signal. Debouncing is implemented
by passing the input signal through a 2-bit shift register clocked
by a 128Hz clock.

This patch adds a platform specific way to enable the debouce
feature for these input ports.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
15 years ago[ARM] 5311/1: ep93xx: add core support for built in i2c bus
Hartley Sweeten [Thu, 16 Oct 2008 22:57:03 +0000 (23:57 +0100)]
[ARM] 5311/1: ep93xx: add core support for built in i2c bus

Allow the ep93xx platform init code to register the built-in i2c bus.

The EP93xx processor has two GPIO pins dedicated for an I2C bus. This
patch registers the platform supplied i2c_board_info and the necessary
platform_device information for the i2c-gpio driver to use these pins.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Acked-by: Ryan Mallon <ryan@bluewatersys.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
15 years ago[ARM] 5309/1: ep93xx: add edb9307a platform
Hartley Sweeten [Wed, 15 Oct 2008 19:01:30 +0000 (20:01 +0100)]
[ARM] 5309/1: ep93xx: add edb9307a platform

Add Cirrus Logic EDB9307A Dev Board to arch/arm/mach-ep93xx

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
15 years ago[ARM] 5319/1: AT91: support AT91CAP9 revC CPUs
Stelian Pop [Wed, 22 Oct 2008 12:52:08 +0000 (13:52 +0100)]
[ARM] 5319/1: AT91: support AT91CAP9 revC CPUs

The AT91CAP9 revC CPU has a few differences over the previous,
revB CPU which was distributed in small quantities only (revA was
an internal Atmel product only).

This patch adds the detection routines to recognize the different
AT91CAP9 revisions (based on the PMC subsystem version number), and
uses them to:
- activate a workaround for the external interrupts levels
  (on revB CPUs)
- set the UDPHS_BYPASS bit (on revB CPUs)
- set AT91_GPBR register address to the correct offset
  (0xfffffd50 on revB, 0xfffffd60 on revC)

For debugging usage, the CPU revision can be found in /proc/cpuinfo
on the 'Revision' line.

This patch is extracted from Andrew Victor's -at91 patch (2.6.27-at91.patch)
where it has been tested for the last 6 months.

Signed-off-by: Stelian Pop <stelian@popies.net>
Signed-off-by: Andrew Victor <linux@maxim.org.za>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
15 years ago[ARM] 5290/1: [AT91] Add support for the Adeneo NeoCore 926 board
Andrew Victor [Mon, 6 Oct 2008 19:13:53 +0000 (20:13 +0100)]
[ARM] 5290/1: [AT91] Add support for the Adeneo NeoCore 926 board

Add support for the Adeneo NeoCore 926 board.

Signed-off-by: Guillaume GARDET <guillaume.gardet@free.fr>
Signed-off-by: Andrew Victor <linux@maxim.org.za>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
15 years ago[ARM] 5289/1: [AT91] Convert boards to use sam9_smc_configure()
Andrew Victor [Mon, 6 Oct 2008 19:05:35 +0000 (20:05 +0100)]
[ARM] 5289/1: [AT91] Convert boards to use sam9_smc_configure()

Convert the SAM9 and CAP9 board-specific files to make use of the
sam9_smc_configure() method to configure the memory-controller for
external peripherals.

The following boards have been modified:
 cam60 : NAND
 cap9adk : NAND, NOR
 qil-a9260 : NAND
 sam9-l9260 : NAND
 sam9260ek : NAND
 sam9261ek : DM9000 Ethernet, NAND
 sam9263 : NAND
 sam9g20ek : NAND
 sam9rlek : NAND
 usb-a9260 : NAND
 usb-a9263 .: NAND

Signed-off-by: Andrew Victor <linux@maxim.org.za>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
15 years ago[ARM] 5288/1: [AT91] Remove SMC configuration from devices.c files
Andrew Victor [Mon, 6 Oct 2008 19:01:00 +0000 (20:01 +0100)]
[ARM] 5288/1: [AT91] Remove SMC configuration from devices.c files

In at91_add_device_nand(), do not configure the Static Memory
controller with specific timing values.
The *_devices.c files are board independent, and the SMC timing values
are specific to the NAND devices that are installed on the board.
The board-specific files are now responsible for configuring the
Static Memory controller (if the don't want to leave it up to a
bootloader).

Signed-off-by: Andrew Victor <linux@maxim.org.za>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
15 years ago[ARM] 5287/2: [AT91] Configuration of Static Memory Controller
Andrew Victor [Mon, 13 Oct 2008 19:28:13 +0000 (20:28 +0100)]
[ARM] 5287/2: [AT91] Configuration of Static Memory Controller

Add a structure 'sam9_smc_config' and function sam9_smc_configure() to
allow the board-specific files to specify the configuration of the
Static Memory Controller per chip-select.  This allows the board file
to specify timings for NAND flash, NOR flash or other external
peripherals.

This functionality can be used for all the SAM9 and CAP9 processors.
(the AT91RM9200 has a different memory-controller)
This patch is based on similar code in the AVR32 architecture.

Signed-off-by: Andrew Victor <linux@maxim.org.za>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
15 years agoRealView: Select CPU_V6 for MACH_REALVIEW_PB11MP
Catalin Marinas [Mon, 1 Dec 2008 14:55:00 +0000 (14:55 +0000)]
RealView: Select CPU_V6 for MACH_REALVIEW_PB11MP

This seems to be missing from the arm:devel branch, though the other
RealView configurations were modified accordingly.

Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
15 years agoRealView: Update the realview-smp_defconfig file to a newer kernel
Catalin Marinas [Mon, 1 Dec 2008 14:55:00 +0000 (14:55 +0000)]
RealView: Update the realview-smp_defconfig file to a newer kernel

The original file was based on 2.6.19-rc3. Apart from the new symbols,
the explicitly enabled eatures are AEABI, REALVIEW_HIGH_PHYS_OFFSET and
MACH_REALVIEW_PB11MP.

Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
15 years agoRealView: Update the realview_defconfig file to a newer kernel
Catalin Marinas [Mon, 1 Dec 2008 14:54:59 +0000 (14:54 +0000)]
RealView: Update the realview_defconfig file to a newer kernel

The original file was based on 2.6.14-rc2. Apart from the new symbols,
the explicitly enabled features are AACI, MMC, AEABI,
MACH_REALVIEW_PB1176 and MACH_REALVIEW_PB11MP.

Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
15 years agoRealView: Allow the in-kernel smc911x.c driver on RealView
Catalin Marinas [Mon, 1 Dec 2008 14:54:59 +0000 (14:54 +0000)]
RealView: Allow the in-kernel smc911x.c driver on RealView

This patch adds smc911x.c device configuration to the RealView
platforms. At some point it may be changed to the new smsc911x.c driver
(once complete testing was done).

Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
15 years agoRealView: Refactor the Ethernet device registration
Catalin Marinas [Mon, 1 Dec 2008 14:54:58 +0000 (14:54 +0000)]
RealView: Refactor the Ethernet device registration

This patch moves the Ethernet device registration from individual
realview_*.c files to core.c.

Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
15 years agoRealView: Clean up the machine_is_*() calls in platsmp.c
Catalin Marinas [Mon, 1 Dec 2008 14:54:58 +0000 (14:54 +0000)]
RealView: Clean up the machine_is_*() calls in platsmp.c

Some of the calls weren't necessary and some others were duplicated.
This patch tidies up the platsmp.c file.

Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
15 years agoRealView: Use only the shadow mapping of ARM11MPCore local timers
Catalin Marinas [Mon, 1 Dec 2008 14:54:57 +0000 (14:54 +0000)]
RealView: Use only the shadow mapping of ARM11MPCore local timers

All the cases where the local timer for a CPU is accessed happen on the
corresponding current CPU, hence no need to access the per-CPU local
timer mappings.

Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
15 years agoRealView: Add Cortex-A9 support to the EB board
Jon Callan [Mon, 1 Dec 2008 14:54:56 +0000 (14:54 +0000)]
RealView: Add Cortex-A9 support to the EB board

This patch adds the necessary definitions and Kconfig entries to enable
Cortex-A9 (ARMv7 SMP) tiles on the RealView/EB board.

Signed-off-by: Jon Callan <Jon.Callan@arm.com>
Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
15 years agoRealView: Use flush_cache_all() rather than MCR in cpu_enter_lowpower()
Harry Fearnhamm [Mon, 1 Dec 2008 14:54:56 +0000 (14:54 +0000)]
RealView: Use flush_cache_all() rather than MCR in cpu_enter_lowpower()

The MCR for flushing the whole D cache is undefined on ARMv7 CPUs.

Signed-off-by: Harry Fearnhamm <Harry.Fearnhamm@arm.com>
Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
15 years agoRealView: Add support for the Cortex-A8 Platform Baseboard
Bahadir Balban [Mon, 1 Dec 2008 14:54:55 +0000 (14:54 +0000)]
RealView: Add support for the Cortex-A8 Platform Baseboard

This patch adds support for RealView/PB-A8, a platform based on
Cortex-A8 with support for PCI-E and compact flash.

Signed-off-by: Bahadir Balban <bahadir.balban@arm.com>
Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
15 years agoRealView: Allow PHYS_OFFSET at 0x70000000
Catalin Marinas [Mon, 1 Dec 2008 14:54:55 +0000 (14:54 +0000)]
RealView: Allow PHYS_OFFSET at 0x70000000

RealView boards like PB11MPCore have 512MB of RAM available contiguously
at 0x70000000. Half of the memory is mirrored at 0x00000000 for
backwards compatibility. This patch adds the
CONFIG_REALVIEW_HIGH_PHYS_OFFSET option option to change the physical
base address so that the full amount of RAM is available to Linux. Note
that the EB board has 256MB of RAM also mirrored at 0x70000000, the only
board without this feature being PB1176.

Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
15 years ago[ARM] use asm/sections.h
Russell King [Mon, 1 Dec 2008 11:53:07 +0000 (11:53 +0000)]
[ARM] use asm/sections.h

Update to use the asm/sections.h header rather than declaring these
symbols ourselves.  Change __data_start to _data to conform with the
naming found within asm/sections.h.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
15 years agoMerge branch 'clks' into devel
Russell King [Sun, 30 Nov 2008 17:46:52 +0000 (17:46 +0000)]
Merge branch 'clks' into devel

15 years ago[ARM] amba drivers: don't pass a consumer clock name for devices with unique clocks
Russell King [Sun, 30 Nov 2008 17:38:14 +0000 (17:38 +0000)]
[ARM] amba drivers: don't pass a consumer clock name for devices with unique clocks

Where devices only have one consumer, passing a consumer clock ID
has no real benefit, and it only encourages wrong implementations of
the clk API.  Remove it.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
15 years ago[ARM] lh7a40x: convert to simple clk API
Russell King [Sun, 30 Nov 2008 17:34:32 +0000 (17:34 +0000)]
[ARM] lh7a40x: convert to simple clk API

lh7a40x only uses the clk API for the framebuffer, so there's
no point having a complicated implementation.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
15 years ago[ARM] lh7a40x: clocks - cleanup
Russell King [Sun, 30 Nov 2008 17:30:05 +0000 (17:30 +0000)]
[ARM] lh7a40x: clocks - cleanup

Remove commented out code, and unnecessary declarations.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
15 years ago[ARM] aaec2000: convert to simple clk API
Russell King [Sun, 30 Nov 2008 17:27:20 +0000 (17:27 +0000)]
[ARM] aaec2000: convert to simple clk API

aaec2000 only uses the clk API for the framebuffer, so there's
no point having a complicated implementation.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
15 years ago[ARM] netx: fix simple clk API
Russell King [Sun, 30 Nov 2008 17:17:25 +0000 (17:17 +0000)]
[ARM] netx: fix simple clk API

... to only return the framebuffer clock for the framebuffer device.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
15 years ago[ARM] ep93xx: convert to clkdev and match clocks by struct device where possible
Russell King [Sun, 30 Nov 2008 17:11:49 +0000 (17:11 +0000)]
[ARM] ep93xx: convert to clkdev and match clocks by struct device where possible

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
15 years ago[ARM] Update mach-types
Russell King [Sun, 30 Nov 2008 16:39:42 +0000 (16:39 +0000)]
[ARM] Update mach-types

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
15 years ago[ARM] davinci: asm/memory.h is not required for mach/vmalloc.h
Russell King [Sun, 30 Nov 2008 14:42:43 +0000 (14:42 +0000)]
[ARM] davinci: asm/memory.h is not required for mach/vmalloc.h

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
15 years ago[ARM] amba-clcd: don't use SZ_ constants in drivers
Russell King [Sun, 30 Nov 2008 13:46:10 +0000 (13:46 +0000)]
[ARM] amba-clcd: don't use SZ_ constants in drivers

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
15 years ago[ARM] Ensure that both MAX_DMA_ADDRESS and ISA_DMA_THRESHOLD are defined
Russell King [Sun, 30 Nov 2008 13:26:47 +0000 (13:26 +0000)]
[ARM] Ensure that both MAX_DMA_ADDRESS and ISA_DMA_THRESHOLD are defined

Both of these symbols should be defined by a platform, or neither
should be defined.  Ensure that all platforms conform.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
15 years ago[ARM] Add a common typesafe __io implementation
Russell King [Sun, 30 Nov 2008 11:45:54 +0000 (11:45 +0000)]
[ARM] Add a common typesafe __io implementation

As Al did for Versatile in 2ad4f86b60b649fd7428265c08d73a3bd360c81b,
add a typesafe __io implementation for platforms to use.  Convert
platforms to use this new simple typesafe implementation.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
15 years ago[ARM] integrator: parenthesize __virt_to_bus/__bus_to_virt argument
Russell King [Sun, 30 Nov 2008 11:44:11 +0000 (11:44 +0000)]
[ARM] integrator: parenthesize __virt_to_bus/__bus_to_virt argument

Macro arguments should be parenthesized to avoid unexpected side
effects.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
15 years ago[ARM] pnx4008: fix definition of PHYS_OFFSET
Russell King [Sun, 30 Nov 2008 11:43:34 +0000 (11:43 +0000)]
[ARM] pnx4008: fix definition of PHYS_OFFSET

PHYS_OFFSET constants should be defined using UL().

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
15 years agoMerge branch 's3c-moves2' of git://aeryn.fluff.org.uk/bjdooks/linux into devel
Russell King [Sat, 29 Nov 2008 19:35:07 +0000 (19:35 +0000)]
Merge branch 's3c-moves2' of git://aeryn.fluff.org.uk/bjdooks/linux into devel

15 years ago[ARM] give RiscPC a NR_IRQS definition and remove default
Russell King [Sat, 29 Nov 2008 19:14:31 +0000 (19:14 +0000)]
[ARM] give RiscPC a NR_IRQS definition and remove default

RiscPC is the only platform using the default setting for NR_IRQS,
so the default NR_IRQS doesn't really make sense; remove it and
make RiscPC provide such a definition.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
15 years ago[ARM] Remove linux/sched.h from asm/cacheflush.h and asm/uaccess.h
Russell King [Sat, 29 Nov 2008 17:35:51 +0000 (17:35 +0000)]
[ARM] Remove linux/sched.h from asm/cacheflush.h and asm/uaccess.h

... and fix those drivers that were incorrectly relying upon
that include.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
15 years ago[ARM] Rename ISA mach/dma.h header to mach/isa-dma.h
Russell King [Sat, 29 Nov 2008 18:48:07 +0000 (18:48 +0000)]
[ARM] Rename ISA mach/dma.h header to mach/isa-dma.h

This avoids confusion with platform specific DMA implementations in
mach/dma.h

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
15 years ago[ARM] Hide ISA DMA API when ISA_DMA_API is unset
Russell King [Sat, 29 Nov 2008 11:40:28 +0000 (11:40 +0000)]
[ARM] Hide ISA DMA API when ISA_DMA_API is unset

When ISA_DMA_API is unset, we're not implementing the ISA DMA API,
so there's no point in publishing the prototypes via asm/dma.h, nor
including the machine dependent parts of that API.

This allows us to remove a lot of mach/dma.h files which don't contain
any useful code.  Unfortunately though, some platforms put their own
private non-ISA definitions into mach/dma.h, so we leave these behind
and fix the appropriate #include statments.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
15 years ago[ARM] fix constant values of MAX_DMA_ADDRESS
Russell King [Sat, 29 Nov 2008 10:56:33 +0000 (10:56 +0000)]
[ARM] fix constant values of MAX_DMA_ADDRESS

Since 8d5796d2ec6b5a4e7a52861144e63af438d6f8f7, we have allowed
PAGE_OFFSET to be configurable, so a constant virtual address
for MAX_DMA_ADDRESS is buggy.  It should be defined in terms of
PAGE_OFFSET rather than a constant virtual address.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
15 years ago[ARM] move MAX_DMA_ADDRESS to mach/memory.h
Russell King [Sat, 29 Nov 2008 10:50:22 +0000 (10:50 +0000)]
[ARM] move MAX_DMA_ADDRESS to mach/memory.h

Move the definition of MAX_DMA_ADDRESS from mach/dma.h to mach/memory.h,
thereby placing it along side its relative, ISA_DMA_THRESHOLD.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
15 years ago[ARM] Remove unnecessary mach/hardware.h includes in arch/arm/mm
Russell King [Fri, 28 Nov 2008 22:48:33 +0000 (22:48 +0000)]
[ARM] Remove unnecessary mach/hardware.h includes in arch/arm/mm

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
15 years ago[ARM] asm/system.h does not require asm/memory.h
Russell King [Fri, 28 Nov 2008 22:37:15 +0000 (22:37 +0000)]
[ARM] asm/system.h does not require asm/memory.h

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
15 years ago[ARM] ns9xxx: mach/hardware.h doesn't need asm/memory.h
Russell King [Fri, 28 Nov 2008 21:13:08 +0000 (21:13 +0000)]
[ARM] ns9xxx: mach/hardware.h doesn't need asm/memory.h

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
15 years ago[ARM] ixp4xx: clean up includes
Russell King [Fri, 28 Nov 2008 21:12:40 +0000 (21:12 +0000)]
[ARM] ixp4xx: clean up includes

mach/io.h doesn't need linux/mm.h.
mach/dma.h doesn't need linux/device.h, asm/page.h or mach/hardware.h

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
15 years ago[ARM] ixp23xx: mach/io.h doesn't need BUG() anymore
Russell King [Fri, 28 Nov 2008 21:10:06 +0000 (21:10 +0000)]
[ARM] ixp23xx: mach/io.h doesn't need BUG() anymore

ixp23xx's mach/io.h claims to need linux/kernel.h for BUG().
However, this header doesn't make use of BUG().

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
15 years ago[ARM] iop13xx: avoid polluting the kernel's namespace
Russell King [Fri, 28 Nov 2008 16:13:44 +0000 (16:13 +0000)]
[ARM] iop13xx: avoid polluting the kernel's namespace

Avoid unnecessarily pollution of the kernel's namespace by avoiding
mach/hardware.h in mach/timex.h.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
15 years ago[ARM] iop3xx: avoid polluting the kernel's namespace
Russell King [Fri, 28 Nov 2008 16:13:44 +0000 (16:13 +0000)]
[ARM] iop3xx: avoid polluting the kernel's namespace

Avoid unnecessarily pollution of the kernel's namespace by avoiding
mach/hardware.h in mach/io.h, mach/memory.h and mach/timex.h.  Include
this header file where necessary.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
15 years ago[ARM] shark: avoid polluting the kernel's namespace
Russell King [Fri, 28 Nov 2008 16:13:44 +0000 (16:13 +0000)]
[ARM] shark: avoid polluting the kernel's namespace

Avoid unnecessarily pollution of the kernel's namespace by avoiding
mach/hardware.h in mach/io.h.  Include this header file where necessary.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
15 years ago[ARM] shark: remove old unused "translated" IO macros
Russell King [Fri, 28 Nov 2008 17:04:11 +0000 (17:04 +0000)]
[ARM] shark: remove old unused "translated" IO macros

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
15 years ago[ARM] clps711x: avoid polluting the kernel's namespace
Russell King [Fri, 28 Nov 2008 16:13:44 +0000 (16:13 +0000)]
[ARM] clps711x: avoid polluting the kernel's namespace

Avoid unnecessarily pollution of the kernel's namespace by avoiding
mach/hardware.h in mach/io.h.  Include this header file where necessary.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
15 years ago[ARM] footbridge: mach/hardware.h doesn't require mach/memory.h
Russell King [Fri, 28 Nov 2008 21:09:35 +0000 (21:09 +0000)]
[ARM] footbridge: mach/hardware.h doesn't require mach/memory.h

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>