pandora-kernel.git
15 years agoomap3: id code detection 3525 vs 3515
Sergey Lapin [Tue, 8 Dec 2009 18:17:27 +0000 (10:17 -0800)]
omap3: id code detection 3525 vs 3515

The runtime detection of OMAP3515 and OMAP3525
was reversed.

Signed-off-by: Sergey Lapin <slapin@ossfans.org>
Signed-off-by: Sanjeev Premi <premi@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
15 years agoomap3: rx51: Use wl1251 in SPI mode 3
Kalle Valo [Tue, 8 Dec 2009 18:17:26 +0000 (10:17 -0800)]
omap3: rx51: Use wl1251 in SPI mode 3

Otherwise Extreme Lower Power (ELP) wakeup doesn't work properly.

Signed-off-by: Kalle Valo <kalle.valo@nokia.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
15 years agoomap3: zoom2/3: make MMC slot work again
Anand Gadiyar [Tue, 8 Dec 2009 18:17:26 +0000 (10:17 -0800)]
omap3: zoom2/3: make MMC slot work again

omap3: zoom2/3: make MMC slot work again

Commit 12f8dfb56 accidentally broke MMC on zoom2/3.
The .vmmc1 field of zoom_twldata was deleted. Restoring it
allows the MMC slot to work again

Signed-off-by: Anand Gadiyar <gadiyar@ti.com>
Acked-by: Madhusudhan Chikkature <madhu.cr@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
15 years agoomap1: htcherald: Update defconfig to include mux support
Cory Maccarrone [Tue, 8 Dec 2009 18:17:26 +0000 (10:17 -0800)]
omap1: htcherald: Update defconfig to include mux support

The existing htcherald_defconfig did not include mux support, which
prevented USB and other functionality from working out of the box.
This change updates the defconfig to add it in.  It also aligns the
defconfig to the -rc8 kernel config.

Signed-off-by: Cory Maccarrone <darkstar6262@gmail.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
15 years agoomap1: LCD_DMA: Use some define rather than a hexadecimal
Janusz Krzysztofik [Tue, 8 Dec 2009 18:17:25 +0000 (10:17 -0800)]
omap1: LCD_DMA: Use some define rather than a hexadecimal

The patch corrects the issue introduced with one of my earlier patches:
OMAP: DMA: Fix omapfb/lcdc on OMAP1510 broken when PM set[1]
as pointed out by OMAP subsystem maintainer.

Applies on top of my prevoius patch:
  OMAP: DMA: move LCD DMA related code from plat-omap to mach-omap1[2]

Tested on Amstrad Delta
Compile tested with omap_generic_2420_defconfig

[1] http://patchwork.kernel.org/patch/57922/
[2] http://patchwork.kernel.org/patch/61952/

Signed-off-by: Janusz Krzysztofik <jkrzyszt@tis.icnet.pl>
Signed-off-by: Tony Lindgren <tony@atomide.com>
15 years agoomap: arch/arm/plat-omap/devices.c - sort alphabetically
Ladislav Michl [Tue, 8 Dec 2009 18:17:25 +0000 (10:17 -0800)]
omap: arch/arm/plat-omap/devices.c - sort alphabetically

Comment in omap_init_devices asks to keep init calls and their
implementations in alphabetical order, so let it be that way.

Signed-off-by: Ladislav Michl <ladis@linux-mips.org>
Signed-off-by: Tony Lindgren <tony@atomide.com>
15 years agoomap: Correcting GPMC_CONFIG1_DEVICETYPE_NAND
Vimal Singh [Tue, 8 Dec 2009 18:17:25 +0000 (10:17 -0800)]
omap: Correcting GPMC_CONFIG1_DEVICETYPE_NAND

For NAND devices '2' should be used with GPMC_CONFIG1_DEVICETYPE
instead of '1'.

Signed-off-by: Vimal Singh <vimalsingh@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
15 years agoomap3: pandora: board file updates for .33
Grazvydas Ignotas [Tue, 8 Dec 2009 18:17:24 +0000 (10:17 -0800)]
omap3: pandora: board file updates for .33

Pandora board file updates:
- change keycodes of game buttons
  it was decided not to use ABXY layout by the developers.
- drop i2c bus 3 speed to 100kHz
  this is needed for battery monitoring chip to work reliably.
- drop pandora_lcd platform_device
  the older DSS driver was never functional on l-o or mainline
  kernels due to missing panel driver, so remove unneeded
  pandora_lcd platform_device. This also removes last OMAP_TAG
  from the board file.

Signed-off-by: Grazvydas Ignotas <notasas@gmail.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
15 years agoomap3: Defconfig file of Always Innovating OMAP3-based Touch Book
Gregoire Gentil [Tue, 8 Dec 2009 18:17:23 +0000 (10:17 -0800)]
omap3: Defconfig file of Always Innovating OMAP3-based Touch Book

Defconfig file of Always Innovating OMAP3-based Touch Book

Signed-off-by: Gregoire Gentil <gregoire@gentil.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
15 years agoomap3: Board file of Always Innovating OMAP3-based Touch Book
Gregoire Gentil [Tue, 8 Dec 2009 18:17:23 +0000 (10:17 -0800)]
omap3: Board file of Always Innovating OMAP3-based Touch Book

Board file of Always Innovating OMAP3-based Touch Book

Signed-off-by: Gregoire Gentil <gregoire@gentil.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
15 years agoomap1: I2C mux and clocks for omap7xx
Cory Maccarrone [Tue, 8 Dec 2009 18:17:23 +0000 (10:17 -0800)]
omap1: I2C mux and clocks for omap7xx

This change adds MUX pin configuration and clocks for I2C support
to OMAP 730 and 850-based devices.

Signed-off-by: Cory Maccarrone <darkstar6262@gmail.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
15 years agoomap1: Add omap7xx USB support
Cory Maccarrone [Tue, 8 Dec 2009 18:17:14 +0000 (10:17 -0800)]
omap1: Add omap7xx USB support

This change implements USB client side support into the HTC
Herald board configuration.  It uses a similar, but updated
algorithm to initialize the USB as is used in the linwizard
project.

Signed-off-by: Cory Maccarrone <darkstar6262@gmail.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
15 years agoomap1: DMA: move LCD related code from plat-omap to mach-omap1
Janusz Krzysztofik [Tue, 8 Dec 2009 18:17:13 +0000 (10:17 -0800)]
omap1: DMA: move LCD related code from plat-omap to mach-omap1

All of the LCD DMA code in plat-omap/dma.c appears to be OMAP1-only (and
apparently only is available on a subset of OMAP1 chips).

Move this code to mach-omap1/lcd_dma.c.

Tested on OMAP1510 Amstrad Delta.
Compile-tested with omap_generic_2420_defconfig.

Reported-by: Paul Walmsley <paul@pwsan.com>
Signed-off-by: Janusz Krzysztofik <jkrzyszt@tis.icnet.pl>
Reviewed-by: Paul Walmsley <paul@pwsan.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
15 years agoomap1: Use gen_nand
Ladislav Michl [Tue, 8 Dec 2009 18:17:13 +0000 (10:17 -0800)]
omap1: Use gen_nand

Since omapnand driver never find its way into mainline, switch to gen_nand instead.
Following patch is compile tested only, but it is based on code I wrote for
NetStar board and runtime tested it there.

