27 May, 2011

40 commits

  • On most architectures division is an expensive operation and accessing an
    element currently requires four of them. This performance penalty
    effectively precludes flex arrays from being used on any kind of fast
    path. However, two of these divisions can be handled at creation time and
    the others can be replaced by a reciprocal divide, completely avoiding
    real divisions on access.

    [eparis@redhat.com: rebase on top of changes to support 0 len elements]
    [eparis@redhat.com: initialize part_nr when array fits entirely in base]
    Signed-off-by: Jesse Gross
    Signed-off-by: Eric Paris
    Cc: Dave Hansen
    Cc: David Rientjes
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Jesse Gross
     
  • They have no meaning.

    Signed-off-by: KOSAKI Motohiro
    Cc: Hirokazu Takata
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    KOSAKI Motohiro
     
  • spin_lock_irqsave() requires unsigned long.

    Signed-off-by: KOSAKI Motohiro
    Cc: Hirokazu Takata
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    KOSAKI Motohiro
     
  • We plan to remove cpus_xx() old cpumask APIs later. Also, we plan to
    change mm_cpu_mask() implementation, allocate only nr_cpu_ids, thus
    *mm_cpu_mask() is dangerous operation.

    Then, this patch convert them.

    Signed-off-by: KOSAKI Motohiro
    Cc: Hirokazu Takata
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    KOSAKI Motohiro
     
  • alpha allmodconfig:

    drivers/bcma/host_pci.c: In function 'bcma_host_pci_probe':
    drivers/bcma/host_pci.c:102: error: implicit declaration of function 'kzalloc'
    drivers/bcma/host_pci.c:102: warning: assignment makes pointer from integer without a cast

    Cc:
    Cc: John W. Linville
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Andrew Morton
     
  • alpha allmodconfig:

    drivers/video/mb862xx/mb862xxfbdrv.c: In function 'mb862xxfb_ioctl':
    drivers/video/mb862xx/mb862xxfbdrv.c:323: error: implicit declaration of function 'copy_to_user'
    drivers/video/mb862xx/mb862xxfbdrv.c:327: error: implicit declaration of function 'copy_from_user'

    Cc: Paul Mundt
    Cc: Anatolij Gustschin
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Andrew Morton
     
  • Since this cred was not created with copy_creds(), it needs to get
    initialized. Otherwise use of syscall(__NR_keyctl, KEYCTL_SESSION_TO_PARENT);
    can lead to a NULL deref. Thanks to Robert for finding this.

    But introduced by commit 47a150edc2a ("Cache user_ns in struct cred").

    Signed-off-by: Serge E. Hallyn
    Reported-by: Robert Święcki
    Cc: David Howells
    Cc: stable@kernel.org (2.6.39)
    Signed-off-by: Linus Torvalds

    Serge E. Hallyn
     
  • * 'trivial' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild-2.6:
    gfs2: Drop __TIME__ usage
    isdn/diva: Drop __TIME__ usage
    atm: Drop __TIME__ usage
    dlm: Drop __TIME__ usage
    wan/pc300: Drop __TIME__ usage
    parport: Drop __TIME__ usage
    hdlcdrv: Drop __TIME__ usage
    baycom: Drop __TIME__ usage
    pmcraid: Drop __DATE__ usage
    edac: Drop __DATE__ usage
    rio: Drop __DATE__ usage
    scsi/wd33c93: Drop __TIME__ usage
    scsi/in2000: Drop __TIME__ usage
    aacraid: Drop __TIME__ usage
    media/cx231xx: Drop __TIME__ usage
    media/radio-maxiradio: Drop __TIME__ usage
    nozomi: Drop __TIME__ usage
    cyclades: Drop __TIME__ usage

    Linus Torvalds
     
  • * 'x86-vdso-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
    x86: vdso: Remove unused variable
    x86-64: Optimize vDSO time()
    x86-64: Add time to vDSO
    x86-64: Turn off -pg and turn on -foptimize-sibling-calls for vDSO
    x86-64: Move vread_tsc into a new file with sensible options
    x86-64: Vclock_gettime(CLOCK_MONOTONIC) can't ever see nsec < 0
    x86-64: Don't generate cmov in vread_tsc
    x86-64: Remove unnecessary barrier in vread_tsc
    x86-64: Clean up vdso/kernel shared variables

    Linus Torvalds
     
  • …nel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip

    * 'core-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
    seqlock: Get rid of SEQLOCK_UNLOCKED

    * 'irq-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
    irq: Remove smp_affinity_list when unregister irq proc

    Linus Torvalds
     
  • * 'gpio/next' of git://git.secretlab.ca/git/linux-2.6:
    gpio/via: rename VIA local config struct
    basic_mmio_gpio: split into a gpio library and platform device
    gpio: remove some legacy comments in build files
    gpio: add trace events for setting direction and value
    gpio/pca953x: Use handle_simple_irq instead of handle_edge_irq
    gpiolib: export gpiochip_find
    gpio: remove redundant Kconfig depends on GPIOLIB
    basic_mmio_gpio: convert to non-__raw* accessors
    basic_mmio_gpio: support direction registers
    basic_mmio_gpio: support different input/output registers
    basic_mmio_gpio: detect output method at probe time
    basic_mmio_gpio: request register regions
    basic_mmio_gpio: allow overriding number of gpio
    basic_mmio_gpio: convert to platform_{get,set}_drvdata()
    basic_mmio_gpio: remove runtime width/endianness evaluation

    Linus Torvalds
     
  • * 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/sameo/mfd-2.6: (57 commits)
    regulator: Fix 88pm8607.c printk format warning
    input: Add support for Qualcomm PMIC8XXX power key
    input: Add Qualcomm pm8xxx keypad controller driver
    mfd: Add omap-usbhs runtime PM support
    mfd: Fix ASIC3 SD Host Controller Configuration size
    mfd: Fix omap_usbhs_alloc_children error handling
    mfd: Fix omap usbhs crash when rmmoding ehci or ohci
    mfd: Add ASIC3 LED support
    leds: Add ASIC3 LED support
    mfd: Update twl4030-code maintainer e-mail address
    mfd: Correct the name and bitmask for ab8500-gpadc BTempPullUp
    mfd: Add manual ab8500-gpadc batt temp activation for AB8500 3.0
    mfd: Provide ab8500-core enumerators for chip cuts
    mfd: Check twl4030-power remove script error condition after i2cwrite
    mfd: Fix twl6030 irq definitions
    mfd: Add phoenix lite (twl6025) support to twl6030
    mfd: Avoid to use constraint name in 88pm860x regulator driver
    mfd: Remove checking on max8925 regulator[0]
    mfd: Remove unused parameter from 88pm860x API
    mfd: Avoid to allocate 88pm860x static platform data
    ...

    Linus Torvalds
     
  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband:
    RDMA/cma: Save PID of ID's owner
    RDMA/cma: Add support for netlink statistics export
    RDMA/cma: Pass QP type into rdma_create_id()
    RDMA: Update exported headers list
    RDMA/cma: Export enum cma_state in
    RDMA/nes: Add a check for strict_strtoul()
    RDMA/cxgb3: Don't post zero-byte read if endpoint is going away
    RDMA/cxgb4: Use completion objects for event blocking
    IB/srp: Fix integer -> pointer cast warnings
    IB: Add devnode methods to cm_class and umad_class
    IB/mad: Return EPROTONOSUPPORT when an RDMA device lacks the QP required
    IB/uverbs: Add devnode method to set path/mode
    RDMA/ucma: Add .nodename/.mode to tell userspace where to create device node
    RDMA: Add netlink infrastructure
    RDMA: Add error handling to ib_core_init()

    Linus Torvalds
     
  • * 'spi/next' of git://git.secretlab.ca/git/linux-2.6:
    spi/amba-pl022: work in polling or interrupt mode if pl022_dma_probe fails
    spi/spi_s3c24xx: Use spi_bitbang_stop instead of spi_unregister_master in s3c24xx_spi_remove
    spi/spi_nuc900: Use spi_bitbang_stop instead of spi_unregister_master in nuc900_spi_remove
    spi/spi_tegra: use spi_unregister_master() instead of spi_master_put()
    spi/spi_sh: use spi_unregister_master instead of spi_master_put in remove path
    spi: Use void pointers for data in simple SPI I/O operations
    spi/pl022: use cpu_relax in the busy loop
    spi/pl022: mark driver non-experimental
    spi/pl022: timeout on polled transfer v2
    spi/dw_spi: improve the interrupt mode with the batch ops
    spi/dw_spi: change poll mode transfer from byte ops to batch ops
    spi/dw_spi: remove the un-necessary flush()
    spi/dw_spi: unify the low level read/write routines

    Linus Torvalds
     
  • * 'omap-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap-2.6: (33 commits)
    OMAP3: PM: Boot message is not an error, and not helpful, remove it
    OMAP3: cpuidle: change the power domains modes determination logic
    OMAP3: cpuidle: code rework for improved readability
    OMAP3: cpuidle: re-organize the C-states data
    OMAP3: clean-up mach specific cpuidle data structures
    OMAP3 cpuidle: remove useless SDP specific timings
    usb: otg: OMAP4430: Powerdown the internal PHY when USB is disabled
    usb: otg: OMAP4430: Fixing the omap4430_phy_init function
    usb: musb: am35x: fix compile error when building am35x
    usb: musb: OMAP4430: Power down the PHY during board init
    omap: drop board-igep0030.c
    omap: igep0020: add support for IGEP3
    omap: igep0020: minor refactoring
    omap: igep0020: name refactoring for future merge with IGEP3
    omap: Remove support for omap2evm
    arm: omap2plus: GPIO cleanup
    omap: musb: introduce default board config
    omap: move detection of NAND CS to common-board-devices
    omap: use common initialization for PMIC i2c bus
    omap: consolidate touch screen initialization among different boards
    ...

    Linus Torvalds
     
  • * 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc:
    powerpc/4xx: Adding PCIe MSI support
    powerpc: Fix irq_free_virt by adjusting bounds before loop
    powerpc/irq: Protect irq_radix_revmap_lookup against irq_free_virt
    powerpc/irq: Check desc in handle_one_irq and expand generic_handle_irq
    powerpc/irq: Always free duplicate IRQ_LEGACY hosts
    powerpc/irq: Remove stale and misleading comment
    powerpc/cell: Rename ipi functions to match current abstractions
    powerpc/cell: Use common smp ipi actions
    Remove unused MSG_ flags in linux/smp.h
    powerpc/pseries: Update MAX_HCALL_OPCODE to reflect page coalescing
    powerpc/oprofile: Handle events that raise an exception without overflowing
    powerpc/ftrace: Implement raw syscall tracepoints on PowerPC

    Linus Torvalds
     
  • I stupidly broke the case of CONFIG_HUGETLBFS=n when doing the
    conversion to vm_flags_t in commit ca16d140af91 ("mm: don't access
    vm_flags as 'int'"). And my 'allyesconfig' build didn't find it, for
    obvious reasons..

    Include in . The problem could have
    been avoided by just turning the hugetlb_file_setup() error wrapper into
    a macro, but mm_types.h is a reasonable include in this file.

    Reported-by: Richard -rw- Weinberger
    Signed-off-by: Linus Torvalds

    Linus Torvalds
     
  • * 'linux-next' of git://git.kernel.org/pub/scm/linux/kernel/git/jlbec/ocfs2: (28 commits)
    Ocfs2: Teach local-mounted ocfs2 to handle unwritten_extents correctly.
    ocfs2/dlm: Do not migrate resource to a node that is leaving the domain
    ocfs2/dlm: Add new dlm message DLM_BEGIN_EXIT_DOMAIN_MSG
    Ocfs2/move_extents: Set several trivial constraints for threshold.
    Ocfs2/move_extents: Let defrag handle partial extent moving.
    Ocfs2/move_extents: move/defrag extents within a certain range.
    Ocfs2/move_extents: helper to calculate the defraging length in one run.
    Ocfs2/move_extents: move entire/partial extent.
    Ocfs2/move_extents: helpers to update the group descriptor and global bitmap inode.
    Ocfs2/move_extents: helper to probe a proper region to move in an alloc group.
    Ocfs2/move_extents: helper to validate and adjust moving goal.
    Ocfs2/move_extents: find the victim alloc group, where the given #blk fits.
    Ocfs2/move_extents: defrag a range of extent.
    Ocfs2/move_extents: move a range of extent.
    Ocfs2/move_extents: lock allocators and reserve metadata blocks and data clusters for extents moving.
    Ocfs2/move_extents: Add basic framework and source files for extent moving.
    Ocfs2/move_extents: Adding new ioctl code 'OCFS2_IOC_MOVE_EXT' to ocfs2.
    Ocfs2/refcounttree: Publicize couple of funcs from refcounttree.c
    Ocfs2: Add a new code 'OCFS2_INFO_FREEFRAG' for o2info ioctl.
    Ocfs2: Add a new code 'OCFS2_INFO_FREEINODE' for o2info ioctl.
    ...

    Linus Torvalds
     
  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/djm/tmem:
    xen: cleancache shim to Xen Transcendent Memory
    ocfs2: add cleancache support
    ext4: add cleancache support
    btrfs: add cleancache support
    ext3: add cleancache support
    mm/fs: add hooks to support cleancache
    mm: cleancache core ops functions and config
    fs: add field to superblock to support cleancache
    mm/fs: cleancache documentation

    Fix up trivial conflict in fs/btrfs/extent_io.c due to includes

    Linus Torvalds
     
  • * 'for-linus' of git://oss.sgi.com/xfs/xfs:
    xfs: correctly decrement the extent buffer index in xfs_bmap_del_extent
    xfs: check for valid indices in xfs_iext_get_ext and xfs_iext_idx_to_irec
    xfs: fix up asserts in xfs_iflush_fork
    xfs: do not do pointer arithmetic on extent records
    xfs: do not use unchecked extent indices in xfs_bunmapi
    xfs: do not use unchecked extent indices in xfs_bmapi
    xfs: do not use unchecked extent indices in xfs_bmap_add_extent_*
    xfs: remove if_lastex
    xfs: remove the unused XFS_BMAPI_RSVBLOCKS flag
    xfs: do not discard alloc btree blocks
    xfs: add online discard support

    Linus Torvalds
     
  • Fix printk format warning (seen on x86_64) and change to unsigned
    output format:

    drivers/regulator/88pm8607.c:417: warning: format '%d' expects type 'int', but argument 3 has type 'resource_size_t'

    Signed-off-by: Randy Dunlap
    Acked-by: Mark Brown
    Signed-off-by: Samuel Ortiz

    Randy Dunlap
     
  • Add support for PMIC8XXX power key driven over dedicated
    KYPD_PWR_N pin.

    Acked-by: Dmitry Torokhov
    Signed-off-by: Trilok Soni
    Signed-off-by: Anirudh Ghayal
    Signed-off-by: Samuel Ortiz

    Trilok Soni
     
  • Add Qualcomm PMIC8XXX based keypad controller driver
    supporting upto 18x8 matrix configuration.

    Acked-by: Dmitry Torokhov
    Signed-off-by: Trilok Soni
    Signed-off-by: Anirudh Ghayal
    Signed-off-by: Samuel Ortiz

    Trilok Soni
     
  • The usbhs core driver does not enable/disable the interface and
    functional clocks; These clocks are handled by hwmod and runtime pm,
    hence insted of the clock enable/disable, the runtime pm APIS are
    used. however,the port clocks and tll clocks are handled
    by the usbhs core.

    Signed-off-by: Keshava Munegowda
    Signed-off-by: Samuel Ortiz

    Keshava Munegowda
     
  • The size of the TC6380AF SD Host Controller Configuration area is 0x200 bytes (assuming registers are aligned on 32-bit boundaries), not 0x400 bytes. Source: Toshiba TC6380AF Specification sections 4.2 and 4.3.1

    Signed-off-by: Paul Parsons
    Signed-off-by: Samuel Ortiz

    Paul Parsons
     
  • 1. Return proper error if omap_usbhs_alloc_child fails
    2. In the case of goto err_ehci, we should call platform_device_unregister(ehci)
    instead of platform_device_put(ehci) because we have already added the
    platform device to device hierarchy.

    Signed-off-by: Axel Lin
    Signed-off-by: Axel Lin
    Tested-by: Keshava Munegowda
    Acked-by: Felipe Balbi
    Signed-off-by: Samuel Ortiz

    Axel Lin
     
  • The disabling of clocks and freeing GPIO are changed
    to fix the occurrence of the crash of rmmod of ehci and ohci
    drivers. The GPIOs should be freed after the spin locks are
    unlocked.

    Signed-off-by: Keshava Munegowda
    Acked-by: Felipe Balbi
    Cc: stable@kernel.org
    Signed-off-by: Samuel Ortiz

    Keshava Munegowda
     
  • Add LED support for the HTC ASIC3. Underlying support is provided by the mfd/asic3 and leds/leds-asic3 drivers. An example configuration is provided by the pxa/hx4700 platform.

    Signed-off-by: Paul Parsons
    Signed-off-by: Samuel Ortiz

    Paul Parsons
     
  • Add LED support for the HTC ASIC3. Underlying support is provided by the mfd/asic3 and leds/leds-asic3 drivers. An example configuration is provided by the pxa/hx4700 platform.

    Signed-off-by: Paul Parsons
    Signed-off-by: Samuel Ortiz

    Paul Parsons
     
  • Signed-off-by: Peter Ujfalusi
    Signed-off-by: Samuel Ortiz

    Peter Ujfalusi
     
  • The bitmask for enabling the BatTemp pull-up was wrong and
    is corrected. The name is also changed to be inline with
    the AB8500 register description

    Signed-off-by: Johan Palsson
    Reviewed-by: Mattias Wallin
    Signed-off-by: Linus Walleij
    Signed-off-by: Samuel Ortiz

    Johan Palsson
     
  • In AB8500 3.0 the pull-up supplying the NTC must be manually activated.
    Add enumerators to chip version detection logic.

    Signed-off-by: Kalle Komierowski
    Reviewed-by: Johan Palsson
    Reviewed-by: Daniel Willerud
    Reviewed-by: Jonas Aberg
    Signed-off-by: Linus Walleij
    Signed-off-by: Samuel Ortiz

    Karl Komierowski
     
  • Since functionality in MFD cells may need to be adjusted according to
    chip revision, let's enumerate them and keep track of them.

    Signed-off-by: Linus Walleij
    Signed-off-by: Samuel Ortiz

    Linus Walleij
     
  • Fixing the error condition check in twl4030 remove script function.
    Due to some typo in commit ID: 11a441ce82d6ffecfd39b324024de0cd630b36c1

    Signed-off-by: Lesly A M
    Signed-off-by: Samuel Ortiz

    Lesly A M
     
  • The charger fault IRQs from the twl will in future patches be handled
    by a seperate IRQ handler in the charger driver than the general charger
    IRQ. Give them different IRQ numbers now to allow the charger driver to
    be merged in the future.

    Signed-off-by: Graeme Gregory
    Signed-off-by: Samuel Ortiz

    Graeme Gregory
     
  • Phoenix Lite is based on the twl6030 family of PMICs. It has mostly the
    same feature set of twl6030 but with small changes. The codec block has
    also been removed. It also has a new charger block and new features in
    its ADC block. VUSB handling also differs.

    Signed-off-by: Graeme Gregory
    Reviewed-by: Mark Brown
    Signed-off-by: Samuel Ortiz

    Graeme Gregory
     
  • Avoid to use constraint name in regulator driver. So use regulator id is used
    instead in platform driver.

    Signed-off-by: Haojian Zhuang
    Cc: Liam Girdwood
    Acked-by: Mark Brown
    Signed-off-by: Samuel Ortiz

    Haojian Zhuang
     
  • Since regulator[0] is always checking in mfd driver, it results in
    registration failure without regulator[0].

    Signed-off-by: Haojian Zhuang
    Reviewed-by: Mark Brown
    Signed-off-by: Samuel Ortiz

    Haojian Zhuang
     
  • i2c_client parameter isn't used in some functions. Just remove it.

    Signed-off-by: Haojian Zhuang
    Signed-off-by: Samuel Ortiz

    Haojian Zhuang
     
  • Maybe multiple PMIC devices are installed into one board. Static variable
    can only make driver logic mess. So remove these variable, and use
    platform data from platform driver instead.

    Signed-off-by: Haojian Zhuang
    Signed-off-by: Samuel Ortiz

    Haojian Zhuang