Russell King [Thu, 10 Jul 2008 15:41:50 +0000 (16:41 +0100)]
Merge branch 'imx' into devel
Conflicts:
arch/arm/mm/Kconfig
Russell King [Thu, 10 Jul 2008 15:38:50 +0000 (16:38 +0100)]
Merge branches 'at91', 'dyntick', 'ep93xx', 'iop', 'ixp', 'misc', 'orion', 'omap-reviewed', 'rpc', 'rtc' and 's3c' into devel
Dmitry Baryshkov [Thu, 10 Jul 2008 13:44:23 +0000 (14:44 +0100)]
[ARM] 5171/1: ep93xx: fix compilation of modules using clocks
Signed-off-by: Dmitry Baryshkov <dbaryshkov@gmail.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
sedji gaouaou [Thu, 10 Jul 2008 09:12:14 +0000 (10:12 +0100)]
[ARM] 5133/2: at91sam9g20 defconfig file
at91sam9g20 defconfig file
Signed-off-by: Sedji Gaouaou <sedji.gaouaou@atmel.com>
Signed-off-by: Justin Waters <justin.waters@timesys.com>
Acked-by: Andrew Victor <linux@maxim.org.za>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
sedji gaouaou [Thu, 10 Jul 2008 09:15:35 +0000 (10:15 +0100)]
[ARM] 5130/4: Support for the at91sam9g20
Support for the at91sam9g20 : Atmel 400Mhz ARM 926ej-s SOC.
AT91sam9g20 is an evolution of the at91sam9260 with a faster clock
speed.
We created a new board for this device but based the chip support
directly on 9260 files with little updates.
Here is the chip page on Atmel wabsite:
http://atmel.com/dyn/products/product_card.asp?part_id=4337
Signed-off-by: Sedji Gaouaou <sedji.gaouaou@atmel.com>
Signed-off-by: Justin Waters <justin.waters@timesys.com>
Acked-by: Andrew Victor <linux@maxim.org.za>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Arnaud Patard [Tue, 8 Jul 2008 22:07:48 +0000 (23:07 +0100)]
[ARM] 5160/1: IOP3XX: gpio/gpiolib support
This patch brings support for gpio/gpiolib framework to Intel IOP3xx
platforms.
Signed-off-by: Arnaud Patard <arnaud.patard@rtp-net.org>
Acked-by: Dan Williams <dan.j.williams@intel.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Patrice Vilchez [Wed, 9 Jul 2008 21:16:00 +0000 (22:16 +0100)]
[ARM] at91: Fix NAND FLASH timings for at91sam9x evaluation kits.
New timings are based on application note
"NAND Flash Support on AT91SAM9 Microcontrollers" available at
http://atmel.com/dyn/resources/prod_documents/doc6255.pdf).
Signed-off-by: Patrice Vilchez <patrice.vilchez@atmel.com>
Acked-by: 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>
Saeed Bishara [Wed, 2 Jul 2008 17:06:32 +0000 (06:06 -1100)]
[ARM] Feroceon: don't disable BPU on boot
On Feroceon platforms that have a branch prediction unit, bit 11 of the
cp15 control register controls the BPU. This patch keeps the old value
of this bit instead of always clearing it.
Signed-off-by: Saeed Bishara <saeed@marvell.com>
Signed-off-by: Lennert Buytenhek <buytenh@marvell.com>
Signed-off-by: Nicolas Pitre <nico@marvell.com>
Martin Michlmayr [Mon, 7 Jul 2008 18:23:09 +0000 (21:23 +0300)]
[ARM] Orion: LED support for HP mv2120
The HP mv2120 has several LEDs that are controlled through gpio.
Export the health LED, the red SATA LEDs as well as two gpios
that control the brightness of _all_ LEDs to userland. The
Ethernet and power LEDs can't be controlled through gpio and the
blue SATA LEDs are handled via the SATA driver.
Signed-off-by: Martin Michlmayr <tbm@cyrius.com>
Signed-off-by: Nicolas Pitre <nico@marvell.com>
Nicolas Pitre [Fri, 27 Jun 2008 22:56:22 +0000 (18:56 -0400)]
[ARM] Orion: add RD88F5181L-FXO support
This patch adds support for the Marvell Orion-VoIP RD-88F5181L-FXO
Reference Design, and enables use of the ethernet, USB, Cardbus and
mini-PCIe ports.
Signed-off-by: Nicolas Pitre <nico@marvell.com>
Lennert Buytenhek [Mon, 30 Jun 2008 18:25:24 +0000 (14:25 -0400)]
[ARM] Orion: add RD88F5181L-GE support
This patch adds support for the Marvell Orion-VoIP RD2-88F5181L-GE
Reference Design, and enables use of the ethernet, USB, Cardbus and
mini-PCIe ports.
Signed-off-by: Lennert Buytenhek <buytenh@marvell.com>
Imre Kaloz [Wed, 25 Jun 2008 23:30:41 +0000 (01:30 +0200)]
[ARM] Orion: add Netgear WNR854T support
Signed-off-by: Imre Kaloz <kaloz@openwrt.org>
Signed-off-by: Lennert Buytenhek <buytenh@marvell.com>
Russell King [Mon, 7 Jul 2008 21:21:34 +0000 (22:21 +0100)]
Merge branch 'machtypes' into orion
Ben Dooks [Mon, 7 Jul 2008 17:12:49 +0000 (18:12 +0100)]
[ARM] s3c2410_defconfig: update for current build
Update the s3c2410_defconfig for the current set of
added patches.
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Ben Dooks [Mon, 7 Jul 2008 17:12:48 +0000 (18:12 +0100)]
[ARM] Acer n30: Minor style and indentation fixes.
Minor style fixes.
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Christer Weinigel [Mon, 7 Jul 2008 17:12:47 +0000 (18:12 +0100)]
[ARM] Acer n30: Hardware initialisation.
Initialise the hardware register settings on boot, to allow the
device to function correctly.
Signed-off-by: Christer Weinigel <christer@weinigel.se>
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Christer Weinigel [Mon, 7 Jul 2008 17:12:46 +0000 (18:12 +0100)]
[ARM] Acer n30: LCD support.
This patch adds the configuration needed for the LCD display on the n30.
Signed-off-by: Christer Weinigel <christer@weinigel.se>
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Christer Weinigel [Mon, 7 Jul 2008 17:12:45 +0000 (18:12 +0100)]
[ARM] Acer n30: Add support for n35 and related devices.
Add support for the Acer N35 and related devices.
Signed-off-by: Christer Weinigel <christer@weinigel.se>
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Christer Weinigel [Mon, 7 Jul 2008 17:12:44 +0000 (18:12 +0100)]
[ARM] Acer n30: LED support.
Add support for the LEDs on the Acer N30.
Signed-off-by: Christer Weinigel <christer@weinigel.se>
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Christer Weinigel [Mon, 7 Jul 2008 17:12:43 +0000 (18:12 +0100)]
[ARM] Acer n30: GPIO buttons support
Add support for the GPIO buttons on the Acer N30.
Signed-off-by: Christer Weinigel <christer@weinigel.se>
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Christer Weinigel [Mon, 7 Jul 2008 17:12:42 +0000 (18:12 +0100)]
[ARM] Acer n30: USB bus pull-up support.
Add support for the USB D+ pull up on the Acer N30. This is needed
for the USB gadget to work properly.
Signed-off-by: Christer Weinigel <christer@weinigel.se>
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Christer Weinigel [Mon, 7 Jul 2008 17:12:41 +0000 (18:12 +0100)]
[ARM] Acer n30: Source file cleanups.
Clean up some junk from the official kernel.
The compile-command is something that's only useful for me personally
and doesn't belong in the mainstream kernel.
Signed-off-by: Christer Weinigel <christer@weinigel.se>
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Ben Dooks [Mon, 7 Jul 2008 17:12:40 +0000 (18:12 +0100)]
[ARM] S3C2443: Add prediv clk and fix setting of h and p clocks
Update the S3C2443 clock support to add the prediv clock
that is sourced via a divider from msysclk. Also fix the
setting of p and h clocks from this prediv clock.
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Ben Dooks [Mon, 7 Jul 2008 17:12:39 +0000 (18:12 +0100)]
[ARM] S3C2443: Add armdiv and arm clocks
Add the armdiv and arm clocks to the S3C2443 clock
framework and ensure they are correctly setup.
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Ben Dooks [Mon, 7 Jul 2008 17:12:38 +0000 (18:12 +0100)]
[ARM] S3C2443: Fix s3c2443_clkcon_enable_p() using wrong register.
s3c2443_clkcon_enable_p() was reading from the correct register
S3C2443_PCLKCON, but then writing the value back to the wrong
register S3C2443_HCLKCON.
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Ramax Lo [Mon, 7 Jul 2008 17:12:37 +0000 (18:12 +0100)]
[ARM] AT2440EVB: Add DM9000A network controller support.
Add DM9000AEP network controller support for AT2440EVB.
Signed-off-by: Ramax Lo <ramaxlo@gmail.com>
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Ramax Lo [Mon, 7 Jul 2008 17:12:36 +0000 (18:12 +0100)]
[ARM] S3C2440: Add AT2440EVB board support
Add basic support for AT2440EVB board based on Samsung S3C2440 SoC.
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Ramax Lo <ramaxlo@gmail.com>
Russell King [Mon, 7 Jul 2008 15:26:41 +0000 (16:26 +0100)]
Merge branches 'ns9x' and 'machtypes' into devel
Russell King [Thu, 3 Jul 2008 15:11:06 +0000 (16:11 +0100)]
[ARM] mach-types update
Update mach-types. Remove invalid or incorrect entries.
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Juergen Beisert [Sat, 5 Jul 2008 08:03:02 +0000 (10:03 +0200)]
i.MX2 family: Add basic mach support
This patch adds basic mach support for the mx2 processor family, based
on the original freescale code and adapted to mainline kernel coding
style.
This part adds the global build only.
Signed-off-by: Juergen Beisert <j.beisert@pengutronix.de>
Juergen Beisert [Sat, 5 Jul 2008 08:03:01 +0000 (10:03 +0200)]
i.MX27 family: Add the Phytec PCM970 evaluation board
The Phytec phyCORE-i.MX27 CPU module is delivered with the PCM970
baseboard by default. This patch adds support for the hardware.
This code is only an empty stub; it is filled up with functionality
in a later patch series.
Signed-off-by: Juergen Beisert <j.beisert@pengutronix.de>
Juergen Beisert [Sat, 5 Jul 2008 08:03:00 +0000 (10:03 +0200)]
i.MX27: Adding PCM038 platform support
This patch adds support for the phyCORE-i.MX27 cpu module (aka pcm038).
It is as generic as possible in order to support any kind of baseboard.
Note: This CPU module implementation can't work without a baseboard
support. Baseboard support can be added by the PCM-970 (included in
this patch stack) or any custom variant.
Signed-off-by: Juergen Beisert <j.beisert@pengutronix.de>
Juergen Beisert [Sat, 5 Jul 2008 08:03:00 +0000 (10:03 +0200)]
i.MX27: Add ADS platform support
This patch adds basic support for the Freescale MX27ADS reference board.
Currently only a serial console can be used.
Signed-off-by: Juergen Beisert <j.beisert@pengutronix.de>
Juergen Beisert [Sat, 5 Jul 2008 08:02:59 +0000 (10:02 +0200)]
i.MX2 family: Add clock handling for i.MX27 CPU
Internal clock path handling for the i.MX27 CPU.
Changed against the original Freescale code (and against clocklib for example):
- clock rate is always calculated whenever one ask for the current rate.
(means no "rate" member in the clock structure).
So switching the PLL base frequency will propagate immediately to all
other clocks that are depending on this frequency.
TODO:
- Check if the i.MX21 CPU can share the same code.
Signed-off-by: Juergen Beisert <j.beisert@pengutronix.de>
Juergen Beisert [Sat, 5 Jul 2008 08:02:59 +0000 (10:02 +0200)]
i.MX27 CPU: Add basic i.MX27 CPU support
Add basic i.MX27 CPU support
Signed-off-by: Juergen Beisert <j.beisert@pengutronix.de>
Sascha Hauer [Sat, 5 Jul 2008 08:02:58 +0000 (10:02 +0200)]
MX2 add support for mx2 in i.MX serial driver
add support for mx2 in i.MX serial driver
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Juergen Beisert [Sat, 5 Jul 2008 08:02:57 +0000 (10:02 +0200)]
i.MX2 family: Add basic device support
This patch adds a few on-chip devices for i.MX21/i.MX27 procesors.
Signed-off-by: Juergen Beisert <j.beisert@pengutronix.de>
Juergen Beisert [Sat, 5 Jul 2008 08:02:56 +0000 (10:02 +0200)]
i.MX2 family: Add basic mach support (headers)
This patch adds basic mach support for the mx2 processor family, based
on the original freescale code and adapted to mainline kernel coding
style.
Signed-off-by: Juergen Beisert <j.beisert@pengutronix.de>
Juergen Beisert [Sat, 5 Jul 2008 08:02:56 +0000 (10:02 +0200)]
i.MX2 family: Add basic mach support (sources)
This patch adds basic mach support for the mx2 processor family, based
on the original freescale code and adapted to mainline kernel coding
style.
Signed-off-by: Juergen Beisert <j.beisert@pengutronix.de>
Juergen Beisert [Sat, 5 Jul 2008 08:02:55 +0000 (10:02 +0200)]
i.MX2 family: Add GPIO multiplexing support
This patch adds GPIO multiplexing support for the imx1/mxc2
family of procesors.
Signed-off-by: Juergen Beisert <j.beisert@pengutronix.de>
Juergen Beisert [Sat, 5 Jul 2008 08:02:54 +0000 (10:02 +0200)]
MXC arch: Simplify architecture's irq sources
Simplify architecture's irq headers and sources, to share these files
between MXC3 and MXC2.
Signed-off-by: Juergen Beisert <j.beisert@pengutronix.de>
Juergen Beisert [Sat, 5 Jul 2008 08:02:53 +0000 (10:02 +0200)]
MX3: Adapt mx31lite to new timer init style
This patch converts the external "add_mx31lite-basic_defconfig.diff" to our
MXC implementation.
Note: This patch fixes a board reference only.
Signed-off-by: Juergen Beisert <j.beisert@pengutronix.de>
Daniel Mack [Sat, 5 Jul 2008 08:02:53 +0000 (10:02 +0200)]
MX3: Add basic support for LogicPD i.MX31 LiteKit
This patch adds basic support for i.MX31 LiteKit by LogicPD.
With printascii() in kernel/printk.c, it boots right into the
rootfs-panic.
Note: This is a modified version of Daniel's patch to fit into this patch
stack.
> On 09.06.2008, at 17:26, Russell King - ARM Linux wrote:
>
> > I would much prefer it if board specific includes were included by the
> > code which needs them rather than in asm/arch/hardware.h. Â With the
> > device model, drivers shouldn't need to include any board specific
> > includes - only the board specific C file should need it.
>
> The new version of this patch (#5102) has been uploaded to the patch
> tracker this morning.
Signed-off-by: Daniel Mack <daniel@caiaq.de>
--
arch/arm/configs/mx31litekit_defconfig | 1100 ++++++++++++++++++++++++++++++
arch/arm/mach-mx3/Kconfig | 7
arch/arm/mach-mx3/Makefile | 1
arch/arm/mach-mx3/mx31lite.c | 96 ++
include/asm-arm/arch-mxc/board-mx31lite.h | 38 +
include/asm-arm/arch-mxc/debug-macro.S | 3
6 files changed, 1245 insertions(+)
Sascha Hauer [Sat, 5 Jul 2008 08:02:52 +0000 (10:02 +0200)]
MX31: add basic pcm037 board support
This patch adds basic board support for phytecs pmc037 board.
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Juergen Beisert [Sat, 5 Jul 2008 08:02:51 +0000 (10:02 +0200)]
i.MX3: Add a basic default config for the imx31ads (reference only)
Currently there is a mx31ads BSP file in the kernel, but no default
config file.
This patch adds a basic default config for the imx31ads but it is for test
purposes only to ensure the i.MX2 patch stack doesn't break the i.MX3.
Note: For reference only. This configuration is untested as I have
no access to an mx31ads.
Signed-off-by: Juergen Beisert <j.beisert@pengutronix.de>
Sascha Hauer [Sat, 5 Jul 2008 08:02:51 +0000 (10:02 +0200)]
MXC: add debug-macro.S for mxc
This patch adds debug-macro.S for arch-mxc
Disadvantage: Due to the board specific UART definition, these macros (and
compile time) will fail for multi board kernels.
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Juergen Beisert [Sat, 5 Jul 2008 08:02:50 +0000 (10:02 +0200)]
i.MXC family: Adding timer support
This patch adds timer support for the i.MX machine family. This code can
be used on the following machs:
- i.MX1 (tested)
- i.MX2 (i.MX21 (to be tested), i.MX27 (tested))
- i.MX3 (i.MX31 (tested))
TODO: It seems impossible to build a kernel for more than one CPU because the
timer do not follow the platform device rules. So it does only work if
timer 1 can be accessed on all CPUs at the same address.
Signed-off-by: Juergen Beisert <j.beisert@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Sascha Hauer [Sat, 5 Jul 2008 08:02:50 +0000 (10:02 +0200)]
MXC: add io multiplexing functions for mx3
This patch adds functions to use the io multiplexer on mx3 platforms.
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Juergen Beisert [Sat, 5 Jul 2008 08:02:49 +0000 (10:02 +0200)]
MXC arch: Add gpio support for the whole platform
This patch bases on the one from Daniel Mack. The most important change to
Daniel's patch is to be more generic. This gpio routine supports at least
the i.MX27 and i.MX31 processors.
Signed-off-by: Juergen Beisert <j.beisert@pengutronix.de>
Acked-by: Daniel Mack <daniel@caiaq.de>
Sascha Hauer [Sat, 5 Jul 2008 08:02:48 +0000 (10:02 +0200)]
mxc: add MX3 support for i.MX internal UART driver
This patch adds MX3 support for the i.MX internal uart driver.
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Sascha Hauer [Sat, 5 Jul 2008 08:02:48 +0000 (10:02 +0200)]
i.MX3: introduce clock API
This patch introduces the clock API for for arch-mxc
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Juergen Beisert [Sat, 5 Jul 2008 08:02:47 +0000 (10:02 +0200)]
MXC family: Add clock handling
Internal clock path handling for the mxc CPUs.
Changed against the original Freescale code (and against clocklib for example):
- clock rate is always calculated whenever one ask for the current rate
(means struct clk has no more a member called "rate"). So switching the PLL
base frequency will propagate immediately to all other clocks that are
depending on this frequency.
Signed-off-by: Juergen Beisert <j.beisert@pengutronix.de>
Sascha Hauer [Sat, 5 Jul 2008 08:02:46 +0000 (10:02 +0200)]
IMX: introduce clock API
This patch introduces the clock API for i.MX and converts all
in-Kernel drivers to use it.
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Sascha Hauer [Sat, 5 Jul 2008 08:02:45 +0000 (10:02 +0200)]
IMX UART: remove statically initialized tables
This patch removes the statically initialized tables from the i.MX serial
driver and makes the driver fully dependent on the information provided by
the platform_device.
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Sascha Hauer [Sat, 5 Jul 2008 08:02:45 +0000 (10:02 +0200)]
IMX UART: Add board specific init/exit functions
Add platform specific init functions. Also rename the struct
platform_device dev into pdev.
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Sascha Hauer [Sat, 5 Jul 2008 08:02:44 +0000 (10:02 +0200)]
IMX UART: do not assume 16MHz reference frequency
We assumed a 16MHz reference frequency for the UART. While this
is true for i.MX1 most of the time it is not true for MX27/MX31.
Also, add handling for the ONEMS register which is present on
newer versions of the chip and pass a sane minimum baudrate to
uart_get_baud_rate().
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Sascha Hauer [Sat, 5 Jul 2008 08:02:43 +0000 (10:02 +0200)]
MXC: do not include board specific header from architecture include
do not include board-mx31ads.h from hardware.h, instead include it
directly only where needed.
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Linus Torvalds [Fri, 4 Jul 2008 04:29:08 +0000 (21:29 -0700)]
Merge git://git./linux/kernel/git/gregkh/usb-2.6
* git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb-2.6:
USB: adding comment for ipaq forcing number of ports
USB: fix Oops on loading ipaq module since 2.6.26
USB: add a pl2303 device id
USB: another option device id
USB: don't lose disconnections during suspend
USB: fix interrupt disabling for HCDs with shared interrupt handlers
USB: New device ID for ftdi_sio driver
sisusbvga: Fix oops on disconnect.
USB: mass storage: new id for US_SC_CYP_ATACB
USB: ohci - record data toggle after unlink
USB: ehci - fix timer regression
USB: fix cdc-acm resume()
OHCI: Fix problem if SM501 and another platform driver is selected
Oliver Neukum [Thu, 3 Jul 2008 15:14:16 +0000 (17:14 +0200)]
USB: adding comment for ipaq forcing number of ports
The reason for forcing a number of ports should be documented.
Signed-off-by: Oliver Neukum <oneukum@suse.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Oliver Neukum [Thu, 3 Jul 2008 08:05:57 +0000 (10:05 +0200)]
USB: fix Oops on loading ipaq module since 2.6.26
Fixes bugzilla.kernel.org #10868
Signed-off-by: Oliver Neukum <oneukum@suse.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Greg Kroah-Hartman [Wed, 2 Jul 2008 20:25:41 +0000 (15:25 -0500)]
USB: add a pl2303 device id
As reported by Ken A Scott <kscott9@sent.com>
Cc: Ken A Scott <kscott9@sent.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Greg Kroah-Hartman [Tue, 1 Jul 2008 07:41:56 +0000 (13:11 +0530)]
USB: another option device id
Thanks to umesh b <umesh.kollam@gmail.com> for the information here.
Cc: umesh b <umesh.kollam@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Alan Stern [Tue, 1 Jul 2008 14:45:51 +0000 (10:45 -0400)]
USB: don't lose disconnections during suspend
This patch (as1111) fixes a bug in the hub driver. When a hub
resumes, disconnections that occurred while the hub was suspended are
lost.
A completely different fix for this problem has already been accepted
for 2.6.27; however the problem still needs to be handled in 2.6.26.
Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
Tested-by: Lukas Hejtmanek <xhejtman@ics.muni.cz>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Stefan Becker [Tue, 1 Jul 2008 16:19:22 +0000 (19:19 +0300)]
USB: fix interrupt disabling for HCDs with shared interrupt handlers
USB: fix interrupt disabling for HCDs with shared interrupt handlers
As has been discussed several times on LKML, IRQF_SHARED | IRQF_DISABLED
doesn't work reliably, i.e. a shared interrupt handler CAN'T be certain to
be called with interrupts disabled. Most USB HCD handlers use IRQF_DISABLED
and therefore havoc can break out if they share their interrupt with a
handler that doesn't use it.
On my test machine the yenta_socket interrupt handler (no IRQF_DISABLED)
was registered before ehci_hcd and one uhci_hcd instance. Therefore all
usb_hcd_irq() invocations for ehci_hcd and for one uhci_hcd instance
happened with interrupts enabled. That led to random lockups as USB core
HCD functions that acquire the same spinlock could be called twice
from interrupt handlers.
This patch updates usb_hcd_irq() to always disable/restore interrupts.
usb_add_hcd() will silently remove any IRQF_DISABLED requested from HCD code.
Signed-off-by: Stefan Becker <stefan.becker@nokia.com>
Cc: stable <stable@kernel.org>
Acked-by: David Brownell <david-b@pacbell.net>
Acked-by: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Jon K Hellan [Tue, 24 Jun 2008 09:43:13 +0000 (11:43 +0200)]
USB: New device ID for ftdi_sio driver
Here's a new device ID for the ftdio_sio driver.
The diff is with linus's tree as of this morning.
The device is the RigExpert Tiny USB Soundcard Transceiver Interface for ham
radio.
(I didn't actually test this. A fellow ham couldn't get the device to work, and
I suggested binding the device ID using sysfs - see
"http://jk.ufisa.uninett.no/usb/". However, he had had moved on to other things
by then. I guess adding the device ID to the kernel "on spec" won't hurt.
The relevant part of cat /proc/bus/usb/devices shows:
T: Bus=02 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#= 2 Spd=12 MxCh= 0
D: Ver= 2.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1
P: Vendor=0403 ProdID=ed22 Rev= 5.00
S: Manufacturer=FTDI
S: Product=MixW RigExpert Tiny
S: SerialNumber=
00000000
C:* #Ifs= 2 Cfg#= 1 Atr=80 MxPwr=100mA
I:* If#= 0 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=ff Driver=(none)
E: Ad=81(I) Atr=02(Bulk) MxPS= 64 Ivl=0ms
E: Ad=02(O) Atr=02(Bulk) MxPS= 64 Ivl=0ms
I:* If#= 1 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=ff Driver=(none)
E: Ad=83(I) Atr=02(Bulk) MxPS= 64 Ivl=0ms
E: Ad=04(O) Atr=02(Bulk) MxPS= 64 Ivl=0ms
)
From: Jon K Hellan <hellan@acm.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Will Newton [Fri, 27 Jun 2008 12:08:08 +0000 (13:08 +0100)]
sisusbvga: Fix oops on disconnect.
Remove dev_info call on disconnect. The sisusb_dev pointer may have been
set to zero by sisusb_delete at this point causing an oops.
The message does not provide any extra information over the standard USB
subsystem output so removing it does not affect functionality.
Signed-off-by: Will Newton <will.newton@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
matthieu castet [Mon, 16 Jun 2008 17:49:06 +0000 (19:49 +0200)]
USB: mass storage: new id for US_SC_CYP_ATACB
CY7C68310 chip also support cypress atacb "ATA command" pass_thru.
Signed-off-by: Matthieu CASTET <castet.matthieu@free.fr>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
David Brownell [Sat, 14 Jun 2008 06:59:54 +0000 (23:59 -0700)]
USB: ohci - record data toggle after unlink
This patch fixes a problem with OHCI where canceling bulk or
interrupt URBs may lose track of the right data toggle. This
seems to be a longstanding bug, possibly dating back to the
Linux 2.4 kernel, which stayed hidden because
(a) about half the time the data toggle bit was correct;
(b) canceling such URBs is unusual; and
(c) the few drivers which cancel these URBs either
[1] do it only as part of shutting down, or
[2] have fault recovery logic, which recovers.
For those transfer types, the toggle is normally written back
into the ED when each TD is retired. But canceling bypasses
the mechanism used to retire TDs ... so on average, half the
time the toggle bit will be invalid after cancelation.
The fix is simple: the toggle state of any canceled TDs are
propagated back to the ED in the finish_unlinks function.
(Issue found by leonidv11@gmail.com ...)
Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Cc: Leonid <leonidv11@gmail.com>
Cc: stable <stable@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
David Brownell [Sat, 14 Jun 2008 06:56:48 +0000 (23:56 -0700)]
USB: ehci - fix timer regression
This patch fixes a regression in the EHCI driver's TIMER_IO_WATCHDOG
behavior. The patch "USB: EHCI: add separate IAA watchdog timer" changed
how that timer is handled, so that short timeouts on the remaining
timer (unfortunately, overloaded) would never be used.
This takes a more direct approach, reorganizing the code slightly to
be explicit about only the I/O watchdog role now being overridable.
It also replaces a now-obsolete comment describing older timer behavior.
Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Cc: Alan Stern <stern@rowland.harvard.edu>
Cc: Leonid <leonidv11@gmail.com>
Cc: stable <stable@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Oliver Neukum [Tue, 17 Jun 2008 20:30:48 +0000 (22:30 +0200)]
USB: fix cdc-acm resume()
cdc-acm has
- a memory leak in resume()
- will fail to reactivate the read code path if this is needed.
his corrects it by deleting the useless relict code.
Signed-off-by: Oliver Neukum <oneukum@suse.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Ben Dooks [Sun, 8 Jun 2008 16:20:11 +0000 (17:20 +0100)]
OHCI: Fix problem if SM501 and another platform driver is selected
If the SM501 and another platform driver, such as the SM501
then we end up defining PLATFORM_DRIVER twice. This patch
seperated the SM501 onto a seperate define of SM501_OHCI_DRIVER
so that it can be selected without overwriting the original
definition.
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Acked-by: David Brownell <dbrownell@users.sourceforge.net>
Cc: stable <stable@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
J. Bruce Fields [Thu, 3 Jul 2008 19:26:35 +0000 (15:26 -0400)]
svcrpc: fix handling of garbage args
To return garbage_args, the accept_stat must be 0, and we must have a
verifier. So we shouldn't be resetting the write pointer as we reject
the call.
Also, we must add the two placeholder words here regardless of success
of the unwrap, to ensure the output buffer is left in a consistent state
for svcauth_gss_release().
This fixes a BUG() in svcauth_gss.c:svcauth_gss_release().
Thanks to Aime Le Rouzic for bug report, debugging help, and testing.
Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu>
Tested-by: Aime Le Rouzic <aime.le-rouzic@bull.net>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Linus Torvalds [Thu, 3 Jul 2008 18:37:19 +0000 (11:37 -0700)]
Merge branch 'upstream' of git://ftp.linux-mips.org/upstream-linus
* 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-linus:
[MIPS] cevt-txx9: Reset timer counter on initialization
[MIPS] IP22: Fix crashes due to wrong L1_CACHE_BYTES
[MIPS] IP32: Fix unexpected irq 71
Steven Rostedt [Thu, 3 Jul 2008 18:31:26 +0000 (14:31 -0400)]
hrtimer: prevent migration for raising softirq
Due to a possible deadlock, the waking of the softirq was pushed outside
of the hrtimer base locks. See commit
0c96c5979a522c3323c30a078a70120e29b5bdbc
Unfortunately this allows the task to migrate after setting up the softirq
and raising it. Since softirqs run a queue that is per-cpu we may raise the
softirq on the wrong CPU and this will keep the queued softirq task from
running.
To solve this issue, this patch disables preemption around the releasing
of the hrtimer lock and raising of the softirq.
Signed-off-by: Steven Rostedt <srostedt@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Atsushi Nemoto [Tue, 24 Jun 2008 14:26:38 +0000 (23:26 +0900)]
[MIPS] cevt-txx9: Reset timer counter on initialization
The txx9_tmr_init() will not clear a timer counter register in a certain
case. The counter register is cleared on 1->0 transition of TCE bit if
CRE=1. So just clearing the TCE bit is not enough.
Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Thomas Bogendoerfer [Fri, 27 Jun 2008 21:52:26 +0000 (23:52 +0200)]
[MIPS] IP22: Fix crashes due to wrong L1_CACHE_BYTES
The introduction of a real dma cache invalidate makes it important
to have a correct cache line size, otherwise the kernel will gives
out two memory segment, which might share one cache line. The R4400
Indy/Indigo2 CPU modules are using a second level cache line size
of 128 bytes, so MIPS_L1_CACHE_SHIFT needs to be bumped up to 7 for
IP22.
Signed-off-by: Thomas Bogendoerfer <tsbogend@alpha.franken.de>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Thomas Bogendoerfer [Mon, 23 Jun 2008 22:48:05 +0000 (00:48 +0200)]
[MIPS] IP32: Fix unexpected irq 71
It's possible that the crime interrupt handler is called without
pending interrupts (probably a hardware issue). To avoid irritating
"unexpected irq 71" messages, we now just ignore the spurious crime
interrupts.
Signed-off-by: Thomas Bogendoerfer <tsbogend@alpha.franken.de>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Linus Torvalds [Thu, 3 Jul 2008 16:28:44 +0000 (09:28 -0700)]
Merge branch 'for-linus' of git://git./linux/kernel/git/ericvh/v9fs
* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ericvh/v9fs:
9p: fix O_APPEND in legacy mode
Mel Gorman [Thu, 3 Jul 2008 04:27:51 +0000 (05:27 +0100)]
Do not overwrite nr_zones on !NUMA when initialising zlcache_ptr
The non-NUMA case of build_zonelist_cache() would initialize the
zlcache_ptr for both node_zonelists[] to NULL.
Which is problematic, since non-NUMA only has a single node_zonelists[]
entry, and trying to zero the non-existent second one just overwrote the
nr_zones field instead.
As kswapd uses this value to determine what reclaim work is necessary,
the result is that kswapd never reclaims. This causes processes to
stall frequently in low-memory situations as they always direct reclaim.
This patch initialises zlcache_ptr correctly.
Signed-off-by: Mel Gorman <mel@csn.ul.ie>
Tested-by: Dan Williams <dan.j.williams@intel.com>
[ Simplified patch a bit ]
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Ben Dooks [Thu, 3 Jul 2008 11:32:51 +0000 (12:32 +0100)]
[ARM] S3C24XX: Split serial driver into core and per-cpu drivers
The S3C2410 serial driver in drivers/serial/s3c2410.c has been
growing bigger with the addition of more variants of this hardware
with the growing Samsung SoCs range. As such, it would be
easier to split this code up into a core and per-cpu drivers to
make driver addition easier, and the core smaller.
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Ben Dooks [Tue, 1 Jul 2008 12:17:24 +0000 (13:17 +0100)]
[ARM] S3C24XX: PWM API support.
Add support for PWM in the S3C24XX series of SoC via the
PWM API.
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Matthieu Castet [Thu, 3 Jul 2008 10:24:45 +0000 (11:24 +0100)]
[ARM] S3C2412: Correct parents for EREFCLK and UREFCLK
For s3c2412, set parent for clk_erefclk and clk_urefclk.
This allow for example to use xtal or extclk for i2s clock.
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Matthieu Castet <matthieu.castet@parrot.com>
Ben Dooks [Thu, 3 Jul 2008 10:24:44 +0000 (11:24 +0100)]
[ARM] VR1000: Add tmp101 to list of I2C devices on the board
Add tmp101 support via the new style I2C driver registration
on the VR1000.
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Ben Dooks [Thu, 3 Jul 2008 10:24:43 +0000 (11:24 +0100)]
[ARM] ANUBIS: Add i2c device list to Simtec Anubis
Add i2c board info initialiser to setup the list of
I2C devices present on an Simtec Anubis.
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Ben Dooks [Thu, 3 Jul 2008 10:24:42 +0000 (11:24 +0100)]
[ARM] VR1000: Add i2c device list to Thorcom VR1000
Add i2c board intialisers to specify the I2C devices
attached on the Thorcom VR1000.
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Ben Dooks [Thu, 3 Jul 2008 10:24:41 +0000 (11:24 +0100)]
[ARM] BAST: Add i2c device list on Simtec Bast
Add i2c boardinfo for the connected i2c devices on the
Simtec Bast.
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Ben Dooks [Thu, 3 Jul 2008 10:24:40 +0000 (11:24 +0100)]
[ARM] OSIRIS: Add i2c device list to Simtec Osiris
Add an i2c board information initialisers to the board
to define which devices are present.
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Ben Dooks [Thu, 3 Jul 2008 10:24:39 +0000 (11:24 +0100)]
[ARM] S3C24XX: Add physmap device for all Simtec NOR equiped boards.
Move to using the physmap platform device code to attached NOR
flash on Simtec boards so that the old bast-flash driver can be
safely removed.
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Ben Dooks [Thu, 3 Jul 2008 10:24:38 +0000 (11:24 +0100)]
[ARM] ANUBIS: Move to using ata_platform driver (libata)
Change the (as yet unused) IDE bus on the Simtec Anubis board
to use pata_platform and thus libata to provide IDE support.
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Ben Dooks [Thu, 3 Jul 2008 10:24:37 +0000 (11:24 +0100)]
[ARM] BAST/VR1000: Move to using ata_platform (libata)
Use the pata_platform driver to provide the IDE port
drivers on the Simntec BAST and Thorcom VR1000 machines
as a precursor to removing drivers/ide/arm/bast-ide.c
This will mean that the system will need SCSI and SCSI disc
support as a minimum, and any references to hdX will be
changed to sdX.
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Ben Dooks [Thu, 3 Jul 2008 10:24:36 +0000 (11:24 +0100)]
[ARM] JIVE: Add power off on shutdown support
Add pm_power_off hook to allow the Logitech Jive to shutdown
when asked to halt.
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Ben Dooks [Thu, 3 Jul 2008 10:24:35 +0000 (11:24 +0100)]
[ARM] JIVE: Add i2c device info for LIS302DL sensor
Add i2c bus definition for the LIS302DL sensor driver
which is connected on the i2c bus.
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Ben Dooks [Thu, 3 Jul 2008 10:24:34 +0000 (11:24 +0100)]
[ARM] JIVE: Add board definitions for audio
Add board definitions for the audio device connected
on the Logitech Jive.
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Ben Dooks [Thu, 3 Jul 2008 10:24:33 +0000 (11:24 +0100)]
[ARM] JIVE: Add LCD display setup information
Add the setup information for the LCD display
connected to the device.
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Ben Dooks [Thu, 3 Jul 2008 10:24:32 +0000 (11:24 +0100)]
[ARM] JIVE: Add SPI bus definitions for LCD controller
Add the definitions for the VGG2432A4 intelligent
LCD display conneected via an GPIO-based SPI bus
on the Logitech Jive.
Signed-of-by: Ben Dooks <ben-linux@fluff.org>
Ben Dooks [Thu, 3 Jul 2008 10:24:31 +0000 (11:24 +0100)]
[ARM] JIVE: Add setup information for the S3C2412 LCD controller
Setup the video controller information for the Jive.
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Ben Dooks [Thu, 3 Jul 2008 10:24:30 +0000 (11:24 +0100)]
[ARM] JIVE: Initialise the sleep configuration registers
Ensure that the S3C2412 sleep configuration registers
are approriately setup so that the device can safely
go to sleep.
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Ben Dooks [Thu, 3 Jul 2008 10:24:29 +0000 (11:24 +0100)]
[ARM] JIVE: Initial machine support for Logitech Jive
This is the base machine support for the Logitech Jive
machine.
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Ben Dooks [Thu, 3 Jul 2008 10:24:27 +0000 (11:24 +0100)]
[ARM] S3C24XX: Support for PWM timer clocks via clk_* API
Add support for the PWM timer clock routing via the
standard clk_ API.
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Ben Dooks [Thu, 3 Jul 2008 10:24:26 +0000 (11:24 +0100)]
[ARM] S3C24XX: Add PWM timer MUX defines
Add timer defines for the MUX settings for
each of the PWM timers to add to the per-timer
defines already in the file.
Signed-off-by: Ben Dooks <ben-linux@fluff.org>