Signed-off-by: Ladislav Michl <ladis@linux-mips.org>
Cc: Imre Deak <imre.deak@nokia.com>
Cc: Brian Swetland <swetland@google.com>
Cc: Kevin Hilman <kjh@hilman.org>
Signed-off-by: Tony Lindgren <tony@atomide.com>
15 years agosmc91x: remove OMAP specific bits
Ladislav Michl [Tue, 8 Dec 2009 17:08:26 +0000 (17:08 +0000)]
smc91x: remove OMAP specific bits

Now that all OMAP boards are using the board resources, we don't need
to keep the arch/board specific crap in the driver header.

Cc: linux-net@vger.kernel.org
Signed-off-by: Ladislav Michl <ladis@linux-mips.org>
Signed-off-by: Tony Lindgren <tony@atomide.com>
15 years agoomap: use smc91x_platdata to setup smc91x
Ladislav Michl [Tue, 8 Dec 2009 17:05:07 +0000 (17:05 +0000)]
omap: use smc91x_platdata to setup smc91x

Use smc91x_platdata to setup smc91x, so we can get rid of OMAP specific stuff
in smc91x driver

Signed-off-by: Ladislav Michl <ladis@linux-mips.org>
Signed-off-by: Tony Lindgren <tony@atomide.com>
15 years agoomap: mux: Add 36xx CBP package support
Tony Lindgren [Tue, 8 Dec 2009 18:17:13 +0000 (10:17 -0800)]
omap: mux: Add 36xx CBP package support

Add 36xx CBP package support

Cc: Benoit Cousson <b-cousson@ti.com>
Signed-off-by: Paul Walmsley <paul@pwsan.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
15 years agoomap: mux: Remove old mux code for 34xx
Tony Lindgren [Tue, 8 Dec 2009 18:17:12 +0000 (10:17 -0800)]
omap: mux: Remove old mux code for 34xx

Remove old mux code for 34xx

Signed-off-by: Tony Lindgren <tony@atomide.com>
15 years agoomap: mux: Replace omap_cfg_reg() with new style signal or gpio functions
Tony Lindgren [Tue, 8 Dec 2009 18:17:12 +0000 (10:17 -0800)]
omap: mux: Replace omap_cfg_reg() with new style signal or gpio functions

Replace omap_cfg_reg() with new style signal or gpio functions

Signed-off-by: Tony Lindgren <tony@atomide.com>
15 years agoomap: Split i2c platform init for mach-omap1 and mach-omap2
Tony Lindgren [Tue, 8 Dec 2009 18:17:12 +0000 (10:17 -0800)]
omap: Split i2c platform init for mach-omap1 and mach-omap2

Otherwise we cannot limit new mux code to mach-omap2.
The same signal names should eventually work for other
omaps under mach-omap2.

Note that these pins don't need to be OMAP_PIN_INPUT_PULLUP,
just OMAP_PIN_INPUT is enough.

Cc: Jarkko Nikula <jhnikula@gmail.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
15 years agoomap: mux: Add debugfs support for new mux code
Tony Lindgren [Tue, 8 Dec 2009 18:17:11 +0000 (10:17 -0800)]
omap: mux: Add debugfs support for new mux code

Add debugfs support for new mux code

Signed-off-by: Tony Lindgren <tony@atomide.com>
15 years agoomap: mux: Add new style init functions to omap3 board-*.c files
Tony Lindgren [Tue, 8 Dec 2009 18:17:11 +0000 (10:17 -0800)]
omap: mux: Add new style init functions to omap3 board-*.c files

Add new style mux init functions to omap3 board-*.c files

So far Beagle has been confirmed to be a CBB package,
and CM-T35 a CUS package.

Signed-off-by: Tony Lindgren <tony@atomide.com>
15 years agoomap: mux: Add new style pin multiplexing data for 34xx
Tony Lindgren [Tue, 8 Dec 2009 18:17:10 +0000 (10:17 -0800)]
omap: mux: Add new style pin multiplexing data for 34xx

Add new style mux data for 34xx. This should also
work with 3630 easily by adding the processor subset
and ball data.

Note that this data is __initdata, and gets optimized
out except for the GPIO pins if CONFIG_OMAP_MUX
is not set.

Also note that this data uses omap3630 naming for
the SDMMC registers instead of 34xx naming with just
MMC.

Cc: Benoit Cousson <b-cousson@ti.com>
Signed-off-by: Paul Walmsley <paul@pwsan.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
15 years agoomap: mux: Add new style pin multiplexing code for omap3
Tony Lindgren [Tue, 8 Dec 2009 18:17:10 +0000 (10:17 -0800)]
omap: mux: Add new style pin multiplexing code for omap3

Initially only for 34xx. This code allows us to:

- Make the code more generic as the omap internal signal
  names can stay the same across omap generations for some
  devices

- Map mux registers to GPIO registers that is needed for
  dynamic muxing of pins during off-idle

- Override bootloader mux values via kernel cmdline using
  omap_mux=some.signa1=0x1234,some.signal2=0x1234

- View and set the mux registers via debugfs if
  CONFIG_DEBUG_FS is enabled

Cc: Mike Rapoport <mike@compulab.co.il>
Cc: Benoit Cousson <b-cousson@ti.com>
Signed-off-by: Paul Walmsley <paul@pwsan.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
15 years agoomap2: mux: intoduce omap_mux_{read,write}
Mike Rapoport [Tue, 8 Dec 2009 18:17:09 +0000 (10:17 -0800)]
omap2: mux: intoduce omap_mux_{read,write}

intoduce omap_mux_{read,write}

Signed-off-by: Mike Rapoport <mike@compulab.co.il>
Signed-off-by: Tony Lindgren <tony@atomide.com>
15 years agoMerge branch 'omap-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind...
Linus Torvalds [Tue, 8 Dec 2009 16:15:29 +0000 (08:15 -0800)]
Merge branch 'omap-for-linus' of git://git./linux/kernel/git/tmlind/linux-omap-2.6

* 'omap-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap-2.6: (149 commits)
  arm: omap: Add omap3_defconfig
  AM35xx: Defconfig for AM3517 EVM board
  AM35xx: Add support for AM3517 EVM board
  omap: 3630sdp: defconfig creation
  omap: 3630sdp: introduce 3630 sdp board support
  omap3: Add defconfig for IGEP v2 board
  omap3: Add minimal IGEP v2 support
  omap3: Add CompuLab CM-T35 defconfig
  omap3: Add CompuLab CM-T35 board support
  omap3: rx51: Add wl1251 wlan driver support
  omap3: rx51: Add SDRAM init
  omap1: Add default kernel configuration for Herald
  omap1: Add board support and LCD for HTC Herald
  omap: zoom2: update defconfig for LL_DEBUG_NONE
  omap: zoom3: defconfig creation
  omap3: zoom: Introduce zoom3 board support
  omap3: zoom: Drop i2c-1 speed to 2400
  omap3: zoom: rename zoom2 name to generic zoom
  omap3: zoom: split board file for software reuse
  omap3evm: MIgrate to smsc911x ethernet driver
  ...

Fix trivial conflict (two unrelated config options added next to each
other) in arch/arm/mach-omap2/Makefile

15 years agoMerge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/linux...
Linus Torvalds [Tue, 8 Dec 2009 16:13:35 +0000 (08:13 -0800)]
Merge branch 'for-linus' of git://git./linux/kernel/git/geert/linux-m68k

* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/linux-m68k:
  m68k: parport_mfc3 - Not makes it a bool before the comparison.
  m68k: don't export static inline functions
  fbdev: atafb - add palette register check
  m68k: Remove the BKL from sys_execve
  m68k: Cleanup linker scripts using new linker script macros.
  m68k: Make thread_info.h usable from assembly.
  m68knommu: define arch_has_single_step() and friends
  m68k: ptrace fixes
  m68k: use generic code for ptrace requests
  rtc: Add an RTC driver for the Ricoh RP5C01
  rtc: Add an RTC driver for the Oki MSM6242

15 years agoMerge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394...
Linus Torvalds [Tue, 8 Dec 2009 16:13:10 +0000 (08:13 -0800)]
Merge branch 'for-linus' of git://git./linux/kernel/git/ieee1394/linux1394-2.6

* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394-2.6:
  ieee1394: Use hweight32
  firewire: cdev: reduce stack usage by ioctl_dispatch
  firewire: ohci: 0 may be a valid DMA address
  firewire: core: WARN on wrong usage of core transaction functions
  firewire: core: optimize Topology Map creation
  firewire: core: clarify generate_config_rom usage
  firewire: optimize config ROM creation
  firewire: cdev: normalize variable names
  firewire: normalize style of queue_work wrappers
  firewire: cdev: fix memory leak in an error path

15 years agoMerge branch 'devel' of master.kernel.org:/home/rmk/linux-2.6-arm
Linus Torvalds [Tue, 8 Dec 2009 16:12:43 +0000 (08:12 -0800)]
Merge branch 'devel' of /home/rmk/linux-2.6-arm

* 'devel' of master.kernel.org:/home/rmk/linux-2.6-arm: (272 commits)
  Fix soc_common PCMCIA configuration
  ARM: 5827/1: SA1100: h3100/h3600: emit messages on failed gpio_request
  ARM: 5826/1: SA1100: h3100/h3600: always build htc-egpio driver
  ARM: 5825/1: SA1100: h3600: update defconfig
  ARM: 5824/1: SA1100: reuse h3600 PCMCIA driver on h3100
  ARM: 5823/1: SA1100: h3100/h3600: add support for gpio-keys
  ARM: 5822/1: SA1100: h3100/h3600: clean up #includes
  ARM: 5821/1: SA1100: h3100/h3600: revise copyright boilerplates
  ARM: 5820/1: SA1100: h3100/h3600: split h3600.c
  ARM: 5819/1: SA1100: h3100/h3600: merge h3600.h and h3600_gpio.h into h3xxx.h
  ARM: 5818/1: SA1100: h3100/h3600: drop old GPIO definitions
  ARM: 5817/1: SA1100: h3100/h3600: configure all unused gpios as inputs
  ARM: 5816/1: SA1100: h3600: remove IRQ_GPIO_* definitions
  ARM: 5815/1: SA1100: h3100/h3600: remove now unused assign_h3600_egpio handlers
  ARM: 5814/1: SA1100: h3100/h3600: convert all users of assign_h3600_egpio to gpiolib
  ARM: 5813/1: SA1100: h3100/h3600: add htc-egpio driver
  ARM: 5812/1: SA1100: h3100/h3600: separate machine-specific LCD helpers
  ARM: 5811/2: pcmcia: convert sa1100_h3600 driver to gpiolib
  ARM: 5799/1: SA1100: h3600: stop setting direction for LCD pins
  ARM: 5798/1: SA1100: h3600: remove unused cruft from h3600.h
  ...

15 years agoMerge branch 'i2c-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jdelvar...
Linus Torvalds [Tue, 8 Dec 2009 16:12:16 +0000 (08:12 -0800)]
Merge branch 'i2c-for-linus' of git://git./linux/kernel/git/jdelvare/staging

* 'i2c-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jdelvare/staging:
  i2c-stub: Documentation update
  i2c-stub: Allow user to disable some commands
  i2c-stub: Implement I2C block support
  i2c: Refactor for_each callbacks
  i2c-i801: Retry on lost arbitration
  i2c: Remove big kernel lock from i2cdev_open
  ics932s401: Clean up detect function
  i2c: Simplify i2c_detect_address
  i2c: Drop probe, ignore and force module parameters
  i2c: Add missing __devinit markers to old i2c adapter drivers
  i2c: Bus drivers don't have to support I2C_M_REV_DIR_ADDR
  i2c: Prevent priority inversion on top of bus lock
  i2c-voodoo3: Delete
  i2c-powermac: Drop temporary name buffer
  i2c-powermac: Include the i2c_adapter in struct pmac_i2c_bus
  i2c-powermac: Log errors
  i2c-powermac: Refactor i2c_powermac_smbus_xfer
  i2c-powermac: Reject unsupported I2C transactions
  i2c/chips: Move ds1682 to drivers/misc

15 years agoMerge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael...
Linus Torvalds [Tue, 8 Dec 2009 16:07:16 +0000 (08:07 -0800)]
Merge branch 'for-linus' of git://git./linux/kernel/git/rafael/suspend-2.6

* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/suspend-2.6:
  PM: Add flag for devices capable of generating run-time wake-up events
  PM / Runtime: Remove unnecessary braces in __pm_runtime_set_status()
  PM / Runtime: Make documentation of runtime_idle() agree with the code
  PM / Runtime: Ensure timer_expires is nonzero in pm_schedule_suspend()
  PM / Runtime: Use deferred_resume flag in pm_request_resume
  PM / Runtime: Export the PM runtime workqueue
  PM / Runtime: Fix lockdep warning in __pm_runtime_set_status()
  PM / Hibernate: Swap, use KERN_CONT
  PM / Hibernate: Shift remaining code from swsusp.c to hibernate.c
  PM / Hibernate: Move swap functions to kernel/power/swap.c.
  PM / freezer: Don't get over-anxious while waiting

15 years agoMerge branch 'kvm-updates/2.6.33' of git://git.kernel.org/pub/scm/virt/kvm/kvm
Linus Torvalds [Tue, 8 Dec 2009 16:02:38 +0000 (08:02 -0800)]
Merge branch 'kvm-updates/2.6.33' of git://git./virt/kvm/kvm

* 'kvm-updates/2.6.33' of git://git.kernel.org/pub/scm/virt/kvm/kvm: (84 commits)
  KVM: VMX: Fix comparison of guest efer with stale host value
  KVM: s390: Fix prefix register checking in arch/s390/kvm/sigp.c
  KVM: Drop user return notifier when disabling virtualization on a cpu
  KVM: VMX: Disable unrestricted guest when EPT disabled
  KVM: x86 emulator: limit instructions to 15 bytes
  KVM: s390: Make psw available on all exits, not just a subset
  KVM: x86: Add KVM_GET/SET_VCPU_EVENTS
  KVM: VMX: Report unexpected simultaneous exceptions as internal errors
  KVM: Allow internal errors reported to userspace to carry extra data
  KVM: Reorder IOCTLs in main kvm.h
  KVM: x86: Polish exception injection via KVM_SET_GUEST_DEBUG
  KVM: only clear irq_source_id if irqchip is present
  KVM: x86: disallow KVM_{SET,GET}_LAPIC without allocated in-kernel lapic
  KVM: x86: disallow multiple KVM_CREATE_IRQCHIP
  KVM: VMX: Remove vmx->msr_offset_efer
  KVM: MMU: update invlpg handler comment
  KVM: VMX: move CR3/PDPTR update to vmx_set_cr3
  KVM: remove duplicated task_switch check
  KVM: powerpc: Fix BUILD_BUG_ON condition
  KVM: VMX: Use shared msr infrastructure
  ...

Trivial conflicts due to new Kconfig options in arch/Kconfig and kernel/Makefile

