23 Mar, 2011

22 commits

  • In systems with multiple framebuffer devices, one of the devices might be
    blanked while another is unblanked. In order for the backlight blanking
    logic to know whether to turn off the backlight for a particular
    framebuffer's blanking notification, it needs to be able to check if a
    given framebuffer device corresponds to the backlight.

    This plumbs the check_fb hook from core backlight through the
    pwm_backlight helper to allow platform code to plug in a check_fb hook.

    Signed-off-by: Robert Morell
    Cc: Richard Purdie
    Cc: Arun Murthy
    Cc: Linus Walleij
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Robert Morell
     
  • The following symbols are needlessly defined global: jornada_bl_init,
    jornada_bl_exit, jornada_lcd_init, jornada_lcd_exit.

    Make them static.

    Signed-off-by: Axel Lin
    Acked-by: Kristoffer Ericson
    Cc: Richard Purdie
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Axel Lin
     
  • apple_bl uses ACPI interfaces (data & code), so it should depend on ACPI.

    drivers/video/backlight/apple_bl.c:142: warning: 'struct acpi_device' declared inside parameter list
    drivers/video/backlight/apple_bl.c:142: warning: its scope is only this definition or declaration, which is probably not what you want
    drivers/video/backlight/apple_bl.c:201: warning: 'struct acpi_device' declared inside parameter list
    drivers/video/backlight/apple_bl.c:215: error: variable 'apple_bl_driver' has initializer but incomplete type
    drivers/video/backlight/apple_bl.c:216: error: unknown field 'name' specified in initializer
    ...

    Signed-off-by: Randy Dunlap
    Acked-by: Matthew Garrett
    Cc: Richard Purdie
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Randy Dunlap
     
  • It works on hardware other than Macbook Pros, and it works on GPUs other
    than Nvidia. It should even work on iMacs, so change the name to match
    reality more precisely and include an alias so existing users don't get
    confused.

    Signed-off-by: Matthew Garrett
    Acked-by: Richard Purdie
    Cc: Mourad De Clerck
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Matthew Garrett
     
  • The SMI-based backlight control functionality may fail to work if the
    system is running under EFI rather than BIOS. Check that the hardware
    responds as expected, and exit if it doesn't.

    Signed-off-by: Matthew Garrett
    Acked-by: Richard Purdie
    Cc: Mourad De Clerck
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Matthew Garrett
     
  • This driver only has to deal with two different classes of hardware, but
    right now it needs new DMI entries for every new machine. It turns out
    that there's an ACPI device that uniquely identifies Apples with backlights,
    so this patch reworks the driver into an ACPI one, identifies the hardware
    by checking the PCI vendor of the root bridge and strips out all the DMI
    code. It also changes the config text to clarify that it works on devices
    other than Macbook Pros and GPUs other than nvidia.

    Signed-off-by: Matthew Garrett
    Acked-by: Richard Purdie
    Cc: Mourad De Clerck
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Matthew Garrett
     
  • Dual-GPU machines may provide more than one ACPI backlight interface. Tie
    the backlight device to the GPU in order to allow userspace to identify
    the correct interface.

    Signed-off-by: Matthew Garrett
    Cc: Richard Purdie
    Cc: Chris Wilson
    Cc: David Airlie
    Cc: Alex Deucher
    Cc: Ben Skeggs
    Cc: Zhang Rui
    Cc: Len Brown
    Cc: Jesse Barnes
    Tested-by: Sedat Dilek
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Matthew Garrett
     
  • We may eventually end up with per-connector backlights, especially with
    ddcci devices. Make sure that the parent node for the backlight device is
    the connector rather than the PCI device.

    Signed-off-by: Matthew Garrett
    Cc: Richard Purdie
    Cc: Chris Wilson
    Cc: David Airlie
    Cc: Alex Deucher
    Acked-by: Ben Skeggs
    Cc: Zhang Rui
    Cc: Len Brown
    Cc: Jesse Barnes
    Tested-by: Sedat Dilek
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Matthew Garrett
     
  • Allows e.g. power management daemons to control the backlight level. Inspired
    by the corresponding code in radeonfb.

    [mjg@redhat.com: updated to add backlight type and make the connector the parent device]
    Signed-off-by: Michel Dänzer
    Signed-off-by: Matthew Garrett
    Cc: Richard Purdie
    Cc: Chris Wilson
    Cc: David Airlie
    Acked-by: Alex Deucher
    Cc: Ben Skeggs
    Cc: Zhang Rui
    Cc: Len Brown
    Cc: Jesse Barnes
    Tested-by: Sedat Dilek
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Michel Dänzer
     
  • There may be multiple ways of controlling the backlight on a given
    machine. Allow drivers to expose the type of interface they are
    providing, making it possible for userspace to make appropriate policy
    decisions.

    Signed-off-by: Matthew Garrett
    Cc: Richard Purdie
    Cc: Chris Wilson
    Cc: David Airlie
    Cc: Alex Deucher
    Cc: Ben Skeggs
    Cc: Zhang Rui
    Cc: Len Brown
    Cc: Jesse Barnes
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Matthew Garrett
     
  • Don't allow everybody to change LED settings.

    Signed-off-by: Vasiliy Kulikov
    Cc: Richard Purdie
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Vasiliy Kulikov
     
  • Don't allow everybody to change LED settings.

    Signed-off-by: Vasiliy Kulikov
    Cc: Richard Purdie
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Vasiliy Kulikov
     
  • Add a ld9040 amoled panel driver.

    Signed-off-by: Donghwa Lee
    Signed-off-by: Kyungmin Park
    Signed-off-by: Inki Dae
    Cc: Richard Purdie
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Donghwa Lee
     
  • And fix a typo.

    Signed-off-by: Uwe Kleine-König
    Cc: Lars-Peter Clausen
    Cc: Richard Purdie
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Uwe Kleine-König
     
  • Simple backlight driver for National Semiconductor LM3530. Presently only
    manual mode is supported, PWM and ALS support to be added.

    Signed-off-by: Shreshtha Kumar Sahu
    Cc: Linus Walleij
    Cc: Richard Purdie
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Shreshtha Kumar Sahu
     
  • There is a move to deprecate bus-specific PM operations and move to using
    dev_pm_ops instead in order to reduce the amount of boilerplate code in
    buses and facilitiate updates to the PM core. Do this move for the bs2802
    driver.

    [akpm@linux-foundation.org: fix warnings]
    Signed-off-by: Mark Brown
    Cc: Kim Kyuwon
    Cc: Kim Kyuwon
    Cc: Richard Purdie
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Mark Brown
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/sage/ceph-client:
    rbd: use watch/notify for changes in rbd header
    libceph: add lingering request and watch/notify event framework
    rbd: update email address in Documentation
    ceph: rename dentry_release -> d_release, fix comment
    ceph: add request to the tail of unsafe write list
    ceph: remove request from unsafe list if it is canceled/timed out
    ceph: move readahead default to fs/ceph from libceph
    ceph: add ino32 mount option
    ceph: update common header files
    ceph: remove debugfs debug cruft
    libceph: fix osd request queuing on osdmap updates
    ceph: preserve I_COMPLETE across rename
    libceph: Fix base64-decoding when input ends in newline.

    Linus Torvalds
     
  • Using delayed-work for tty flip buffers ends up causing us to wait for
    the next tick to complete some actions. That's usually not all that
    noticeable, but for certain latency-critical workloads it ends up being
    totally unacceptable.

    As an extreme case of this, passing a token back-and-forth over a pty
    will take two ticks per iteration, so even just a thousand iterations
    will take 8 seconds assuming a common 250Hz configuration.

    Avoiding the whole delayed work issue brings that ping-pong test-case
    down to 0.009s on my machine.

    In more practical terms, this latency has been a performance problem for
    things like dive computer simulators (simulating the serial interface
    using the ptys) and for other environments (Alan mentions a CP/M emulator).

    Reported-by: Jef Driesen
    Acked-by: Greg KH
    Acked-by: Alan Cox
    Signed-off-by: Linus Torvalds

    Linus Torvalds
     
  • Send notifications when we change the rbd header (e.g. create a snapshot)
    and wait for such notifications. This allows synchronizing the snapshot
    creation between different rbd clients/rools.

    Signed-off-by: Yehuda Sadeh
    Signed-off-by: Sage Weil

    Yehuda Sadeh
     
  • * 'for-linus/2639/i2c-2' of git://git.fluff.org/bjdooks/linux:
    i2c-pxa2xx: Don't clear isr bits too early
    i2c-pxa2xx: Fix register offsets
    i2c-pxa2xx: pass of_node from platform driver to adapter and publish
    i2c-pxa2xx: check timeout correctly
    i2c-pxa2xx: add support for shared IRQ handler
    i2c-pxa2xx: Add PCI support for PXA I2C controller
    ARM: pxa2xx: reorganize I2C files
    i2c-pxa2xx: use dynamic register layout
    i2c-mxs: set controller to pio queue mode after reset
    i2c-eg20t: support new device OKI SEMICONDUCTOR ML7213 IOH
    i2c/busses: Add support for Diolan U2C-12 USB-I2C adapter

    Linus Torvalds
     
  • Ensure that we kill discard requests after logical block provisioning
    has been disabled in sysfs.

    Signed-off-by: Martin K. Petersen
    Reported-by: Geert Uytterhoeven
    Reviewed-by: Jeff Moyer
    Signed-off-by: Linus Torvalds

    Martin K. Petersen
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (33 commits)
    IPVS: Use global mutex in ip_vs_app.c
    ipvs: fix a typo in __ip_vs_control_init()
    veth: Fix the byte counters
    net ipv6: Fix duplicate /proc/sys/net/ipv6/neigh directory entries.
    macvlan: Fix use after free of struct macvlan_port.
    net: fix incorrect spelling in drop monitor protocol
    can: c_can: Do basic c_can configuration _before_ enabling the interrupts
    net/appletalk: fix atalk_release use after free
    ipx: fix ipx_release()
    snmp: SNMP_UPD_PO_STATS_BH() always called from softirq
    l2tp: fix possible oops on l2tp_eth module unload
    xfrm: Fix initialize repl field of struct xfrm_state
    netfilter: ipt_CLUSTERIP: fix buffer overflow
    netfilter: xtables: fix reentrancy
    netfilter: ipset: fix checking the type revision at create command
    netfilter: ipset: fix address ranges at hash:*port* types
    niu: Rename NIU parent platform device name to fix conflict.
    r8169: fix a bug in rtl8169_init_phy()
    bonding: fix a typo in a comment
    ftmac100: use resource_size()
    ...

    Linus Torvalds
     

