Bryan Wu [Fri, 30 Nov 2007 10:11:16 +0000 (18:11 +0800)]
fix bug: when no USB device is plugged into the port of EZKIT-BF548, USB OTG host mode got BUG()
Move IRQ workqueue init before request_irq, otherwise host SUSPEND irq
will call schedule_work() and BUG_ON() will fire because musb_irq_work did
not initialised.
We recorded it at
https://blackfin.uclinux.org/gf/project/uclinux-dist/tracker/?action=TrackerItemEdit&tracker_id=141&tracker_item_id=3740
Although the Blackfin port of MUSB is not merged, this bug should be
common for other platform with MUSB
Paul Walmsley [Wed, 28 Nov 2007 10:00:10 +0000 (03:00 -0700)]
improve System Control Module defines
This patch:
- prefaces the SCM register offsets with the appropriate platform string
(e.g., OMAP2_ for 24xx/34xx-common registers) and updates code that uses
these registers to use the correct name;
- adds some more register bit defines (e.g., OMAP2_DEVICETYPE_MASK) and
cleans up code to use these common macros;
- fixes the offset of the CONTROL_STATUS register on 24xx that partially
caused SRAM patcher problems (with thanks to Kyungmin Park
<kmpark@infradead.org> for finding this problem)
- adds many more register offset defines for the 'GENERAL' section of the
SCM.
Boot-tested on N800 and 2430SDP. 3430SDP is down at the moment, so
can't test there. Incidentally, on N800, there is no vmlinux size
difference between unpatched and patched kernels. Comments welcome.
Signed-off-by: Paul Walmsley <paul@pwsan.com> Signed-off-by: Tony Lindgren <tony@atomide.com>
Sameer [Wed, 5 Dec 2007 23:05:51 +0000 (15:05 -0800)]
- onenand - OMAP3 support - Kconfig update
The following patch provides the onenand support for OMAP3.
The patch enables the onenand in def_config file, enable onenand Kconfig
for OMAP3 and enables omap2_sleep_block() only if CONFIG_PM is defined.
Also adding the signed off by line which was missed in the previous mail.
Signed-off-by: Nishant Kamat <nskamat@ti.com> Signed-off-by: Sameer <sameersu@ti.com> Acked-by: Felipe Balbi <felipe.lima@indt.org.br> Signed-off-by: Tony Lindgren <tony@atomide.com>
Sakari Ailus [Tue, 4 Dec 2007 15:48:59 +0000 (17:48 +0200)]
ARM: OMAP 2: Camera: Fix device release
If streaming wasn't stopped before a file handle was closed,
videobuf_streamoff got called after cam->streaming had been set NULL,
causing an oops. Call videobuf_streamoff a bit earlier instead.
Signed-off-by: Sakari Ailus <sakari.ailus@nokia.com> Signed-off-by: Tony Lindgren <tony@atomide.com>
Paul Walmsley [Tue, 4 Dec 2007 09:26:09 +0000 (02:26 -0700)]
3430 clock: Fix missing enable warnings from various clocks
This patch marks all of the 3430 clocks that are missing enable information
with either the ALWAYS_ENABLED or PARENT_CONTROLS_CLOCK clock flags, as deemed
appropriate.
Signed-off-by: Paul Walmsley <paul@pwsan.com> Signed-off-by: Tony Lindgren <tony@atomide.com>
Paul Walmsley [Tue, 4 Dec 2007 09:26:07 +0000 (02:26 -0700)]
3430 clock: 3430 clock: combine div2_rates
Several 3430 clocks have separate, identical clksel_rate structures
that pass through the full parent rate, or divide it by 2 - combine
these structures.
Signed-off-by: Paul Walmsley <paul@pwsan.com> Signed-off-by: Tony Lindgren <tony@atomide.com>
Paul Walmsley [Mon, 3 Dec 2007 23:24:29 +0000 (16:24 -0700)]
24xx clock: Fix 54MHz APLL readiness test
omap2_clk_fixed_enable() was checking the wrong bit to determine if
the 54MHz APLL was ready, causing a "Clock apll54_ck didn't enable in
100000 tries" warning message on 2430SDP:
Signed-off-by: Paul Walmsley <paul@pwsan.com> Signed-off-by: Tony Lindgren <tony@atomide.com>
Separate the DSP I-clock rate clksel settings from dsp_ick, and use it
to create a new clock, dsp_irate_ick. Use this new clock as the
parent of dsp_ick and iva2_1_ick. dsp_ick now simply controls whether
the IPI and ISP clocks are enabled on 2420.
Also, correct the parent clock of the DSP interface clock to be dsp_fck,
not core_ck, per the 2420 TRM figure 5-15 and 2430 TRM figure 4-16.
Fix the OMAP DSP code to use the correct clock name on 2430. This
avoids the "omapdsp: could not acquire dsp_ick handle" warning that appears
at boot.
While we are here, we also remove some redundant clksel_rate arrays -
iva1_ifck_core_rates[] and iva2_1_ick_core_rates[].
Signed-off-by: Paul Walmsley <paul@pwsan.com> Signed-off-by: Tony Lindgren <tony@atomide.com>
Paul Walmsley [Mon, 3 Dec 2007 23:24:27 +0000 (16:24 -0700)]
2430 clock: remove redundant iva2_1_fck
iva2_1_fck, the 2430 DSP functional clock, is the same clock (from the
software's perspective) as dsp_fck - same registers, same bits, same
rates. So, get rid of iva2_1_fck, and switch iva2_1_ick to take its
clock from dsp_fck instead, per the TRM. Mark dsp_fck as existing on
all 24xx chips, not just 2420. These changes resolve the "clock:
Could not find parent clock iva2_1_fck in clksel array of clock
iva2_1_ick" message that appears on boot.
Signed-off-by: Paul Walmsley <paul@pwsan.com> Signed-off-by: Tony Lindgren <tony@atomide.com>
Tony Lindgren [Mon, 3 Dec 2007 18:57:01 +0000 (10:57 -0800)]
ARM: OMAP: User GPLv2 for MMU, make checkpatch.pl happier
This patch changes MMU code to use GPLv2 as requested by
Paul Mundt. It also does some minor formatting to make
checkpatch.pl mostly happy, and removes dummy release
function.
Paul Walmsley [Sat, 1 Dec 2007 02:47:32 +0000 (19:47 -0700)]
Clean up cpu.h for 24xx, 34xx
[ This patch replaces the previous patch from me on this topic,
"Fix cpu_is_omap343x()" ]
include/asm-arm/arch-omap/cpu.h was always returning 0 for
cpu_is_omap343x(). This caused 3430SDP to fail to boot after the
recent system control module patch.
Also, clean up the existing OMAP2/3 CPU type reporting macros to
evaluate to constants on non-multiboot kernels, and fix some
whitespace and numeric format problems with the recent DEVICE_TYPE
macro changes.
ARM: OMAP: Remove unnecessary N800 PM board specific file
Removes unnecessary arch/arm/mach-omap2/board-n800-pm.c file, according with
Trilok's early patch, that moves board-n800-pm.c code to board-n800.c file.
Signed-off-by: Carlos Eduardo Aguiar <carlos.aguiar@indt.org.br> Signed-off-by: Trilok Soni <soni.trilok@gmail.com> Signed-off-by: Tony Lindgren <tony@atomide.com>
MMC: OMAP: Make board-sx1.c uses new board-sx1-mmc.c code
Make board-sx1.c file uses new board-sx1-mmc.c code.
This patch also:
- Introduces a new gpio_switch to get events when inserting and removing
MMC/SD/SDIO cards to/from the slot.
- Enables the GPIO switch support option on sx1_defconfig to use
multislot support:
Signed-off-by: Carlos Eduardo Aguiar <carlos.aguiar@indt.org.br> Signed-off-by: Tony Lindgren <tony@atomide.com>
David Brownell [Sat, 24 Nov 2007 07:20:05 +0000 (23:20 -0800)]
i2c init section fixes
Fix init section warnings in the new i2c init code. It's
wrong to call "__init" functions from non-__init ones.
Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> Acked-by: Jarkko Nikula <jarkko.nikula@nokia.com> Signed-off-by: Tony Lindgren <tony@atomide.com>
MMC: OMAP: Enabling MMC/SD card support option on n800_defconfig
Enables MMC/SD card support option on n800_defconfig to use MMC multislot support.
Signed-off-by: Carlos Eduardo Aguiar <carlos.aguiar@indt.org.br>
Refreshed to apply after Lauri's patch. Also left out
CONFIG_MMC_BLOCK_BOUNCE as omap MMC supports SG.
Felipe Balbi [Mon, 26 Nov 2007 16:01:58 +0000 (12:01 -0400)]
MMC: OMAP: Make board-h2.c uses new board-h2-mmc.c code
Make board-h2.c file uses new board-h2-mmc.c code.
This patch also:
- Introduces a new gpio_switch to get events when inserting and removing
MMC/SD/SDIO cards to/from the slot.
- Enables the following options on omap_h2_1610_defconfig to use
multislot support:
- GPIO switch support
- MMC/SD card support
- VFAT fs support
- NLS ISO 8859-1
Signed-off-by: Felipe Balbi <felipe.lima@indt.org.br> Signed-off-by: Anderson Briglia <anderson.briglia@indt.org.br> Signed-off-by: Carlos Eduardo Aguiar <carlos.aguiar@indt.org.br> Signed-off-by: David Cohen <david.cohen@indt.org.br> Signed-off-by: Eduardo Valentin <eduardo.valentin@indt.org.br> Signed-off-by: Tony Lindgren <tony@atomide.com>
Felipe Balbi [Mon, 26 Nov 2007 16:01:54 +0000 (12:01 -0400)]
MMC: OMAP: Supporting MMC multislot structures for TI OMAP H2 board
Proposes the new board-h2-mmc.c file to handle all the mmc
specific code for multislot support.
Signed-off-by: Felipe Balbi <felipe.lima@indt.org.br> Signed-off-by: Anderson Briglia <anderson.briglia@indt.org.br> Signed-off-by: Carlos Eduardo Aguiar <carlos.aguiar@indt.org.br> Signed-off-by: David Cohen <david.cohen@indt.org.br> Signed-off-by: Eduardo Valentin <eduardo.valentin@indt.org.br> Signed-off-by: Tony Lindgren <tony@atomide.com>
Felipe Balbi [Mon, 26 Nov 2007 16:01:49 +0000 (12:01 -0400)]
MMC: OMAP: Make board-h3.c uses new board-h3-mmc.c code
Make board-h3.c file uses new board-h3-mmc.c code.
This patch also:
- Introduces a new gpio_switch to get events when inserting and removing
MMC/SD/SDIO cards to/from the slot.
- Enables the following options on omap_h3_1710_defconfig to use
multislot support:
- GPIO switch support
- MSDOS fs support
- VFAT fs support
- Codepage 437
- NLS ISO 8859-1
Signed-off-by: Felipe Balbi <felipe.lima@indt.org.br> Signed-off-by: Anderson Briglia <anderson.briglia@indt.org.br> Signed-off-by: Carlos Eduardo Aguiar <carlos.aguiar@indt.org.br> Signed-off-by: David Cohen <david.cohen@indt.org.br> Signed-off-by: Eduardo Valentin <eduardo.valentin@indt.org.br> Signed-off-by: Tony Lindgren <tony@atomide.com>
Felipe Balbi [Mon, 26 Nov 2007 16:01:45 +0000 (12:01 -0400)]
MMC: OMAP: Supporting MMC multislot structures for TI OMAP H3 board
Proposes the new board-h3-mmc.c file to handle all the mmc
specific code for multislot support.
Signed-off-by: Felipe Balbi <felipe.lima@indt.org.br> Signed-off-by: Anderson Briglia <anderson.briglia@indt.org.br> Signed-off-by: Carlos Eduardo Aguiar <carlos.aguiar@indt.org.br> Signed-off-by: David Cohen <david.cohen@indt.org.br> Signed-off-by: Eduardo Valentin <eduardo.valentin@indt.org.br> Signed-off-by: Tony Lindgren <tony@atomide.com>
Jarkko Lavinen [Mon, 26 Nov 2007 16:01:38 +0000 (12:01 -0400)]
MMC: OMAP: Modifications at N800 MMC board specific file to work MMC multislot support
Modifications at board-n800-mmc.c and board-n800.c files to work with MMC multislot support.
Signed-off-by: Jarkko Lavinen <jarkko.lavinen@nokia.com> Signed-off-by: Juha Yrjola <juha.yrjola@solidboot.com> Signed-off-by: Carlos Eduardo Aguiar <carlos.aguiar@indt.org.br> Signed-off-by: Tony Lindgren <tony@atomide.com>
PLAT: OMAP: Modifications at devices.c and mmc.h to use multislot structures
Modifications at arch/arm/plat-omap/devices.c and include/asm-arm/arch-omap/mmc.h
to use multislot structures.
Signed-off-by: Carlos Eduardo Aguiar <carlos.aguiar@indt.org.br> Signed-off-by: Felipe Balbi <felipe.lima@indt.org.br> Signed-off-by: Jarkko Lavinen <jarkko.lavinen@nokia.com> Signed-off-by: Tony Lindgren <tony@atomide.com>
Jarkko Lavinen [Mon, 26 Nov 2007 16:01:27 +0000 (12:01 -0400)]
MMC: OMAP: Abort stuck commands
When a card is removed while it is being accessed, a command can get stuck so
that no timeout or end of command interrupt ever occurs. The command getting
stuck is almost always CDM12, but also the other commands can get stuck. Catch
a stuck command with a timer and try sending the initiliazation stream until
the controller starts running again and responds with the end of command
status.
Signed-off-by: Jarkko Lavinen <jarkko.lavinen@nokia.com> Signed-off-by: Tony Lindgren <tony@atomide.com>
Juha Yrjola [Mon, 26 Nov 2007 16:01:22 +0000 (12:01 -0400)]
MMC: OMAP: General cleanup for MMC multislot support
General code cleanup, modifications at some dev_* functions and
other hacks at mmc_omap_irq() for MMC multislot support.
Signed-off-by: Juha Yrjola <juha.yrjola@solidboot.com> Signed-off-by: Carlos Eduardo Aguiar <carlos.aguiar@indt.org.br> Signed-off-by: Tony Lindgren <tony@atomide.com>
Juha Yrjola [Mon, 26 Nov 2007 16:01:18 +0000 (12:01 -0400)]
MMC: OMAP: Power functions modified to MMC multislot support
Modifications at power functions to MMC multislot support. This patch
also move board-specific code out of MMC OMAP driver.
Signed-off-by: Juha Yrjola <juha.yrjola@solidboot.com> Signed-off-by: Carlos Eduardo Aguiar <carlos.aguiar@indt.org.br> Signed-off-by: Tony Lindgren <tony@atomide.com>
Juha Yrjola [Mon, 26 Nov 2007 16:01:13 +0000 (12:01 -0400)]
MMC: OMAP: Fix timeout calculation for MMC multislot support
Fix the data timeout calculation for MMC multislot support.
Signed-off-by: Juha Yrjola <juha.yrjola@solidboot.com> Signed-off-by: Jarkko Lavinen <jarkko.lavinen@nokia.com> Signed-off-by: Tony Lindgren <tony@atomide.com>
This patch adds back MMC cover switch support in a way that
supports multiple slots.
Signed-off-by: Juha Yrjola <juha.yrjola@solidboot.com> Signed-off-by: Jarkko Lavinen <jarkko.lavinen@nokia.com> Signed-off-by: Carlos Eduardo Aguiar <carlos.aguiar@indt.org.br>
Juha Yrjola [Wed, 28 Nov 2007 01:50:42 +0000 (17:50 -0800)]
OMAP: MMC: Introduce new multislot structure and change driver to use it
Introduce new MMC multislot structure and change driver to use it.
Note that MMC clocking is now enabled in mmc_omap_select_slot()
and disabled in mmc_omap_release_slot().
Signed-off-by: Juha Yrjola <juha.yrjola@solidboot.com> Signed-off-by: Jarkko Lavinen <jarkko.lavinen@nokia.com> Signed-off-by: Carlos Eduardo Aguiar <carlos.aguiar@indt.org.br> Signed-off-by: Tony Lindgren <tony@atomide.com>
Mark Fasheh [Tue, 20 Nov 2007 19:56:39 +0000 (11:56 -0800)]
ocfs2: reverse inline-data truncate args
ocfs2_truncate() and ocfs2_remove_inode_range() had reversed their "set
i_size" arguments to ocfs2_truncate_inline(). Fix things so that truncate
sets i_size, and punching a hole ignores it.
This exposed a problem where punching a hole in an inline-data file wasn't
updating the page cache, so fix that too.
Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
Mark Fasheh [Thu, 8 Nov 2007 00:35:14 +0000 (16:35 -0800)]
ocfs2: Remove bug statement in ocfs2_dentry_iput()
The existing bug statement didn't take into account unhashed dentries which
might not have a cluster lock on them. This could happen if a node exporting
the file system via NFS is rebooted, re-exported to nfs clients and then
unmounted. It's fine in this case to not have a dentry cluster lock.
Just remove the bug statement and replace it with an error print, which
does the proper checks. Though we want to know if something has happened
which might have prevented a cluster lock from being created, it's
definitely not necessary to panic the machine for this.
Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
Jan Kara [Tue, 13 Nov 2007 18:59:33 +0000 (19:59 +0100)]
[PATCH] ocfs2: Remove expensive bitmap scanning
Enable expensive bitmap scanning only if DEBUG option is enabled.
The bitmap scanning quite loads the CPU and on my machine the write
throughput of dd if=/dev/zero of=/ocfs2/file bs=1M count=500 conv=sync
improves from 37 MB/s to 45.4 MB/s in local mode...
Signed-off-by: Jan Kara <jack@suse.cz> Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
Mark Fasheh [Tue, 20 Nov 2007 02:40:16 +0000 (18:40 -0800)]
ocfs2: log valid inode # on bad inode
If the inode block isn't valid then we don't want to print the value from
that, instead print the block number which was passed in (which should
always be correct). Also, turn this into a debug print for now - folks who
hit an actual problem always have other logs indicating what the source is.
Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
Linus Torvalds [Tue, 27 Nov 2007 22:27:56 +0000 (14:27 -0800)]
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/avi/kvm
* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/avi/kvm:
KVM: SVM: Fix FPU leak while emulating clts
KVM: SVM: Unload guest fpu on vcpu_put()
KVM: x86 emulator: Use emulator_write_emulated and not emulator_write_std
KVM: x86 emulator: fix the saving of of the eip value
KVM: x86 emulator: fix JMP_REL
Linus Torvalds [Tue, 27 Nov 2007 22:20:51 +0000 (14:20 -0800)]
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband
* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband:
IB/iser: Add missing counter increment in iser_data_buf_aligned_len()
IB/ehca: Fix static rate regression
mlx4_core: Fix state check in mlx4_qp_modify()
IB/ipath: Normalize error return codes for posting work requests
IB/ipath: Fix offset returned to ibv_modify_srq()
IB/ipath: Fix error path in QP creation
IB/ipath: Fix offset returned to ibv_resize_cq()
Linus Torvalds [Tue, 27 Nov 2007 22:20:35 +0000 (14:20 -0800)]
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input
* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input:
Input: adds the context menu key (HUT GenDesc 0x84)
Input: add definitions for frame forward and frame back keys
Input: bf54x-keys - keypad does not exist on BF544 parts
Input: gpio-keys - request and configure GPIOs
Input: i8042 - add i8042.noloop quirk for MS Virtual Machine
Sonypi: use synchronize_irq instead of sycnronize_sched
sonypi: fit input devices into sysfs tree
sony-laptop: fit input devices into sysfs tree
Andrew Morton [Tue, 27 Nov 2007 20:35:56 +0000 (21:35 +0100)]
amd74xx: arm hack
drivers/ide/pci/amd74xx.c: In function `init_hwif_amd74xx':
drivers/ide/pci/amd74xx.c:387: error: implicit declaration of function `pci_get_legacy_ide_irq'
Cc: Russell King <rmk@arm.linux.org.uk> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
aec62xx: Fix kernel oops in driver's probe function
Add pci_enable_device() to aec62xx probe function
before doing any I/O.
Original probe function tries to read from device's
PCI region 4 before calling ide_setup_pci_device().
Since the device is not enabled at this point,
on machines that have no firmware PCI initialization
(e.g. ASUS WL-700gE router), corresponding PCI BAR
is 0 and the following inb() causes a kernel oops.
Jonas Stare [Tue, 27 Nov 2007 20:35:53 +0000 (21:35 +0100)]
ide: skip ide_wait_not_busy() on noprobe-disks
There is a problem in some hardware where the kernel will stall for
35 seconds waiting for disks that don't exist. This patch will skip
waiting for the BSY-bit on IDE drives to go away if you set "hdx=noprobe"
as a kernel option and the disk is not marked as 'present' (like when
you set the geometry by hand).
If no noprobe-option is set the code will work (more or less) as the
original but if set the code will skip the ide_wait_not_busy() for
that drive. Even if there would be a drive there and it is still busy
afterwards it should not matter since it isn't probed for later.
The code also honors the MAX_DRIVES variable instead of assuming that
there will be two harddrives on the bus.
Bart: minor cleanups
Signed-off-by: Jonas Stare <jonas.stare@purplescout.se> CC: Andrew Morton <akpm@linux-foundation.org>, Cc: Linus Torvalds <torvalds@linux-foundation.org> Cc: Alan Cox <alan@lxorguk.ukuu.org.uk> Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org> Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
Sergei Shtylyov [Tue, 27 Nov 2007 20:35:53 +0000 (21:35 +0100)]
siimage: remove resetproc() method
The intent behind siimage_reset() was probably to hard reset the interface and
the SATA PHY but as the code writes to two reserved bits instead, it obviously
has been ineffective from the start. So, just remove it.
Signed-off-by: Sergei Shtylyov <sshtylyov@ru.mvista.com> Cc: Alan Cox <alan@lxorguk.ukuu.org.uk> Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
Sergei Shtylyov [Tue, 27 Nov 2007 20:35:52 +0000 (21:35 +0100)]
ide: don't set PIO mode on pre-EIDE drives
Fix handling of the PIO modes for the pre-EIDE drives that did not support
the PIO Flow Control Transfer Mode value (00001 nnn) of the Set Transfer Mode
feature by skipping the actual mode programming.
Signed-off-by: Sergei Shtylyov <sshtylyov@ru.mvista.com> Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>