15 years agoMerge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next-2.6
Linus Torvalds [Tue, 8 Dec 2009 15:55:01 +0000 (07:55 -0800)]
Merge git://git./linux/kernel/git/davem/net-next-2.6

* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next-2.6: (1815 commits)
  mac80211: fix reorder buffer release
  iwmc3200wifi: Enable wimax core through module parameter
  iwmc3200wifi: Add wifi-wimax coexistence mode as a module parameter
  iwmc3200wifi: Coex table command does not expect a response
  iwmc3200wifi: Update wiwi priority table
  iwlwifi: driver version track kernel version
  iwlwifi: indicate uCode type when fail dump error/event log
  iwl3945: remove duplicated event logging code
  b43: fix two warnings
  ipw2100: fix rebooting hang with driver loaded
  cfg80211: indent regulatory messages with spaces
  iwmc3200wifi: fix NULL pointer dereference in pmkid update
  mac80211: Fix TX status reporting for injected data frames
  ath9k: enable 2GHz band only if the device supports it
  airo: Fix integer overflow warning
  rt2x00: Fix padding bug on L2PAD devices.
  WE: Fix set events not propagated
  b43legacy: avoid PPC fault during resume
  b43: avoid PPC fault during resume
  tcp: fix a timewait refcnt race
  ...

Fix up conflicts due to sysctl cleanups (dead sysctl_check code and
CTL_UNNUMBERED removed) in
kernel/sysctl_check.c
net/ipv4/sysctl_net_ipv4.c
net/ipv6/addrconf.c
net/sctp/sysctl.c

15 years agoMerge git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-next-2.6
Linus Torvalds [Tue, 8 Dec 2009 15:48:23 +0000 (07:48 -0800)]
Merge git://git./linux/kernel/git/davem/sparc-next-2.6

* git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-next-2.6:
  sparc: Set UTS_MACHINE correctly.
  sparc,leon: init_leon srmmu cleanup
  sparc32: Remove early interrupt enable.
  sparc, leon: Added Aeroflex Gaisler entry in manufacturer_info structure
  sparc64: Faster early-boot framebuffer console.
  Revert "sparc: Make atomic locks raw"
  sparc: remove unused nfsd #includes
  sparc: Fixup last users of irq_chip->typename
  Added sparc_leon3_snooping_enabled() and converted extern inline to static inline
  No auxio on LEON
  apbuart: Use of_find_node_by_path to find root node.
  sparc: Replace old style lock initializer
  sparc: Make atomic locks raw
  apbuart: Fix build and missing driver unregister.
  apbuart: Kill dependency on deprecated Sparc-only PROM interfaces.
  apbuart: Fix build warning.
  sparc: Support for GRLIB APBUART serial port
  watchdog: Remove BKL from rio watchdog driver
  sparc: Remove BKL from apc
  sparc,leon: Sparc-Leon SMP support

15 years agoMerge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6
Linus Torvalds [Tue, 8 Dec 2009 15:47:46 +0000 (07:47 -0800)]
Merge branch 'for-linus' of git://git./linux/kernel/git/tiwai/sound-2.6

* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6: (294 commits)
  S3C64XX: Staticise platform data for PCM devices
  ASoC: Rename controls with a / in wm_hubs
  snd-fm801: autodetect SF64-PCR (tuner-only) card
  ALSA: tea575x-tuner: fix mute
  ASoC: au1x: dbdma2: plug memleak in pcm device creation error path
  ASoC: au1x: dbdma2: fix oops on soc device removal.
  ALSA: hda - Fix memory leaks in the previous patch
  ALSA: hda - Add ALC661/259, ALC892/888VD support
  ALSA: opti9xx: remove snd_opti9xx fields
  ALSA: aaci - Clean up duplicate code
  ALSA: usb - Fix mixer map for Hercules Gamesurround Muse Pocket LT
  ALSA: hda - Add position_fix quirk for HP dv3
  ALSA: hda - Add a pin-fix for FSC Amilo Pi1505
  ALSA: hda - Fix Cxt5047 test mode
  ASoC: pxa/raumfeld: adopt new snd_soc_dai_set_pll() API
  ASoC: sh: fsi: Add runtime PM support
  sh: ms7724se: Add runtime PM support for FSI
  ALSA: hda - Add a position_fix quirk for MSI Wind U115
  ALSA: opti-miro: add PnP detection
  ALSA: opti-miro: separate comon probing code
  ...

15 years agoMerge branch 'next-devicetree' of git://git.secretlab.ca/git/linux-2.6
Linus Torvalds [Tue, 8 Dec 2009 15:46:56 +0000 (07:46 -0800)]
Merge branch 'next-devicetree' of git://git.secretlab.ca/git/linux-2.6

* 'next-devicetree' of git://git.secretlab.ca/git/linux-2.6:
  of: merge of_find_all_nodes() implementations
  of: merge other miscellaneous prototypes
  of: merge of_*_flat_dt*() functions
  of: merge of_node_get(), of_node_put() and of_find_all_nodes()
  of: merge of_read_number() an of_read_ulong()
  of: merge of_node_*_flag() and set_node_proc_entry()
  of: merge struct boot_param_header from Microblaze and PowerPC
  of: add common header for flattened device tree representation
  of: Move OF_IS_DYNAMIC and OF_MARK_DYNAMIC macros to of.h
  of: merge struct device_node
  of: merge phandle, ihandle and struct property
  of: Rework linux/of.h and asm/prom.h include ordering

15 years agoMerge git://git.kernel.org/pub/scm/linux/kernel/git/ebiederm/sysctl-2.6
Linus Torvalds [Tue, 8 Dec 2009 15:38:50 +0000 (07:38 -0800)]
Merge git://git./linux/kernel/git/ebiederm/sysctl-2.6

* git://git.kernel.org/pub/scm/linux/kernel/git/ebiederm/sysctl-2.6: (43 commits)
  security/tomoyo: Remove now unnecessary handling of security_sysctl.
  security/tomoyo: Add a special case to handle accesses through the internal proc mount.
  sysctl: Drop & in front of every proc_handler.
  sysctl: Remove CTL_NONE and CTL_UNNUMBERED
  sysctl: kill dead ctl_handler definitions.
  sysctl: Remove the last of the generic binary sysctl support
  sysctl net: Remove unused binary sysctl code
  sysctl security/tomoyo: Don't look at ctl_name
  sysctl arm: Remove binary sysctl support
  sysctl x86: Remove dead binary sysctl support
  sysctl sh: Remove dead binary sysctl support
  sysctl powerpc: Remove dead binary sysctl support
  sysctl ia64: Remove dead binary sysctl support
  sysctl s390: Remove dead sysctl binary support
  sysctl frv: Remove dead binary sysctl support
  sysctl mips/lasat: Remove dead binary sysctl support
  sysctl drivers: Remove dead binary sysctl support
  sysctl crypto: Remove dead binary sysctl support
  sysctl security/keys: Remove dead binary sysctl support
  sysctl kernel: Remove binary sysctl logic
  ...

15 years agoMerge branch 'sa1100' into devel
Russell King [Sun, 6 Dec 2009 17:00:33 +0000 (17:00 +0000)]
Merge branch 'sa1100' into devel

15 years agoFix soc_common PCMCIA configuration
Russell King [Sun, 6 Dec 2009 16:58:50 +0000 (16:58 +0000)]
Fix soc_common PCMCIA configuration

Jonathan Cameron reports that building PCMCIA as modules doesn't work:

