10 Aug, 2010

8 commits

  • This driver adds support for the BMP085 digital pressure sensor from Bosch
    Sensortec. It exposes a sysfs api to userspace where pressure and
    temperature measurement results can be read from the pressure0_input and
    temp0_input file. The chip is able to calculate the average of up to
    eight samples to increase the accuracy. This feature can be controlled by
    writing to the oversampling file.

    The BMP085 digital pressure sensor can measure ambient air pressure and
    temperature. Both values can be obtained from sysfs files. The pressure
    is measured by reading from pressure0_input. Valid values range from
    30000 to 110000 pascal with a resolution of 1 pascal (=0.01 millibar).

    temp0_input holds the current temperature in degree celsius, multiplied by
    10. This results in a resolution of a tenth degree celsius. Values range
    from -400 to 850.

    To increase the accuracy, this chip can calculate the average of 1, 2, 4
    or 8 samples. This behavior is controlled through the oversampling sysfs
    file. Two to the power of the value written to that file specifies how
    many samples will be used. Valid values: 0..3.

    [akpm@linux-foundation.org: fix typo]
    [shubhrajyoti@ti.com: optimize the wait time for the pressure sensor, definition of long is arch dependent so make it u32]
    [akpm@linux-foundation.org: coding-style fixes]
    Signed-off-by: Christoph Mair
    Signed-off-by: Shubhrajyoti D
    Acked-by: Jonathan Cameron
    Cc: Stefan Schmidt
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Christoph Mair
     
  • Fix i386 PAE compile warning:

    drivers/misc/hpilo.c: In function `ilo_ccb_setup':
    drivers/misc/hpilo.c:274: warning: cast to pointer from integer of different size

    dma_addr_t is 64 on i386 PAE which causes a size mismatch.

    Signed-off-by: Prarit Bhargava
    Acked-by: David Altobelli
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Prarit Bhargava
     
  • Add support for ROHM BH1780GLI Ambient light sensor.

    BH1780 supports I2C interface. Driver supports read/update of power state
    and read of lux value (through SYSFS). Writing value 3 to power_state
    enables the sensor and current lux value could be read.

    Currently this driver follows the same sysfs convention as supported by
    drivers/misc/isl29003.c.

    Signed-off-by: Hemanth V
    Reviewed-by: Daniel Mack
    Acked-by: Jonathan Cameron
    Cc: Jean Delvare
    Cc: Wolfram Sang
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Hemanth V
     
  • On some SoC chips, HW resources may be in use during any particular idle
    period. As a consequence, the cpuidle states that the SoC is safe to
    enter can change from idle period to idle period. In addition, the
    latency and threshold of each cpuidle state can vary, depending on the
    operating condition when the CPU becomes idle, e.g. the current cpu
    frequency, the current state of the HW blocks, etc.

    cpuidle core and the menu governor, in the current form, are geared
    towards cpuidle states that are static, i.e. the availabiltiy of the
    states, their latencies, their thresholds are non-changing during run
    time. cpuidle does not provide any hook that cpuidle drivers can use to
    adjust those values on the fly for the current idle period before the menu
    governor selects the target cpuidle state.

    This patch extends cpuidle core and the menu governor to handle states
    that are dynamic. There are three additions in the patch and the patch
    maintains backwards-compatibility with existing cpuidle drivers.

    1) add prepare() to struct cpuidle_device. A cpuidle driver can hook
    into the callback and cpuidle will call prepare() before calling the
    governor's select function. The callback gives the cpuidle driver a
    chance to update the dynamic information of the cpuidle states for the
    current idle period, e.g. state availability, latencies, thresholds,
    power values, etc.

    2) add CPUIDLE_FLAG_IGNORE as one of the state flags. In the prepare()
    function, a cpuidle driver can set/clear the flag to indicate to the
    menu governor whether a cpuidle state should be ignored, i.e. not
    available, during the current idle period.

    3) add power_specified bit to struct cpuidle_device. The menu governor
    currently assumes that the cpuidle states are arranged in the order of
    increasing latency, threshold, and power savings. This is true or can
    be made true for static states. Once the state parameters are dynamic,
    the latencies, thresholds, and power savings for the cpuidle states can
    increase or decrease by different amounts from idle period to idle
    period. So the assumption of increasing latency, threshold, and power
    savings from Cn to C(n+1) can no longer be guaranteed.

    It can be straightforward to calculate the power consumption of each
    available state and to specify it in power_usage for the idle period.
    Using the power_usage fields, the menu governor then selects the state
    that has the lowest power consumption and that still satisfies all other
    critieria. The power_specified bit defaults to 0. For existing cpuidle
    drivers, cpuidle detects that power_specified is 0 and fills in a dummy
    set of power_usage values.

    Signed-off-by: Ai Li
    Cc: Len Brown
    Acked-by: Arjan van de Ven
    Cc: Ingo Molnar
    Cc: Venkatesh Pallipadi
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Ai Li
     
  • drivers/base/node.c: In function 'node_read_meminfo':
    drivers/base/node.c:139: warning: the frame size of 848 bytes is
    larger than 512 bytes

    Fix it by splitting the sprintf() into three parts. It has no functional
    change.

    Signed-off-by: KOSAKI Motohiro
    Cc: Greg KH
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    KOSAKI Motohiro
     
  • Fix a build failure "error: void value not ignored as it ought to be"
    by removing an assignment of a void return value. The functionality of
    the code is not changed.

    Signed-off-by: Peter Huewe
    Acked-by: Henrik Kretzschmar
    Cc:
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Peter Huewe
     
  • After the commit that changed ipmi_si detecting sequence from SMBIOS/ACPI
    to ACPI/SMBIOS,

    | commit 754d453185275951d39792865927ec494fa1ebd8
    | Author: Matthew Garrett
    | Date: Wed May 26 14:43:47 2010 -0700
    |
    | ipmi: change device discovery order
    |
    | The ipmi spec provides an ordering for si discovery. Change the driver to
    | match, with the exception of preferring smbios to SPMI as HPs (at least)
    | contain accurate information in the former but not the latter.

    ipmi_si can not be initialized.

    [ 138.799739] calling init_ipmi_devintf+0x0/0x109 @ 1
    [ 138.805050] ipmi device interface
    [ 138.818131] initcall init_ipmi_devintf+0x0/0x109 returned 0 after 12797 usecs
    [ 138.822998] calling init_ipmi_si+0x0/0xa90 @ 1
    [ 138.840276] IPMI System Interface driver.
    [ 138.846137] ipmi_si: probing via ACPI
    [ 138.849225] ipmi_si 00:09: [io 0x0ca2] regsize 1 spacing 1 irq 0
    [ 138.864438] ipmi_si: Adding ACPI-specified kcs state machine
    [ 138.870893] ipmi_si: probing via SMBIOS
    [ 138.880945] ipmi_si: Adding SMBIOS-specified kcs state machineipmi_si: duplicate interface
    [ 138.896511] ipmi_si: probing via SPMI
    [ 138.899861] ipmi_si: Adding SPMI-specified kcs state machineipmi_si: duplicate interface
    [ 138.917095] ipmi_si: Trying ACPI-specified kcs state machine at i/o address 0xca2, slave address 0x0, irq 0
    [ 138.928658] ipmi_si: Interface detection failed
    [ 138.953411] initcall init_ipmi_si+0x0/0xa90 returned 0 after 110847 usecs

    in smbios has
    DMI/SMBIOS
    Handle 0x00C5, DMI type 38, 18 bytes
    IPMI Device Information
    Interface Type: KCS (Keyboard Control Style)
    Specification Version: 2.0
    I2C Slave Address: 0x00
    NV Storage Device: Not Present
    Base Address: 0x0000000000000CA2 (I/O)
    Register Spacing: 32-bit Boundaries
    in DSDT has
    Device (BMC)
    {

    Name (_HID, EisaId ("IPI0001"))
    Method (_STA, 0, NotSerialized)
    {
    If (LEqual (OSN, Zero))
    {
    Return (Zero)
    }

    Return (0x0F)
    }

    Name (_STR, Unicode ("IPMI_KCS"))
    Name (_UID, Zero)
    Name (_CRS, ResourceTemplate ()
    {
    IO (Decode16,
    0x0CA2, // Range Minimum
    0x0CA2, // Range Maximum
    0x00, // Alignment
    0x01, // Length
    )
    IO (Decode16,
    0x0CA6, // Range Minimum
    0x0CA6, // Range Maximum
    0x00, // Alignment
    0x01, // Length
    )
    })
    Method (_IFT, 0, NotSerialized)
    {
    Return (One)
    }

    Method (_SRV, 0, NotSerialized)
    {
    Return (0x0200)
    }
    }

    so the reg spacing should be 4 instead of 1.

    Try to calculate regspacing for this kind of system.

    Observed on a Sun Fire X4800. Other OSes work and pass certification.

    Signed-off-by: Yinghai Lu
    Cc: Bjorn Helgaas
    Acked-by: Matthew Garrett
    Cc: Len Brown
    Cc: Myron Stowe
    Cc: Corey Minyard
    Cc:
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Yinghai Lu
     
  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq:
    drm: fix fallouts from slow-work -> wq conversion
    workqueue: workqueue_cpu_callback() should be cpu_notifier instead of hotcpu_notifier
    workqueue: add missing __percpu markup in kernel/workqueue.c

    Linus Torvalds
     

09 Aug, 2010

5 commits

  • Commit 991ea75c (drm: use workqueue instead of slow-work), which made
    drm to use wq instead of slow-work, didn't account for the return
    value difference between delayed_slow_work_enqueue() and
    queue_delayed_work(). The former returns 0 on success and -errno on
    failures while the latter never fails and only uses the return value
    to indicate whether the work was already pending or not.

    This misconversion triggered spurious error messages. Remove the now
    unnecessary return value check and error message.

    Markus: caught another incorrect conversion in drm_kms_helper_poll_enable()

    Signed-off-by: Tejun Heo
    Reported-by: Markus Trippelsdorf
    Tested-by: Markus Trippelsdorf
    Cc: David Airlie
    Cc: dri-devel@lists.freedesktop.org

    Tejun Heo
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/cmetcalf/linux-tile:
    arch/tile: check kmalloc() result
    arch/tile: catch up on various minor cleanups.
    arch/tile: avoid erroneous error return for PTRACE_POKEUSR.
    tile: set ARCH_KMALLOC_MINALIGN
    tile: remove homegrown L1_CACHE_ALIGN macro
    arch/tile: Miscellaneous cleanup changes.
    arch/tile: Split the icache flush code off to a generic header.
    arch/tile: Fix bug in support for atomic64_xx() ops.
    arch/tile: Shrink the tile-opcode files considerably.
    arch/tile: Add driver to enable access to the user dynamic network.
    arch/tile: Enable more sophisticated IRQ model for 32-bit chips.
    Move list types from to .
    Add wait4() back to the set of syscalls.
    Revert adding some arch-specific signal syscalls to .
    arch/tile: Do not use GFP_KERNEL for dma_alloc_coherent(). Feedback from fujita.tomonori@lab.ntt.co.jp.
    arch/tile: core support for Tilera 32-bit chips.
    Fix up the "generic" unistd.h ABI to be more useful.

    Linus Torvalds
     
  • * 'for-linus' of git://github.com/schandinat/linux-2.6:
    drivers/video/via/via-gpio.c: fix warning
    viafb: Depends on X86
    fbdev: section cleanup in viafb driver
    viafb: fix accel_flags check_var bug
    viafb: probe cleanups
    viafb: remove ioctls which break the framebuffer interface
    viafb: update fix before calculating depth
    viafb: PLL value cleanup
    viafb: simplify lcd size "detection"
    viafb: fix PCI table
    viafb: add lcd scaling support for some IGPs
    viafb: improve lcd code readability
    viafb: remove duplicated scaling code
    MAINTAINERS: update viafb entry

    Linus Torvalds
     
  • * 'for-linus' of git://gitorious.org/linux-omap-dss2/linux: (64 commits)
    OMAP: DSS2: OMAPFB: add support for FBIO_WAITFORVSYNC
    OMAP: DSS2: Replace strncmp() with sysfs_streq() in overlay_manager_store()
    OMAP: DSS2: Fix error path in omap_dsi_update()
    OMAP: DSS2: TDO35S: fix video signaling
    OMAP: DSS2: OMAPFB: Fix invalid bpp for PAL and NTSC modes
    OMAP: DSS2: OMAPFB: Fix probe error path
    OMAP3EVM: Replace vdvi regulator supply with vdds_dsi
    OMAP: DSS2: Remove extra return statement
    OMAP: DSS2: adjust YUV overlay width to be even
    OMAP: DSS2: OMAPFB: Fix sysfs mirror input check
    OMAP: DSS2: OMAPFB: Remove redundant color register range check
    OMAP: DSS2: OMAPFB: Remove redundant rotate range check
    OMAP: DSS2: OMAPFB: Check fb2display() return value
    OMAP: DSS2: Taal: Optimize enable_te, rotate, mirror when value unchanged
    OMAP: DSS2: DSI: detect unsupported update requests
    OMAP: DSS2: DSI: increase FIFO low threshold
    OMAP: DSS2: DSI: Add error IRQ mask for DSI complexIO
    OMAP: DSS2: DSI: Remove BTA after set_max_rx_packet_size
    OMAP: DSS2: change manual update scaling setup
    OMAP: DSS2: DSI: use BTA to end the frame transfer
    ...

    Linus Torvalds
     
  • * 'omap-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap-2.6: (143 commits)
    omap: mailbox: reorganize headers
    omap: mailbox: standarize on 'omap-mailbox'
    omap: mailbox: only compile for configured archs
    omap: mailbox: simplify omap_mbox_register()
    omap: mailbox: reorganize registering
    omap: mailbox: add IRQ names
    omap: mailbox: remove unecessary fields
    omap: mailbox: don't export unecessary symbols
    omap: mailbox: update omap1 probing
    omap: mailbox: use correct config for omap1
    omap: mailbox: 2420 should be detected at run-time
    omap: mailbox: reorganize structures
    omap: mailbox: trivial cleanups
    omap mailbox: Set a device in logical mbox instance for traceability
    omap: mailbox: convert block api to kfifo
    omap: mailbox: remove (un)likely macros from cold paths
    omap: mailbox cleanup: split MODULE_AUTHOR line
    omap: mailbox: convert rwlocks to spinlock
    Mailbox: disable mailbox interrupt when request queue
    Mailbox: new mutext lock for h/w mailbox configuration
    ...

    Linus Torvalds
     

08 Aug, 2010

5 commits

  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394-2.6: (82 commits)
    firewire: core: add forgotten dummy driver methods, remove unused ones
    firewire: add isochronous multichannel reception
    firewire: core: small clarifications in core-cdev
    firewire: core: remove unused code
    firewire: ohci: release channel in error path
    firewire: ohci: use memory barriers to order descriptor updates
    tools/firewire: nosy-dump: increment program version
    tools/firewire: nosy-dump: remove unused code
    tools/firewire: nosy-dump: use linux/firewire-constants.h
    tools/firewire: nosy-dump: break up a deeply nested function
    tools/firewire: nosy-dump: make some symbols static or const
    tools/firewire: nosy-dump: change to kernel coding style
    tools/firewire: nosy-dump: work around segfault in decode_fcp
    tools/firewire: nosy-dump: fix it on x86-64
    tools/firewire: add userspace front-end of nosy
    firewire: nosy: note ioctls in ioctl-number.txt
    firewire: nosy: use generic printk macros
    firewire: nosy: endianess fixes and annotations
    firewire: nosy: annotate __user pointers and __iomem pointers
    firewire: nosy: fix device shutdown with active client
    ...

    Linus Torvalds
     
  • * 'acpica' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6: (27 commits)
    ACPI / ACPICA: Simplify acpi_ev_initialize_gpe_block()
    ACPI / ACPICA: Fail acpi_gpe_wakeup() if ACPI_GPE_CAN_WAKE is unset
    ACPI / ACPICA: Do not execute _PRW methods during initialization
    ACPI: Fix bogus GPE test in acpi_bus_set_run_wake_flags()
    ACPICA: Update version to 20100702
    ACPICA: Fix for Alias references within Package objects
    ACPICA: Fix lint warning for 64-bit constant
    ACPICA: Remove obsolete GPE function
    ACPICA: Update debug output components
    ACPICA: Add support for WDDT - Watchdog Descriptor Table
    ACPICA: Drop acpi_set_gpe
    ACPICA: Use low-level GPE enable during GPE block initialization
    ACPI / EC: Do not use acpi_set_gpe
    ACPI / EC: Drop suspend and resume routines
    ACPICA: Remove wakeup GPE reference counting which is not used
    ACPICA: Introduce acpi_gpe_wakeup()
    ACPICA: Rename acpi_hw_gpe_register_bit
    ACPICA: Update version to 20100528
    ACPICA: Add signatures for undefined tables: ATKG, GSCI, IEIT
    ACPICA: Optimization: Reduce the number of namespace walks
    ...

    Linus Torvalds
     
  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband: (42 commits)
    IB/qib: Add missing include
    IB/ehca: Drop unnecessary NULL test
    RDMA/nes: Fix confusing if statement indentation
    IB/ehca: Init irq tasklet before irq can happen
    RDMA/nes: Fix misindented code
    RDMA/nes: Fix showing wqm_quanta
    RDMA/nes: Get rid of "set but not used" variables
    RDMA/nes: Read firmware version from correct place
    IB/srp: Export req_lim via sysfs
    IB/srp: Make receive buffer handling more robust
    IB/srp: Use print_hex_dump()
    IB: Rename RAW_ETY to RAW_ETHERTYPE
    RDMA/nes: Fix two sparse warnings
    RDMA/cxgb3: Make needlessly global iwch_l2t_send() static
    IB/iser: Make needlessly global iser_alloc_rx_descriptors() static
    RDMA/cxgb4: Add timeouts when waiting for FW responses
    IB/qib: Fix race between qib_error_qp() and receive packet processing
    IB/qib: Limit the number of packets processed per interrupt
    IB/qib: Allow writes to the diag_counters to be able to clear them
    IB/qib: Set cfgctxts to number of CPUs by default
    ...

    Linus Torvalds
     
  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6: (214 commits)
    ALSA: hda - Add pin-fix for HP dc5750
    ALSA: als4000: Fix potentially invalid DMA mode setup
    ALSA: als4000: enable burst mode
    ALSA: hda - Fix initial capsrc selection in patch_alc269()
    ASoC: TWL4030: Capture route runtime DAPM ordering fix
    ALSA: hda - Add PC-beep whitelist for an Intel board
    ALSA: hda - More relax for pending period handling
    ALSA: hda - Define AC_FMT_* constants
    ALSA: hda - Fix beep frequency on IDT 92HD73xx and 92HD71Bxx codecs
    ALSA: hda - Add support for HDMI HBR passthrough
    ALSA: hda - Set Stream Type in Stream Format according to AES0
    ALSA: hda - Fix Thinkpad X300 so SPDIF is not exposed
    ALSA: hda - FIX to not expose SPDIF on Thinkpad X301, since it does not have the ability to use SPDIF
    ASoC: wm9081: fix resource reclaim in wm9081_register error path
    ASoC: wm8978: fix a memory leak if a wm8978_register fail
    ASoC: wm8974: fix a memory leak if another WM8974 is registered
    ASoC: wm8961: fix resource reclaim in wm8961_register error path
    ASoC: wm8955: fix resource reclaim in wm8955_register error path
    ASoC: wm8940: fix a memory leak if wm8940_register return error
    ASoC: wm8904: fix resource reclaim in wm8904_register error path
    ...

    Linus Torvalds
     
  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq: (55 commits)
    workqueue: mark init_workqueues() as early_initcall()
    workqueue: explain for_each_*cwq_cpu() iterators
    fscache: fix build on !CONFIG_SYSCTL
    slow-work: kill it
    gfs2: use workqueue instead of slow-work
    drm: use workqueue instead of slow-work
    cifs: use workqueue instead of slow-work
    fscache: drop references to slow-work
    fscache: convert operation to use workqueue instead of slow-work
    fscache: convert object to use workqueue instead of slow-work
    workqueue: fix how cpu number is stored in work->data
    workqueue: fix mayday_mask handling on UP
    workqueue: fix build problem on !CONFIG_SMP
    workqueue: fix locking in retry path of maybe_create_worker()
    async: use workqueue for worker pool
    workqueue: remove WQ_SINGLE_CPU and use WQ_UNBOUND instead
    workqueue: implement unbound workqueue
    workqueue: prepare for WQ_UNBOUND implementation
    libata: take advantage of cmwq and remove concurrency limitations
    workqueue: fix worker management invocation without pending works
    ...

    Fixed up conflicts in fs/cifs/* as per Tejun. Other trivial conflicts in
    include/linux/workqueue.h, kernel/trace/Kconfig and kernel/workqueue.c

    Linus Torvalds
     

07 Aug, 2010

14 commits

  • * 'irq-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
    xen: Do not suspend IPI IRQs.
    powerpc: Use IRQF_NO_SUSPEND not IRQF_TIMER for non-timer interrupts
    ixp4xx-beeper: Use IRQF_NO_SUSPEND not IRQF_TIMER for non-timer interrupt
    irq: Add new IRQ flag IRQF_NO_SUSPEND

    Linus Torvalds
     
  • …x/kernel/git/tip/linux-2.6-tip

    * 'timers-timekeeping-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
    um: Fix read_persistent_clock fallout
    kgdb: Do not access xtime directly
    powerpc: Clean up obsolete code relating to decrementer and timebase
    powerpc: Rework VDSO gettimeofday to prevent time going backwards
    clocksource: Add __clocksource_updatefreq_hz/khz methods
    x86: Convert common clocksources to use clocksource_register_hz/khz
    timekeeping: Make xtime and wall_to_monotonic static
    hrtimer: Cleanup direct access to wall_to_monotonic
    um: Convert to use read_persistent_clock
    timkeeping: Fix update_vsyscall to provide wall_to_monotonic offset
    powerpc: Cleanup xtime usage
    powerpc: Simplify update_vsyscall
    time: Kill off CONFIG_GENERIC_TIME
    time: Implement timespec_add
    x86: Fix vtime/file timestamp inconsistencies

    Trivial conflicts in Documentation/feature-removal-schedule.txt

    Much less trivial conflicts in arch/powerpc/kernel/time.c resolved as
    per Thomas' earlier merge commit 47916be4e28c ("Merge branch
    'powerpc.cherry-picks' into timers/clocksource")

    Linus Torvalds
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/brodo/pcmcia-2.6:
    pcmcia: avoid buffer overflow in pcmcia_setup_isa_irq
    pcmcia: do not request windows if you don't need to
    pcmcia: insert PCMCIA device resources into resource tree
    pcmcia: export resource information to sysfs
    pcmcia: use struct resource for PCMCIA devices, part 2
    pcmcia: remove memreq_t
    pcmcia: move local definitions out of include/pcmcia/cs.h
    pcmcia: do not use io_req_t when calling pcmcia_request_io()
    pcmcia: do not use io_req_t after call to pcmcia_request_io()
    pcmcia: use struct resource for PCMCIA devices
    pcmcia: clean up cs.h
    pcmcia: use pcmica_{read,write}_config_byte
    pcmcia: remove cs_types.h
    pcmcia: remove unused flag, simplify headers
    pcmcia: remove obsolete CS_EVENT_ definitions
    pcmcia: split up central event handler
    pcmcia: simplify event callback
    pcmcia: remove obsolete ioctl

    Conflicts in:
    - drivers/staging/comedi/drivers/*
    - drivers/staging/wlags49_h2/wl_cs.c
    due to dev_info_t and whitespace changes

    Linus Torvalds
     
  • * 'linux-next' of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6: (30 commits)
    PCI: update for owner removal from struct device_attribute
    PCI: Fix warnings when CONFIG_DMI unset
    PCI: Do not run NVidia quirks related to MSI with MSI disabled
    x86/PCI: use for_each_pci_dev()
    PCI: use for_each_pci_dev()
    PCI: MSI: Restore read_msi_msg_desc(); add get_cached_msi_msg_desc()
    PCI: export SMBIOS provided firmware instance and label to sysfs
    PCI: Allow read/write access to sysfs I/O port resources
    x86/PCI: use host bridge _CRS info on ASRock ALiveSATA2-GLAN
    PCI: remove unused HAVE_ARCH_PCI_SET_DMA_MAX_SEGMENT_{SIZE|BOUNDARY}
    PCI: disable mmio during bar sizing
    PCI: MSI: Remove unsafe and unnecessary hardware access
    PCI: Default PCIe ASPM control to on and require !EMBEDDED to disable
    PCI: kernel oops on access to pci proc file while hot-removal
    PCI: pci-sysfs: remove casts from void*
    ACPI: Disable ASPM if the platform won't provide _OSC control for PCIe
    PCI hotplug: make sure child bridges are enabled at hotplug time
    PCI hotplug: shpchp: Removed check for hotplug of display devices
    PCI hotplug: pciehp: Fixed return value sign for pciehp_unconfigure_device
    PCI: Don't enable aspm before drivers have had a chance to veto it
    ...

    Linus Torvalds
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging-2.6: (524 commits)
    Staging: wlan-ng: Update prism2_set_tx_power() to use mBm
    Staging: ti-st: update TODO
    Staging: wlags49_h2: use common PCI_VENDOR/DEVICE_ID name format
    Staging: comedi : fix brace coding style issue in wwrap.c
    Staging: quatech_usb2: remove unused qt2_box_flush function
    Staging: slicoss: Remove net_device_stats from the driver's private
    staging: rtl8192su: check whether requests succeeded
    staging: panel: fix error path
    staging: otus: check kmalloc() return value
    staging: octeon: check request_irq() return value
    Staging: wlan-ng: remove typedef in p80211hdr.h
    Staging: wlan-ng: fix checkpatch issues in headers.
    Staging: wlan-ng: remove typedef in p80211ioctl.h
    Staging: wlan-ng: fix style issues in p80211conv.h
    Staging: wlan-ng: fix style issues for p80211hdr.h
    staging: vt6656: removed NTSTATUS definition
    staging: vt6656: simplified tests involving both multi/broad-casts
    Staging: vt6655: replace BOOL with in kernel bool
    Staging: vt6655: replace FALSE with in kernel false
    Staging: vt6655: replace TRUE with in kernel true
    ...

    Linus Torvalds
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core-2.6: (28 commits)
    driver core: device_rename's new_name can be const
    sysfs: Remove owner field from sysfs struct attribute
    powerpc/pci: Remove owner field from attribute initialization in PCI bridge init
    regulator: Remove owner field from attribute initialization in regulator core driver
    leds: Remove owner field from attribute initialization in bd2802 driver
    scsi: Remove owner field from attribute initialization in ARCMSR driver
    scsi: Remove owner field from attribute initialization in LPFC driver
    cgroupfs: create /sys/fs/cgroup to mount cgroupfs on
    Driver core: Add BUS_NOTIFY_BIND_DRIVER
    driver core: fix memory leak on one error path in bus_register()
    debugfs: no longer needs to depend on SYSFS
    sysfs: Fix one more signature discrepancy between sysfs implementation and docs.
    sysfs: fix discrepancies between implementation and documentation
    dcdbas: remove a redundant smi_data_buf_free in dcdbas_exit
    dmi-id: fix a memory leak in dmi_id_init error path
    sysfs: sysfs_chmod_file's attr can be const
    firmware: Update hotplug script
    Driver core: move platform device creation helpers to .init.text (if MODULE=n)
    Driver core: reduce duplicated code for platform_device creation
    Driver core: use kmemdup in platform_device_add_resources
    ...

    Linus Torvalds
     
  • Commit 69309a059075 ("x86, asm: Clean up and simplify set_64bit()")
    sanitized the x86-64 types to set_64bit(), and incidentally resulted in
    warnings like

    drivers/pci/intr_remapping.c: In function 'modify_irte':
    drivers/pci/intr_remapping.c:314: warning: passing argument 1 of 'set_64bit' from incompatible pointer type
    arch/x86/include/asm/cmpxchg_64.h:6: note:expected 'volatile u64 *' but argument is of type 'long unsigned int *'

    It turns out that the change to set_64bit() really does clean up things,
    and the PCI intr_remapping.c file did a rather ugly cast in order to
    avoid warnings with the previous set_64bit() type model.

    Removing the ugly cast fixes the warning, and makes everybody happy and
    expects a set_64bit() to take the logical "u64 *" argument.

    Pointed-out-by: Peter Anvin
    Signed-off-by: Linus Torvalds

    Linus Torvalds
     
  • …git/tip/linux-2.6-tip

    * 'x86-hwmon-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
    x86, hwmon: Package Level Thermal/Power: pkgtemp documentation
    x86, hwmon: Package Level Thermal/Power: power limit
    x86, hwmon: Package Level Thermal/Power: thermal throttling handler
    x86, hwmon: Package Level Thermal/Power: pkgtemp hwmon driver

    Linus Torvalds
     
  • * 'x86-cpu-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
    x86: Fix keeping track of AMD C1E
    x86, cpu: Package Level Thermal Control, Power Limit Notification definitions
    x86, cpu: Export AMD errata definitions
    x86, cpu: Use AMD errata checking framework for erratum 383
    x86, cpu: Clean up AMD erratum 400 workaround
    x86, cpu: AMD errata checking framework
    x86, cpu: Split addon_cpuid_features.c
    x86, cpu: Clean up formatting in cpufeature.h, remove override
    x86, cpu: Enumerate xsaveopt
    x86, cpu: Add xsaveopt cpufeature
    x86, cpu: Make init_scattered_cpuid_features() consider cpuid subleaves
    x86, cpu: Support the features flags in new CPUID leaf 7
    x86, cpu: Add CPU flags for F16C and RDRND
    x86: Look for IA32_ENERGY_PERF_BIAS support
    x86, AMD: Extend support to future families
    x86, cacheinfo: Carve out L3 cache slot accessors
    x86, xsave: Cleanup return codes in check_for_xstate()

    Linus Torvalds
     
  • …git/tip/linux-2.6-tip

    * 'perf-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (162 commits)
    tracing/kprobes: unregister_trace_probe needs to be called under mutex
    perf: expose event__process function
    perf events: Fix mmap offset determination
    perf, powerpc: fsl_emb: Restore setting perf_sample_data.period
    perf, powerpc: Convert the FSL driver to use local64_t
    perf tools: Don't keep unreferenced maps when unmaps are detected
    perf session: Invalidate last_match when removing threads from rb_tree
    perf session: Free the ref_reloc_sym memory at the right place
    x86,mmiotrace: Add support for tracing STOS instruction
    perf, sched migration: Librarize task states and event headers helpers
    perf, sched migration: Librarize the GUI class
    perf, sched migration: Make the GUI class client agnostic
    perf, sched migration: Make it vertically scrollable
    perf, sched migration: Parameterize cpu height and spacing
    perf, sched migration: Fix key bindings
    perf, sched migration: Ignore unhandled task states
    perf, sched migration: Handle ignored migrate out events
    perf: New migration tool overview
    tracing: Drop cpparg() macro
    perf: Use tracepoint_synchronize_unregister() to flush any pending tracepoint call
    ...

    Fix up trivial conflicts in Makefile and drivers/cpufreq/cpufreq.c

    Linus Torvalds
     
  • …/git/tip/linux-2.6-tip

    * 'core-iommu-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
    x86/amd-iommu: Export cache-coherency capability
    iommu-api: Extension to check for interrupt remapping
    x86/amd-iommu: Use for_each_pci_dev()

    Linus Torvalds
     
  • * 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/libata-dev:
    sata_fsl,mv,nv: prepare for NCQ command completion update
    ata: Convert pci_table entries to PCI_VDEVICE (if PCI_ANY_ID is used)
    libata: more PCI IDs for jmicron controllers
    ata_piix: fix locking around SIDPR access
    [libata] update blacklist for new hyphenated pattern ranges (v2)
    libata: allow hyphenated pattern ranges
    ata_generic: drop hard coded DMA force logic for CENATEK
    [libata] ahci: Fix warning: comparison between 'enum ' and 'enum '
    [libata] add ATA_CMD_DSM to ata_get_cmd_descript
    [libata] Add Samsung PATA controller driver, pata_samsung_cf
    [libata] Add 460EX on-chip SATA driver, sata_dwc_460ex
    libata: reduce blacklist size even more (v2)
    libata: reduce blacklist size (v2)
    libata: glob_match for ata_device_blacklist (v2)
    ahci_platform: Remove unneeded ahci_driver.probe assignment
    ahci_platform: Provide for vendor specific init

    Linus Torvalds
     
  • Fake "address-of" expressions that evaluate to NULL generally confuse
    readers and can provoke compiler warnings. This patch (as1411) removes
    one such fake expression, using an "#ifdef" in its place.

    Signed-off-by: Alan Stern
    Signed-off-by: Linus Torvalds

    Alan Stern
     
  • Make /dev/console get initialised before any initialisation routine that
    invokes modprobe because if modprobe fails, it's going to want to open
    /dev/console, presumably to write an error message to.

    The problem with that is that if the /dev/console driver is not yet
    initialised, the chardev handler will call request_module() to invoke
    modprobe, which will fail, because we never compile /dev/console as a
    module.

    This will lead to a modprobe loop, showing the following in the kernel
    log:

    request_module: runaway loop modprobe char-major-5-1
    request_module: runaway loop modprobe char-major-5-1
    request_module: runaway loop modprobe char-major-5-1
    request_module: runaway loop modprobe char-major-5-1
    request_module: runaway loop modprobe char-major-5-1

    This can happen, for example, when the built in md5 module can't find
    the built in cryptomgr module (because the latter fails to initialise).
    The md5 module comes before the call to tty_init(), presumably because
    'crypto' comes before 'drivers' alphabetically.

    Fix this by calling tty_init() from chrdev_init().

    Signed-off-by: David Howells
    Signed-off-by: Linus Torvalds

    David Howells
     

06 Aug, 2010

8 commits

  • Chris Metcalf
     
  • * 'drm-core-next' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6: (204 commits)
    agp: intel-agp: do not use PCI resources before pci_enable_device()
    agp: efficeon-agp: do not use PCI resources before pci_enable_device()
    drm: kill BKL from common code
    drm/kms: Simplify setup of the initial I2C encoder config.
    drm,io-mapping: Specify slot to use for atomic mappings
    drm/radeon/kms: only expose underscan on avivo chips
    drm/radeon: add new pci ids
    drm: Cleanup after failing to create master->unique and dev->name
    drm/radeon: tone down overchatty acpi debug messages.
    drm/radeon/kms: enable underscan option for digital connectors
    drm/radeon/kms: fix calculation of h/v scaling factors
    drm/radeon/kms/igp: sideport is AMD only
    drm/radeon/kms: handle the case of no active displays properly in the bandwidth code
    drm: move ttm global code to core drm
    drm/i915: Clear the Ironlake dithering flags when the pipe doesn't want it.
    drm/radeon/kms: make sure HPD is set to NONE on analog-only connectors
    drm/radeon/kms: make sure rio_mem is valid before unmapping it
    drm/agp/i915: trim stolen space to 32M
    drm/i915: Unset cursor if out-of-bounds upon mode change (v4)
    drm/i915: Unreference object not handle on creation
    ...

    Linus Torvalds
     
  • * 'kms-merge' of git://git.kernel.org/pub/scm/linux/kernel/git/jwessel/linux-2.6-kgdb:
    kgdb,docs: Update the kgdb docs to include kms
    drm_fb_helper: Preserve capability to use atomic kms
    i915: when kgdb is active display compression should be off
    drm/i915: use new fb debug hooks
    drm: add KGDB/KDB support
    fb: add hooks to handle KDB enter/exit
    kgdboc: Add call backs to allow kernel mode switching
    vt,console,kdb: automatically set kdb LINES variable
    vt,console,kdb: implement atomic console enter/leave functions

    Linus Torvalds
     
  • * 'next-devicetree' of git://git.secretlab.ca/git/linux-2.6: (63 commits)
    of/platform: Register of_platform_drivers with an "of:" prefix
    of/address: Clean up function declarations
    of/spi: call of_register_spi_devices() from spi core code
    of: Provide default of_node_to_nid() implementation.
    of/device: Make of_device_make_bus_id() usable by other code.
    of/irq: Fix endian issues in parsing interrupt specifiers
    of: Fix phandle endian issues
    of/flattree: fix of_flat_dt_is_compatible() to match the full compatible string
    of: remove of_default_bus_ids
    of: make of_find_device_by_node generic
    microblaze: remove references to of_device and to_of_device
    sparc: remove references to of_device and to_of_device
    powerpc: remove references to of_device and to_of_device
    of/device: Replace of_device with platform_device in includes and core code
    of/device: Protect against binding of_platform_drivers to non-OF devices
    of: remove asm/of_device.h
    of: remove asm/of_platform.h
    of/platform: remove all of_bus_type and of_platform_bus_type references
    of: Merge of_platform_bus_type with platform_bus_type
    drivercore/of: Add OF style matching to platform bus
    ...

    Fix up trivial conflicts in arch/microblaze/kernel/Makefile due to just
    some obj-y removals by the devicetree branch, while the microblaze
    updates added a new file.

    Linus Torvalds
     
  • drivers/video/via/via-gpio.c: In function 'viafb_gpio_probe':
    drivers/video/via/via-gpio.c:216: warning: assignment from incompatible pointer type

    Cc: Joseph Chan
    Cc: Scott Fang
    Cc: Jonathan Corbet
    Signed-off-by: Andrew Morton
    Signed-off-by: Florian Tobias Schandinat

    Andrew Morton
     
  • VIA UniChrome and Chrome9 GPUs only exist as Integrated Graphics
    Processors in x86 chipsets.

    Signed-off-by: Ben Hutchings
    Signed-off-by: Florian Tobias Schandinat

    Ben Hutchings
     
  • This patch moves two functions from .devexit to .text,
    which are called on the probe error path.
    Also a function which is called by probe is moved
    from .text to .devinit.

    WARNING: vmlinux.o(.devinit.text+0x2ca5): Section mismatch in reference
    from the function via_pci_probe() to the function
    devexit.text:via_teardown_subdevs()
    The function __devinit via_pci_probe() references
    a function __devexit via_teardown_subdevs().
    This is often seen when error handling in the init function
    uses functionality in the exit path.
    The fix is often to remove the __devexit annotation of
    via_teardown_subdevs() so it may be used outside an exit section.

    WARNING: vmlinux.o(.devinit.text+0x2cb1): Section mismatch in reference
    from the function via_pci_probe() to the function
    devexit.text:via_pci_teardown_mmio()
    The function __devinit via_pci_probe() references
    a function __devexit via_pci_teardown_mmio().
    This is often seen when error handling in the init function
    uses functionality in the exit path.
    The fix is often to remove the __devexit annotation of
    via_pci_teardown_mmio() so it may be used outside an exit section.

    Signed-off-by: Henrik Kretzschmar
    Signed-off-by: Florian Tobias Schandinat

    Henrik Kretzschmar
     
  • Roland Dreier