22 Mar, 2011

18 commits

  • Commit 44540960 "veth: move loopback logic to common location" introduced
    a bug in the packet counters. I don't understand why that happened as it
    is not explained in the comments and the mut check in dev_forward_skb
    retains the assumption that skb->len is the total length of the packet.

    I just measured this emperically by setting up a veth pair between two
    noop network namespaces setting and attempting a telnet connection between
    the two. I saw three packets in each direction and the byte counters were
    exactly 14*3 = 42 bytes high in each direction. I got the actual
    packet lengths with tcpdump.

    So remove the extra ETH_HLEN from the veth byte count totals.

    Signed-off-by: Eric W. Biederman
    Signed-off-by: David S. Miller

    Eric W. Biederman
     
  • When the macvlan driver was extended to call unregisgter_netdevice_queue
    in 23289a37e2b127dfc4de1313fba15bb4c9f0cd5b, a use after free of struct
    macvlan_port was introduced. The code in dellink relied on unregister_netdevice
    actually unregistering the net device so it would be safe to free macvlan_port.

    Since unregister_netdevice_queue can just queue up the unregister instead of
    performing the unregiser immediately we free the macvlan_port too soon and
    then the code in macvlan_stop removes the macaddress for the set of macaddress
    to listen for and uses memory that has already been freed.

    To fix this add a reference count to track when it is safe to free the macvlan_port
    and move the call of macvlan_port_destroy into macvlan_uninit which is guaranteed
    to be called after the final macvlan_port_close.

    Signed-off-by: Eric W. Biederman
    Signed-off-by: David S. Miller

    Eric W. Biederman
     
  • I ran into some trouble while testing the SocketCAN driver for the BOSCH
    C_CAN controller. The interface is not correctly initialized, if I put
    some CAN traffic on the line, _while_ the interface is being started
    (which means: the interface doesn't come up correcty, if there's some RX
    traffic while doing 'ifconfig can0 up').

    The current implementation enables the controller interrupts _before_
    doing the basic c_can configuration. I think, this should be done the
    other way round.

    The patch below fixes things for me.

    Signed-off-by: Jan Altenberg
    Acked-by: Kurt Van Dijck
    Acked-by: Wolfgang Grandegger
    Signed-off-by: David S. Miller

    Jan Altenberg
     
  • isr is passed later into i2c_pxa_irq_txempty and
    i2c_pxa_irq_rxfull and they may use some other bits
    than irq sources.

    Signed-off-by: Vasily Khoruzhick
    Signed-off-by: Ben Dooks

    Vasily Khoruzhick
     
  • …r-2639/i2c/i2c-imx' into for-linus/2639/i2c-2

    Ben Dooks
     
  • This patch reduces the number of sequential pointer derefs in
    drivers/scsi/scsi_error.c

    This has been submitted a number of times over a couple of years. I
    believe this version adresses all comments it has gathered over time.
    Please apply or reject with a reason.

    The benefits are:

    - makes the code easier to read. Lots of sequential derefs of the same
    pointers is not easy on the eye.

    - theoretically at least, just dereferencing the pointers once can
    allow the compiler to generally slightly faster code, so in theory
    this could also be a micro speed optimization.

    - reduces size of object file (tiny effect: on x86-64, in at least one
    configuration, the text size decreased from 9439 bytes to 9400)

    - removes some pointless (mostly trailing) whitespace.

    Signed-off-by: Jesper Juhl
    Signed-off-by: Linus Torvalds

    Jesper Juhl
     
  • Remove incorrect Matrox G200eV support that was previously added by
    commit e3a1938805d2e81b27d3d348788644f3bad004f2

    A serious issue with the incorrect G200eV support that reproduces on the
    Matrox G200eV equipped IBM x3650 M2 is the total lack of text (login
    banner, login prompt, etc) on the console when X is not running and
    total lack of text on all of the virtual consoles after X is started.

    Any concerns that the incorrect code (upstream since October 2008) has
    been successfully used on non-IBM G200eV equipped system(s) appear to be
    unwarranted. In addition to the serious/non-intermittent nature of
    issues that have been spotted on IBM systems, complete removal of the
    incorrect code is clearly supported by the following Matrox (Yannick
    Heneault) provided input:
    "It impossible that this patch should have work on a system.
    The patch only declare the G200eV as a regular G200 which is
    not case. Many registers are different, including at least the
    PLL programming sequence. If the G200eV is programmed like a
    regular G200, it will not display anything."

    v1 - Initial patch that removed the incorrect code for _all_
    G200eV equipped systems.
    v2 - Darrick Wong provided patch that blacklisted the incorrect
    code on G200eV equipped IBM systems leaving it enabled on
    all G200eV equipped non-IBM systems.
    v3 - Same code changes included with v1 plus additional
    justification for complete removal of the incorrect code.

    Signed-off-by: Gary Hade
    Cc: Darrick J. Wong
    Cc: Krzysztof Helt
    Cc: Petr Vandrovec
    Cc: Andrew Morton
    Cc: Linus Torvalds
    Cc: Yannick Heneault
    Cc: Christian Toutant
    Signed-off-by: Linus Torvalds

    Gary Hade
     
  • * 'hwmon-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jdelvare/staging:
    hwmon: (ads1015) Make gain and datarate configurable
    hwmon: (ads1015) Drop dynamic attribute group
    hwmon: Add support for Texas Instruments ADS1015
    hwmon: New driver for SMSC SCH5627
    hwmon: (abituguru*) Update my email address
    hwmon: (lm75) Speed up detection
    hwmon: (lm75) Add detection of the National Semiconductor LM75A
    hp_accel: Fix driver name
    Move lis3lv02d drivers to drivers/misc
    Move hp_accel to drivers/platform/x86
    Let Kconfig handle lis3lv02d dependencies
    hwmon: (sht15) Fix integer overflow in humidity calculation
    hwmon: (sht15) Spelling fix
    hwmon: (w83795) Document pin mapping

    Linus Torvalds
     
  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394-2.6:
    firewire: core: ignore link-active bit of new nodes, fix device recognition
    firewire: sbp2: revert obsolete 'fix stall with "Unsolicited response"'
    firewire: core: increase default SPLIT_TIMEOUT value
    firewire: ohci: Misleading kfree in ohci.c::pci_probe/remove
    firewire: ohci: omit IntEvent.busReset check rom AT queueing
    firewire: ohci: prevent starting of iso contexts with empty queue
    firewire: ohci: prevent iso completion callbacks after context stop
    firewire: core: rename some variables
    firewire: nosy: should work on Power Mac G4 PCI too
    firewire: core: fix card->reset_jiffies overflow
    firewire: cdev: remove unneeded reference
    firewire: cdev: always wait for outbound transactions to complete
    firewire: cdev: remove unneeded idr_find() from complete_transaction()
    firewire: ohci: log dead DMA contexts

    Linus Torvalds
     
  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/parisc-2.6:
    [PARISC] Convert to new irq_chip functions
    [PARISC] fix per-cpu flag problem in the cpu affinity checkers
    [PARISC] fix vmap flush/invalidate
    eliminate special FLUSH flag from page table
    parisc: flush pages through tmpalias space

    Linus Torvalds
     
  • Configuration for ads1015 gain and datarate is possible via
    devicetree or platform data.

    This is a followup patch to previous ads1015 patches on Jean Delvares
    tree.

    Signed-off-by: Dirk Eibach
    Signed-off-by: Jean Delvare

    Dirk Eibach
     
  • It is cheaper to handle attributes individually.

    Signed-off-by: Jean Delvare
    Acked-by: Dirk Eibach

    Jean Delvare
     
  • Signed-off-by: Dirk Eibach
    Signed-off-by: Jean Delvare

    Dirk Eibach
     
  • SMSC SCH5627 Super I/O chips include complete hardware monitoring
    capabilities. They can monitor up to 5 voltages, 4 fans and 8
    temperatures.

    The hardware monitoring part of the SMSC SCH5627 is accessed by talking
    through an embedded microcontroller. An application note describing the
    protocol for communicating with the microcontroller is available upon
    request. Please mail me if you want a copy.

    Signed-off-by: Hans de Goede
    Signed-off-by: Jean Delvare

    Hans de Goede
     
  • Signed-off-by: Hans de Goede
    Signed-off-by: Jean Delvare

    Hans de Goede
     
  • Make the LM75/LM75A device detection faster:

    * Don't read the current temperature value when we don't use it.
    * Check for unused bits in the configuration register as soon as we
    have read its value.
    * Don't use word reads, not all devices support this, and some which
    don't misbehave when you try.
    * Check for cycling register values every 40 register addresses
    instead of every 8, it's 5 times faster and just as efficient.

    Some of these improvements come straight from the user-space
    sensors-detect script, so both detection routines are in line now.

    Signed-off-by: Jean Delvare
    Cc: Len Sorensen
    Acked-by: Guenter Roeck

    Jean Delvare
     
  • Add support for detection of the National Semiconductor LM75A using the ID
    register value.

    Signed-off-by: Len Sorensen
    Signed-off-by: Jean Delvare

    Len Sorensen
     
  • I suspect that the "lis3lv02d" driver name is a legacy from before
    the split into several modules. Use a specific name for the hp_accel
    driver, for better error messages and easier investigation of issues.

    Signed-off-by: Jean Delvare
    Acked-by: Guenter Roeck
    Acked-by: Eric Piel
    Acked-by: Jonathan Cameron
    Tested-by: Eric Piel
    Tested-by: Takashi Iwai

    Jean Delvare