As module get a load of undefined symbols:
ERROR: "soc_pcmcia_request_irqs" [drivers/pcmcia/pxa2xx_stargate2.ko] undefined!
ERROR: "soc_pcmcia_free_irqs" [drivers/pcmcia/pxa2xx_stargate2.ko] undefined!
ERROR: "soc_pcmcia_enable_irqs" [drivers/pcmcia/pxa2xx_stargate2.ko] undefined!
ERROR: "soc_pcmcia_disable_irqs" [drivers/pcmcia/pxa2xx_stargate2.ko] undefined!
ERROR: "soc_pcmcia_add_one" [drivers/pcmcia/pxa2xx_base.ko] undefined!
ERROR: "soc_common_pcmcia_get_timing" [drivers/pcmcia/pxa2xx_base.ko] undefined!
ERROR: "soc_pcmcia_remove_one" [drivers/pcmcia/pxa2xx_base.ko] undefined!
make[1]: *** [__modpost] Error 1
make: *** [modules] Error 2

This is because soc_common tries to be built-in, but it should be a module.
Allow soc_common to be a module.

Reported-by: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
15 years agoMerge branch 'for-lak' of git://git.linuxtogo.org/home/thesing/collie into sa1100
Russell King [Sun, 6 Dec 2009 16:53:09 +0000 (16:53 +0000)]
Merge branch 'for-lak' of git://git.linuxtogo.org/home/thesing/collie into sa1100

15 years agoARM: 5827/1: SA1100: h3100/h3600: emit messages on failed gpio_request
Dmitry Artamonow [Fri, 27 Nov 2009 11:22:32 +0000 (12:22 +0100)]
ARM: 5827/1: SA1100: h3100/h3600: emit messages on failed gpio_request

Signed-off-by: Dmitry Artamonow <mad_soft@inbox.ru>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
15 years agoARM: 5826/1: SA1100: h3100/h3600: always build htc-egpio driver
Dmitry Artamonow [Fri, 27 Nov 2009 11:18:43 +0000 (12:18 +0100)]
ARM: 5826/1: SA1100: h3100/h3600: always build htc-egpio driver

Many features of h3100/h3600 (LCD, PCMCIA, Flash write, etc.)
depend on correct functioning of GPIO expander handled by htc-egpio
driver, so force its building in Kconfig.

Signed-off-by: Dmitry Artamonow <mad_soft@inbox.ru>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
15 years agoARM: 5825/1: SA1100: h3600: update defconfig
Dmitry Artamonow [Fri, 27 Nov 2009 11:15:01 +0000 (12:15 +0100)]
ARM: 5825/1: SA1100: h3600: update defconfig

Update defconfig to current kernel, enable support for iPAQ H3100
and following drivers: gpio-keys, htc-egpio, ide_cs.

Signed-off-by: Dmitry Artamonow <mad_soft@inbox.ru>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
15 years agoARM: 5824/1: SA1100: reuse h3600 PCMCIA driver on h3100
Dmitry Artamonow [Fri, 27 Nov 2009 11:13:47 +0000 (12:13 +0100)]
ARM: 5824/1: SA1100: reuse h3600 PCMCIA driver on h3100

Both iPAQs h3600 and h3100 share the same control
GPIOs for PCMCIA, so driver can be reused.

Signed-off-by: Dmitry Artamonow <mad_soft@inbox.ru>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
15 years agoARM: 5823/1: SA1100: h3100/h3600: add support for gpio-keys
Dmitry Artamonow [Fri, 27 Nov 2009 11:13:01 +0000 (12:13 +0100)]
ARM: 5823/1: SA1100: h3100/h3600: add support for gpio-keys

Add support for "Power" and "Action" (joystick center) buttons -
the only buttons on iPaq h3100/h3600 connected to GPIOs
(other buttons are controlled by microcontroller)
Also remove setting PWER for wakeup on Power button press -
gpio-keys driver will handle it.

Signed-off-by: Dmitry Artamonow <mad_soft@inbox.ru>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
15 years agoARM: 5822/1: SA1100: h3100/h3600: clean up #includes
Dmitry Artamonow [Fri, 27 Nov 2009 11:12:25 +0000 (12:12 +0100)]
ARM: 5822/1: SA1100: h3100/h3600: clean up #includes

After a code reorganization and following split, there's some #includes
now unused. Clean them up and sort remaining alphabetticaly where possible.

Compile tested.

Signed-off-by: Dmitry Artamonow <mad_soft@inbox.ru>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
15 years agoARM: 5821/1: SA1100: h3100/h3600: revise copyright boilerplates
Dmitry Artamonow [Fri, 27 Nov 2009 11:11:48 +0000 (12:11 +0100)]
ARM: 5821/1: SA1100: h3100/h3600: revise copyright boilerplates

Correct boilerplates after files split. Also shorten them a bit - use
standart GPL wording (as per http://lkml.org/lkml/2007/5/1/220) and
drop changelog, which only entry about h3800 support and abstracted
EGPIOs is just confusing now, as both of these features are gone.

Signed-off-by: Dmitry Artamonow <mad_soft@inbox.ru>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
15 years agoARM: 5820/1: SA1100: h3100/h3600: split h3600.c
Dmitry Artamonow [Fri, 27 Nov 2009 11:10:55 +0000 (12:10 +0100)]
ARM: 5820/1: SA1100: h3100/h3600: split h3600.c

Split common h3600.c into three separate files: h3100.c, h3600.c and
h3xxx.c (the latter contains common code for h3100/h3600)
Copyright boilerplates and #includes are copied intact and will be
cleaned up later.

Signed-off-by: Dmitry Artamonow <mad_soft@inbox.ru>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
15 years agoARM: 5819/1: SA1100: h3100/h3600: merge h3600.h and h3600_gpio.h into h3xxx.h
Dmitry Artamonow [Fri, 27 Nov 2009 11:09:25 +0000 (12:09 +0100)]
ARM: 5819/1: SA1100: h3100/h3600: merge h3600.h and h3600_gpio.h into h3xxx.h

Combine both headers into one, rename to h3xxx.h and change all
users accordingly.

Signed-off-by: Dmitry Artamonow <mad_soft@inbox.ru>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
15 years agoARM: 5818/1: SA1100: h3100/h3600: drop old GPIO definitions
Dmitry Artamonow [Fri, 27 Nov 2009 11:07:47 +0000 (12:07 +0100)]
ARM: 5818/1: SA1100: h3100/h3600: drop old GPIO definitions

As all existing code was converted to gpiolib, drop no more
used pre-gpiolib (bit-shifted) GPIO definintions.
Supply new gpiolib-friendly definitions for GPIOs which
don't have them yet.

Signed-off-by: Dmitry Artamonow <mad_soft@inbox.ru>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
15 years agoARM: 5817/1: SA1100: h3100/h3600: configure all unused gpios as inputs
Dmitry Artamonow [Fri, 27 Nov 2009 11:07:11 +0000 (12:07 +0100)]
ARM: 5817/1: SA1100: h3100/h3600: configure all unused gpios as inputs

After conversion to gpiolib there's still some GPIOs left, that get
configured in *_mach_init() as outputs (using direct operations
on GPCR/GPDR registers), but otherwise unused. These GPIOs are mainly
sound related and should be configured by corresponding driver once
it is written.

Drop this initialisation and configure all GPIOs as input.

Signed-off-by: Dmitry Artamonow <mad_soft@inbox.ru>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
15 years agoARM: 5816/1: SA1100: h3600: remove IRQ_GPIO_* definitions
Dmitry Artamonow [Fri, 27 Nov 2009 11:05:28 +0000 (12:05 +0100)]
ARM: 5816/1: SA1100: h3600: remove IRQ_GPIO_* definitions

As all the remaining users of these definitions
(in pcmcia/sa1100_h3600 driver) were converted to gpio_to_irq(),
they can be safely removed.

Signed-off-by: Dmitry Artamonow <mad_soft@inbox.ru>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
15 years agoARM: 5815/1: SA1100: h3100/h3600: remove now unused assign_h3600_egpio handlers
Dmitry Artamonow [Fri, 27 Nov 2009 11:03:52 +0000 (12:03 +0100)]
ARM: 5815/1: SA1100: h3100/h3600: remove now unused assign_h3600_egpio handlers

As all users of assign_h3600_egpio now converted to gpiolib, we
can safely remove all assign_h3600_egpio handling code and
definitions.

Signed-off-by: Dmitry Artamonow <mad_soft@inbox.ru>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
15 years agoARM: 5814/1: SA1100: h3100/h3600: convert all users of assign_h3600_egpio to gpiolib
Dmitry Artamonow [Fri, 27 Nov 2009 11:02:28 +0000 (12:02 +0100)]
ARM: 5814/1: SA1100: h3100/h3600: convert all users of assign_h3600_egpio to gpiolib

Use of gpio_request/gpio_free in some callbacks may look ugly, but
corresponding drivers (sa1100_serial and sa1100_fb) don't provide (yet)
init/exit hooks and registering these gpios in *_mach_init is also
not possible, because htc-gpio driver starts a bit later...

Signed-off-by: Dmitry Artamonow <mad_soft@inbox.ru>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
15 years agoARM: 5813/1: SA1100: h3100/h3600: add htc-egpio driver
Dmitry Artamonow [Fri, 27 Nov 2009 11:00:00 +0000 (12:00 +0100)]
ARM: 5813/1: SA1100: h3100/h3600: add htc-egpio driver

It will be used for future conversion of assign_h3600_egpio calls to
gpiolib.

Signed-off-by: Dmitry Artamonow <mad_soft@inbox.ru>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
15 years agoARM: 5812/1: SA1100: h3100/h3600: separate machine-specific LCD helpers
Dmitry Artamonow [Fri, 27 Nov 2009 10:58:35 +0000 (11:58 +0100)]
ARM: 5812/1: SA1100: h3100/h3600: separate machine-specific LCD helpers

h3100 and h3600 have different sets of LCD-controlling gpios,
which mapped to the same "abstracted" EGPIO.
As we plan to get rid of those abstracted egpios completely, we
need to separate these helper functions.

Signed-off-by: Dmitry Artamonow <mad_soft@inbox.ru>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
15 years agoARM: 5811/2: pcmcia: convert sa1100_h3600 driver to gpiolib
Dmitry Artamonow [Sun, 6 Dec 2009 16:12:49 +0000 (17:12 +0100)]
ARM: 5811/2: pcmcia: convert sa1100_h3600 driver to gpiolib

Convert all operations with GPLR/GPCR/GPSR to gpiolibs calls.
Also change all IRQ_GPIO* to gpio_to_irq(*GPIO*)

Signed-off-by: Dmitry Artamonow <mad_soft@inbox.ru>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
15 years agoARM: 5799/1: SA1100: h3600: stop setting direction for LCD pins
Dmitry Artamonow [Fri, 27 Nov 2009 10:11:00 +0000 (11:11 +0100)]
ARM: 5799/1: SA1100: h3600: stop setting direction for LCD pins

sa1100_fb driver handles this

Signed-off-by: Dmitry Artamonow <mad_soft@inbox.ru>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
15 years agoARM: 5798/1: SA1100: h3600: remove unused cruft from h3600.h
Dmitry Artamonow [Fri, 27 Nov 2009 10:10:59 +0000 (11:10 +0100)]
ARM: 5798/1: SA1100: h3600: remove unused cruft from h3600.h

PM_SUSPEND, PM_RESUME and machine_is_h3xxx() are not used anywhere in
kernel (checked with git grep), so it's safe to remove them.

Signed-off-by: Dmitry Artamonow <mad_soft@inbox.ru>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
15 years agoARM: 5796/1: SA1100: h3600: remove IRDA bits from serial PM callback
Dmitry Artamonow [Fri, 27 Nov 2009 10:10:58 +0000 (11:10 +0100)]
ARM: 5796/1: SA1100: h3600: remove IRDA bits from serial PM callback

IRDA is handled by separate sa1100-ir driver and has
nothing to do with sa1100_serial

Signed-off-by: Dmitry Artamonow <mad_soft@inbox.ru>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
15 years agoARM: 5797/1: SA1100: h3100/h3600: remove dead links from Kconfig help text
Dmitry Artamonow [Fri, 27 Nov 2009 10:10:57 +0000 (11:10 +0100)]
ARM: 5797/1: SA1100: h3100/h3600: remove dead links from Kconfig help text

Signed-off-by: Dmitry Artamonow <mad_soft@inbox.ru>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
15 years agoARM: 5795/1: SA1100: h3100/h3600: mark *_mach_init functions as __init
Dmitry Artamonow [Fri, 27 Nov 2009 10:06:46 +0000 (11:06 +0100)]
ARM: 5795/1: SA1100: h3100/h3600: mark *_mach_init functions as __init

Signed-off-by: Dmitry Artamonow <mad_soft@inbox.ru>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
15 years agoARM: iPAQ: no need to set PWER_RTC
Russell King [Tue, 6 Oct 2009 15:40:24 +0000 (16:40 +0100)]
ARM: iPAQ: no need to set PWER_RTC

The rtc-sa1100 driver takes care of this.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
15 years agoARM: iPAQ: move serial port support functions
Russell King [Tue, 6 Oct 2009 14:16:27 +0000 (15:16 +0100)]
ARM: iPAQ: move serial port support functions

No point calling sa1100_register_uart_fns early - these aren't
used until late in the boot sequence.  Also convert to gpiolib
support.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
15 years agoARM: iPAQ: convert H3100 IrDA to use generic gpio support
Russell King [Tue, 6 Oct 2009 13:36:05 +0000 (14:36 +0100)]
ARM: iPAQ: convert H3100 IrDA to use generic gpio support

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
15 years agoARM: iPAQ: provide a way to setup platform-controlled GPIOs
Russell King [Tue, 6 Oct 2009 13:35:16 +0000 (14:35 +0100)]
ARM: iPAQ: provide a way to setup platform-controlled GPIOs

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
15 years agoARM: iPAQ: separate IrDA machine specifics
Russell King [Tue, 6 Oct 2009 13:22:23 +0000 (14:22 +0100)]
ARM: iPAQ: separate IrDA machine specifics

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
15 years agoARM: h3600: provide each iPAQ machine type with own init function
Russell King [Tue, 6 Oct 2009 13:19:44 +0000 (14:19 +0100)]
ARM: h3600: provide each iPAQ machine type with own init function

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
15 years agoARM: sa11x0: convert set_xxx_data() to register_xxx()
Russell King [Tue, 6 Oct 2009 13:55:53 +0000 (14:55 +0100)]
ARM: sa11x0: convert set_xxx_data() to register_xxx()

Only register devices if we have platform data for those which require
platform data.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
15 years agoi2c-stub: Documentation update
Jean Delvare [Sun, 6 Dec 2009 16:06:30 +0000 (17:06 +0100)]
i2c-stub: Documentation update

There is nothing sensors-specific to i2c-stub.

Signed-off-by: Jean Delvare <khali@linux-fr.org>
15 years agoi2c-stub: Allow user to disable some commands
Jean Delvare [Sun, 6 Dec 2009 16:06:29 +0000 (17:06 +0100)]
i2c-stub: Allow user to disable some commands

Add a module parameter to override the functionality bitfield. This
lets the user disable some commands. This can be used to force a chip
driver to take different code paths.

Signed-off-by: Jean Delvare <khali@linux-fr.org>
15 years agoi2c-stub: Implement I2C block support
Jean Delvare [Sun, 6 Dec 2009 16:06:28 +0000 (17:06 +0100)]
i2c-stub: Implement I2C block support

This is required to test some drivers, for example at24.

Signed-off-by: Jean Delvare <khali@linux-fr.org>
15 years agoi2c: Refactor for_each callbacks
Jean Delvare [Sun, 6 Dec 2009 16:06:27 +0000 (17:06 +0100)]
i2c: Refactor for_each callbacks

Functions i2c_do_add_adapter() and __attach_adapter() do essentially
the same thing, differing only in how the parameters are passed. Same
for i2c_do_add_adapter() and __detach_adapter(). Introduce wrappers to
normalize the parameters, so that we do not have to duplicate the
code.

Signed-off-by: Jean Delvare <khali@linux-fr.org>
Cc: David Brownell <dbrownell@users.sourceforge.net>
15 years agoi2c-i801: Retry on lost arbitration
Jean Delvare [Sun, 6 Dec 2009 16:06:27 +0000 (17:06 +0100)]
i2c-i801: Retry on lost arbitration

The Intel 82801 is sometimes used on systems with a BMC connected. The
BMC can access the SMBus, resulting in lost arbitration for the 82801.
We should let i2c-core retry transactions for us in this case.

Signed-off-by: Jean Delvare <khali@linux-fr.org>
15 years agoi2c: Remove big kernel lock from i2cdev_open
Vincent Sanders [Sun, 6 Dec 2009 16:06:26 +0000 (17:06 +0100)]
i2c: Remove big kernel lock from i2cdev_open

The BKL is held over a kmalloc so cannot protect anything beyond that.
The two calls before the kmalloc have their own locking.
Improve device open function by removing the now unnecessary ret variable

Signed-off-by: Vincent Sanders <vince@simtec.co.uk>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Jean Delvare <khali@linux-fr.org>
15 years agoics932s401: Clean up detect function
Jean Delvare [Sun, 6 Dec 2009 16:06:26 +0000 (17:06 +0100)]
ics932s401: Clean up detect function

As kind is now hard-coded to -1, there is room for code clean-ups.

Signed-off-by: Jean Delvare <khali@linux-fr.org>
Acked-by: "Darrick J. Wong" <djwong@us.ibm.com>
15 years agoi2c: Simplify i2c_detect_address
Jean Delvare [Sun, 6 Dec 2009 16:06:25 +0000 (17:06 +0100)]
i2c: Simplify i2c_detect_address

The kind parameter of i2c_detect_address() always has value -1, so we
can get rid of it.

Next step is to update all i2c detect callback functions to get rid of
this now useless parameter.

Signed-off-by: Jean Delvare <khali@linux-fr.org>
15 years agoi2c: Drop probe, ignore and force module parameters
Jean Delvare [Sun, 6 Dec 2009 16:06:24 +0000 (17:06 +0100)]
i2c: Drop probe, ignore and force module parameters

The legacy probe and force module parameters are obsolete now, the
same can be achieved using the new_device sysfs interface, which is
both more flexible and cheaper (it is implemented by i2c-core rather
than replicated in every driver module.)

The legacy ignore module parameters can be dropped as well. Ignoring
can be done by instantiating a "dummy" device at the problematic
address.

This is the first step of a huge cleanup to i2c-core's i2c_detect
function, i2c.h's I2C_CLIENT_INSMOD* macros, and all drivers that made
use of them.

Signed-off-by: Jean Delvare <khali@linux-fr.org>
15 years agoi2c: Add missing __devinit markers to old i2c adapter drivers
Jean Delvare [Sun, 6 Dec 2009 16:06:23 +0000 (17:06 +0100)]
i2c: Add missing __devinit markers to old i2c adapter drivers

These _setup functions are called from _probe so they can be marked
__devinit.

Signed-off-by: Jean Delvare <khali@linux-fr.org>
15 years agoi2c: Bus drivers don't have to support I2C_M_REV_DIR_ADDR
Jean Delvare [Sun, 6 Dec 2009 16:06:22 +0000 (17:06 +0100)]
i2c: Bus drivers don't have to support I2C_M_REV_DIR_ADDR

I2C bus drivers don't have to support I2C_M_REV_DIR_ADDR. It is a
deviation from the I2C specification, which only makes sense to
implement when really needed.

Signed-off-by: Jean Delvare <khali@linux-fr.org>
Cc: Ben Dooks <ben-linux@fluff.org>
15 years agoi2c: Prevent priority inversion on top of bus lock
Mika Kuoppala [Sun, 6 Dec 2009 16:06:22 +0000 (17:06 +0100)]
i2c: Prevent priority inversion on top of bus lock

Low priority thread holding the i2c bus mutex could block higher
priority threads to access the bus resulting in unacceptable
latencies. Change the mutex type to rt_mutex preventing priority
inversion.

Tested-by: Peter Ujfalusi <peter.ujfalusi@nokia.com>
Signed-off-by: Mika Kuoppala <mika.kuoppala@nokia.com>
Signed-off-by: Jean Delvare <khali@linux-fr.org>
15 years agoi2c-voodoo3: Delete
Jean Delvare [Sun, 6 Dec 2009 16:06:21 +0000 (17:06 +0100)]
i2c-voodoo3: Delete

Superseded by tdfxfb. I2C/DDC support used to live in a separate
driver but this caused driver conflicts.

Signed-off-by: Jean Delvare <khali@linux-fr.org>
Cc: Krzysztof Helt <krzysztof.h1@wp.pl>
15 years agoi2c-powermac: Drop temporary name buffer
Jean Delvare [Sun, 6 Dec 2009 16:06:20 +0000 (17:06 +0100)]
i2c-powermac: Drop temporary name buffer

We no longer need to write the adapter name to a temporary buffer.
We can write it directly to the i2c_adapter's name field. This is
more efficient.

Signed-off-by: Jean Delvare <khali@linux-fr.org>
Tested-by: Michel Daenzer <michel@daenzer.net>
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
15 years agoi2c-powermac: Include the i2c_adapter in struct pmac_i2c_bus
Jean Delvare [Sun, 6 Dec 2009 16:06:19 +0000 (17:06 +0100)]
i2c-powermac: Include the i2c_adapter in struct pmac_i2c_bus

Include the i2c_adapter in struct pmac_i2c_bus. This avoids memory
fragmentation and allows for several code cleanups.

Signed-off-by: Jean Delvare <khali@linux-fr.org>
Tested-by: Michel Daenzer <michel@daenzer.net>
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
15 years agoi2c-powermac: Log errors
Jean Delvare [Sun, 6 Dec 2009 16:06:18 +0000 (17:06 +0100)]
i2c-powermac: Log errors

Log errors when they happen, otherwise we have no idea what went
wrong.

Signed-off-by: Jean Delvare <khali@linux-fr.org>
Tested-by: Michel Daenzer <michel@daenzer.net>
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Cc: Paul Mackerras <paulus@samba.org>
15 years agoi2c-powermac: Refactor i2c_powermac_smbus_xfer
Jean Delvare [Sun, 6 Dec 2009 16:06:17 +0000 (17:06 +0100)]
i2c-powermac: Refactor i2c_powermac_smbus_xfer

I wanted to add some error logging to the i2c-powermac driver, but
found that it was very difficult due to the way the
i2c_powermac_smbus_xfer function is organized. Refactor the code in
this function so that each low-level function is only called once.

Signed-off-by: Jean Delvare <khali@linux-fr.org>
Tested-by: Michel Daenzer <michel@daenzer.net>
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Cc: Paul Mackerras <paulus@samba.org>
15 years agoi2c-powermac: Reject unsupported I2C transactions
Jean Delvare [Sun, 6 Dec 2009 16:06:17 +0000 (17:06 +0100)]
i2c-powermac: Reject unsupported I2C transactions

The i2c-powermac driver doesn't support arbitrary multi-message I2C
transactions, only SMBus ones. Make it clear by returning an error if
a multi-message I2C transaction is attempted. This is better than only
processing the first message, because most callers won't recover from
the short transaction. Anyone wishing to issue multi-message
transactions should use the SMBus API instead of the raw I2C API.

Signed-off-by: Jean Delvare <khali@linux-fr.org>
Tested-by: Michel Daenzer <michel@daenzer.net>
Acked-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Cc: Paul Mackerras <paulus@samba.org>
15 years agoi2c/chips: Move ds1682 to drivers/misc
Wolfram Sang [Sun, 6 Dec 2009 16:06:16 +0000 (17:06 +0100)]
i2c/chips: Move ds1682 to drivers/misc

As i2c/chips is deprecated, move ds1682 to a more apropriate location.
Build tested.

Signed-off-by: Wolfram Sang <w.sang@pengutronix.de>
Acked-by: Grant Likely <grant.likely@secretlab.ca>
Signed-off-by: Jean Delvare <khali@linux-fr.org>
15 years agoPM: Add flag for devices capable of generating run-time wake-up events
Rafael J. Wysocki [Thu, 3 Dec 2009 20:19:18 +0000 (21:19 +0100)]
PM: Add flag for devices capable of generating run-time wake-up events

Apparently, there are devices that can wake up the system from sleep
states and yet are incapable of generating wake-up events at run
time.  Thus, introduce a flag indicating if given device is capable
of generating run-time wake-up events.

Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
15 years agoPM / Runtime: Remove unnecessary braces in __pm_runtime_set_status()
Rafael J. Wysocki [Thu, 3 Dec 2009 20:04:41 +0000 (21:04 +0100)]
PM / Runtime: Remove unnecessary braces in __pm_runtime_set_status()

Some braces in __pm_runtime_set_status() are not necessary, so
remove them.

Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
15 years agoPM / Runtime: Make documentation of runtime_idle() agree with the code
Rafael J. Wysocki [Thu, 3 Dec 2009 20:04:08 +0000 (21:04 +0100)]
PM / Runtime: Make documentation of runtime_idle() agree with the code

Currently the ->runtime_idle() callback is documented as having no
return value, but in fact it returns int.  Although its return value
is ignored at the PM core level, it may be used by bus type routines
executing the drivers' ->runtime_idle() callbacks.

Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
Reported-by: Alan Stern <stern@rowland.harvard.edu>
15 years agoPM / Runtime: Ensure timer_expires is nonzero in pm_schedule_suspend()
Rafael J. Wysocki [Thu, 3 Dec 2009 20:03:57 +0000 (21:03 +0100)]
PM / Runtime: Ensure timer_expires is nonzero in pm_schedule_suspend()

The runtime PM core code assumes that dev->power.timer_expires is
nonzero when the timer is scheduled, but it may become zero
incidentally in pm_schedule_suspend().  Prevent this from happening
by bumping dev->power.timer_expires up to 1 if it's 0 before calling
mod_timer().

Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
Reported-by: Alan Stern <stern@rowland.harvard.edu>
15 years agoPM / Runtime: Use deferred_resume flag in pm_request_resume
Alan Stern [Thu, 3 Dec 2009 19:22:34 +0000 (20:22 +0100)]
PM / Runtime: Use deferred_resume flag in pm_request_resume

This patch (as1307) adds a small optimization to
__pm_request_resume().  If the device is currently being suspended,
there's no need to queue a work routine to resume it.  Setting the
deferred_resume flag will suffice.  (There's also a minor improvement
to the function's code layout: An unnecessary "else" is removed.)

Also, the patch clarifies the usage of the deferred_resume flag.  It
is meaningful only while a suspend is in progress, so it should be
cleared just before a suspend starts, not just after one ends.

Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
15 years agoPM / Runtime: Export the PM runtime workqueue
Alan Stern [Thu, 3 Dec 2009 19:22:21 +0000 (20:22 +0100)]
PM / Runtime: Export the PM runtime workqueue

This patch (as1306) exports the PM runtime workqueue for use by
loadable modules.

Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
15 years agoPM / Runtime: Fix lockdep warning in __pm_runtime_set_status()
Rafael J. Wysocki [Thu, 3 Dec 2009 19:21:21 +0000 (20:21 +0100)]
PM / Runtime: Fix lockdep warning in __pm_runtime_set_status()

Lockdep complains about taking the parent lock in
__pm_runtime_set_status(), so mark it as nested.

Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
Reported-by: Alan Stern <stern@rowland.harvard.edu>
Cc: stable@kernel.org
15 years agoPM / Hibernate: Swap, use KERN_CONT
Jiri Slaby [Sun, 6 Dec 2009 15:16:24 +0000 (16:16 +0100)]
PM / Hibernate: Swap, use KERN_CONT

Use KERN_CONT in save_image() for printks, so that anybody won't
try to add a loglevel.

Signed-off-by: Jiri Slaby <jirislaby@gmail.com>
Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
15 years agoPM / Hibernate: Shift remaining code from swsusp.c to hibernate.c
Nigel Cunningham [Sun, 6 Dec 2009 15:16:07 +0000 (16:16 +0100)]
PM / Hibernate: Shift remaining code from swsusp.c to hibernate.c

Shift the remaining declaration of the variable in_suspend and the
function swsusp_show_speed from swsusp.c to hibernate.c, and delete
swsusp.c.

Signed-off-by: Nigel Cunningham <nigel@tuxonice.net>
Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
15 years agoPM / Hibernate: Move swap functions to kernel/power/swap.c.
Nigel Cunningham [Sun, 6 Dec 2009 15:15:53 +0000 (16:15 +0100)]
PM / Hibernate: Move swap functions to kernel/power/swap.c.

Move hibernation code's functions for allocating and freeing swap
from swsusp.c to swap.c, which is where you'd expect to find them.

Signed-off-by: Nigel Cunningham <nigel@tuxonice.net>
Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
15 years agoMerge branch 'master' into for-linus
Rafael J. Wysocki [Sun, 6 Dec 2009 15:06:11 +0000 (16:06 +0100)]
Merge branch 'master' into for-linus

15 years agom68k: parport_mfc3 - Not makes it a bool before the comparison.
Roel Kluin [Wed, 18 Nov 2009 22:54:12 +0000 (23:54 +0100)]
m68k: parport_mfc3 - Not makes it a bool before the comparison.

Signed-off-by: Roel Kluin <roel.kluin@gmail.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>