13 Dec, 2009

1 commit

  • * 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc: (151 commits)
    powerpc: Fix usage of 64-bit instruction in 32-bit altivec code
    MAINTAINERS: Add PowerPC patterns
    powerpc/pseries: Track previous CPPR values to correctly EOI interrupts
    powerpc/pseries: Correct pseries/dlpar.c build break without CONFIG_SMP
    powerpc: Make "intspec" pointers in irq_host->xlate() const
    powerpc/8xx: DTLB Miss cleanup
    powerpc/8xx: Remove DIRTY pte handling in DTLB Error.
    powerpc/8xx: Start using dcbX instructions in various copy routines
    powerpc/8xx: Restore _PAGE_WRITETHRU
    powerpc/8xx: Add missing Guarded setting in DTLB Error.
    powerpc/8xx: Fixup DAR from buggy dcbX instructions.
    powerpc/8xx: Tag DAR with 0x00f0 to catch buggy instructions.
    powerpc/8xx: Update TLB asm so it behaves as linux mm expects.
    powerpc/8xx: Invalidate non present TLBs
    powerpc/pseries: Serialize cpu hotplug operations during deactivate Vs deallocate
    pseries/pseries: Add code to online/offline CPUs of a DLPAR node
    powerpc: stop_this_cpu: remove the cpu from the online map.
    powerpc/pseries: Add kernel based CPU DLPAR handling
    sysfs/cpu: Add probe/release files
    powerpc/pseries: Kernel DLPAR Infrastructure
    ...

    Linus Torvalds
     

10 Dec, 2009

2 commits

  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial: (42 commits)
    tree-wide: fix misspelling of "definition" in comments
    reiserfs: fix misspelling of "journaled"
    doc: Fix a typo in slub.txt.
    inotify: remove superfluous return code check
    hdlc: spelling fix in find_pvc() comment
    doc: fix regulator docs cut-and-pasteism
    mtd: Fix comment in Kconfig
    doc: Fix IRQ chip docs
    tree-wide: fix assorted typos all over the place
    drivers/ata/libata-sff.c: comment spelling fixes
    fix typos/grammos in Documentation/edac.txt
    sysctl: add missing comments
    fs/debugfs/inode.c: fix comment typos
    sgivwfb: Make use of ARRAY_SIZE.
    sky2: fix sky2_link_down copy/paste comment error
    tree-wide: fix typos "couter" -> "counter"
    tree-wide: fix typos "offest" -> "offset"
    fix kerneldoc for set_irq_msi()
    spidev: fix double "of of" in comment
    comment typo fix: sybsystem -> subsystem
    ...

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

    * 'bkl-drivers-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
    agp: Remove the BKL from agp_open
    inifiband: Remove BKL from ipath_open()
    mips: Remove BKL from tb0219
    drivers: Remove BKL from scx200_gpio
    drivers: Remove BKL from pc8736x_gpio
    parisc: Remove BKL from eisa_eeprom
    rtc: Remove BKL from efirtc
    input: Remove BKL from hp_sdc_rtc
    hw_random: Remove BKL from core
    macintosh: Remove BKL from ans-lcd
    nvram: Drop the bkl from non-generic nvram_llseek()
    nvram: Drop the bkl from nvram_llseek()
    mem_class: Drop the bkl from memory_open()
    spi: Remove BKL from spidev_open
    drivers: Remove BKL from cs5535_gpio
    drivers: Remove BKL from misc_open

    Linus Torvalds
     

09 Dec, 2009

3 commits

  • Conflicts:
    include/linux/kvm.h

    Benjamin Herrenschmidt
     
  • In commit 0512a9a8e277a9de2820211eef964473b714ae65, we unilaterally zero the
    "pwm invert" bit in the fan behavior configuration register. On my PowerBook
    G4, this results in the fans going to full speed at low temperature and
    shutting off at high temperature because the pwm invert bit is supposed to be
    set.

    Therefore, record the pwm invert bit at driver load time, and write the bit
    into the fan behavior control register. This restores correct behavior on my
    PBG4 and should work around the bit being set to the wrong value after
    suspend/resume (which is what the original patch was trying to fix). It also
    fixes a minor omission where the pwm invert bit correction is NOT performed
    when switching into automatic mode.

    Signed-off-by: Darrick J. Wong
    CC:
    Signed-off-by: Benjamin Herrenschmidt

    Darrick J. Wong
     
  • The hotplug mediabay has tendrils deep into drivers/ide code
    which makes a libata port reather difficult. In addition it's
    ugly and could be done better.

    This reworks the interface between the mediabay and the rest
    of the world so that:

    - Any macio_driver can now have a mediabay_event callback
    which will be called when that driver sits on a mediabay and
    it's been either plugged or unplugged. The device type is
    passed as an argument. We can now move all the IDE cruft
    into the IDE driver itself

    - A check_media_bay() function can be used to take a peek
    at the type of device currently in the bay if any, a cleaner
    variant of the previous function with the same name.

    - A pair of lock/unlock functions are exposed to allow the
    IDE driver to block the hotplug callbacks during the initial
    setup and probing of the bay in order to avoid nasty race
    conditions.

    - The mediabay code no longer needs to spin on the status
    register of the IDE interface when it detects an IDE device,
    this is done just fine by the IDE code itself

    Overall, less code, simpler, and allows for another driver
    than our old drivers/ide based one.

    Signed-off-by: Benjamin Herrenschmidt

    Benjamin Herrenschmidt
     

08 Dec, 2009

4 commits


04 Dec, 2009

1 commit

  • That is "success", "unknown", "through", "performance", "[re|un]mapping"
    , "access", "default", "reasonable", "[con]currently", "temperature"
    , "channel", "[un]used", "application", "example","hierarchy", "therefore"
    , "[over|under]flow", "contiguous", "threshold", "enough" and others.

    Signed-off-by: André Goddard Rosa
    Signed-off-by: Jiri Kosina

    André Goddard Rosa
     

24 Nov, 2009

1 commit

  • Drop the bkl from nvram_llseek() as it obviously protects nothing. The
    file offset is safe in essence.

    The ioctl can be converted to unlocked_ioctl because it just calls
    pmac_get_partition() which reads a value from an array which was
    initialized at early boot time. No need for serialization.

    Signed-off-by: Thomas Gleixner
    Cc: Benjamin Herrenschmidt
    Cc: linuxppc-dev@ozlabs.org
    Signed-off-by: Benjamin Herrenschmidt

    Thomas Gleixner
     

19 Nov, 2009

1 commit


12 Nov, 2009

1 commit

  • Now that sys_sysctl is a wrapper around /proc/sys all of
    the binary sysctl support elsewhere in the tree is
    dead code.

    Cc: Jens Axboe
    Cc: Corey Minyard
    Cc: Greg Kroah-Hartman
    Cc: Matt Mackall
    Cc: Herbert Xu
    Cc: Neil Brown
    Cc: "James E.J. Bottomley"
    Acked-by: Clemens Ladisch for drivers/char/hpet.c
    Signed-off-by: Eric W. Biederman

    Eric W. Biederman
     

30 Oct, 2009

1 commit


14 Oct, 2009

2 commits

  • The ans-lcd driver got the cycle_kernel_lock() in anslcd_open() from
    the BKL pushdown and it still uses the locked ioctl.

    The BKL serialization in this driver is more than obscure and
    definitely does not cover all possible corner cases. Protect the
    access to the hardware with a local mutex and get rid of BKL and
    locked ioctl.

    Signed-off-by: Thomas Gleixner
    LKML-Reference:
    Acked-by: Benjamin Herrenschmidt

    Thomas Gleixner
     
  • Since the change of how interrupts are disabled during suspend,
    certain PowerBook models started exhibiting various issues during
    suspend or resume from sleep.

    I finally tracked it down to the code that runs various "platform"
    functions (kind of little scripts extracted from the device-tree),
    which uses our i2c and PMU drivers expecting interrutps to work,
    and at a time where with the new scheme, they have been disabled.

    This causes timeouts internally which for some reason results in
    the PMU being unable to see the trackpad, among other issues, really
    it depends on the machine. Most of the time, we fail to properly adjust
    some clocks for suspend/resume so the results are not always
    predictable.

    This patch fixes it by using IRQF_TIMER for both the PMU and the I2C
    interrupts. I prefer doing it this way than moving the call sites since
    I really want those platform functions to still be called after all
    drivers (and before sysdevs).

    We also do a slight cleanup to via-pmu.c driver to make sure the
    ADB autopoll mask is handled correctly when doing bus resets

    Signed-off-by: Benjamin Herrenschmidt

    Benjamin Herrenschmidt
     

05 Oct, 2009

1 commit


27 Sep, 2009

1 commit

  • * 'for-linus' of git://git.o-hand.com/linux-rpurdie-leds:
    leds: move leds-clevo-mail's probe function to .devinit.text
    leds: Fix indentation in LEDS_LP3944 Kconfig entry
    leds: Fix LED names
    leds: Fix leds-pca9532 whitespace issues
    leds: fix coding style in worker thread code for ledtrig-gpio.
    leds: gpio-leds: fix typographics fault
    leds: Add WM831x status LED driver

    Linus Torvalds
     

21 Sep, 2009

1 commit


16 Sep, 2009

1 commit

  • * 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc: (134 commits)
    powerpc/nvram: Enable use Generic NVRAM driver for different size chips
    powerpc/iseries: Fix oops reading from /proc/iSeries/mf/*/cmdline
    powerpc/ps3: Workaround for flash memory I/O error
    powerpc/booke: Don't set DABR on 64-bit BookE, use DAC1 instead
    powerpc/perf_counters: Reduce stack usage of power_check_constraints
    powerpc: Fix bug where perf_counters breaks oprofile
    powerpc/85xx: Fix SMP compile error and allow NULL for smp_ops
    powerpc/irq: Improve nanodoc
    powerpc: Fix some late PowerMac G5 with PCIe ATI graphics
    powerpc/fsl-booke: Use HW PTE format if CONFIG_PTE_64BIT
    powerpc/book3e: Add missing page sizes
    powerpc/pseries: Fix to handle slb resize across migration
    powerpc/powermac: Thermal control turns system off too eagerly
    powerpc/pci: Merge ppc32 and ppc64 versions of phb_scan()
    powerpc/405ex: support cuImage via included dtb
    powerpc/405ex: provide necessary fixup function to support cuImage
    powerpc/40x: Add support for the ESTeem 195E (PPC405EP) SBC
    powerpc/44x: Add Eiger AMCC (AppliedMicro) PPC460SX evaluation board support.
    powerpc/44x: Update Arches defconfig
    powerpc/44x: Update Arches dts
    ...

    Fix up conflicts in drivers/char/agp/uninorth-agp.c

    Linus Torvalds
     

07 Sep, 2009

1 commit

  • This is needed to get kde-powersave to work properly on some g4
    powerbooks.

    From: Olaf Hering
    Signed-off-by: Greg Kroah-Hartman
    Signed-off-by: Richard Purdie

    Olaf Hering
     

02 Sep, 2009

1 commit

  • On certain PowerMacs, a module (therm_windtunnel) controls various
    thermal settings (it can report CPU/case temperature, change speed
    of internal fans, etc.)

    By default, the hardware thermal control has a temperature limit to
    protect the computer from damages (the default limit seems to be 80°C)
    but therm_windtunnel.c reduces it to an anormaly low value (65°C),
    which means that he computer will shut down randomly when hit by direct
    sun light or during summer (summer in France can be quite hot), actually
    possibly losing data instead of protecting it.

    The overheat limit in therm_windtunnel.c:253-254 should be set to 75°C
    and 70°C instead of 65°C and 60°C respectively.

    From: Lyonel Vincent
    Signed-off-by: Bartlomiej Zolnierkiewicz
    Signed-off-by: Benjamin Herrenschmidt

    Lyonel Vincent
     

27 Aug, 2009

1 commit

  • With while (count++ < 50) { ... } count can reach 51, not 50, so we
    shouldn't give an error message on a count of 50.

    [akpm@linux-foundation.org: coding-style fixes]
    Signed-off-by: Roel Kluin
    Cc: Geert Uytterhoeven
    Signed-off-by: Andrew Morton
    Signed-off-by: Geert Uytterhoeven

    Roel Kluin
     

20 Aug, 2009

1 commit


26 Jun, 2009

1 commit

  • The macio_dev's created to map devices inside the MacIO ASICs
    don't have proper dma_ops. This causes crashes on some machines
    since the SCSI code calls dma_map_* on our behalf using the
    device we hang from.

    This fixes it by copying the parent PCI device dma_ops into
    the macio_dev when creating it.

    Signed-off-by: Benjamin Herrenschmidt

    Benjamin Herrenschmidt
     

17 Jun, 2009

1 commit

  • * 'i2c-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jdelvare/staging:
    therm_windtunnel: Convert to a new-style i2c driver
    therm_adt746x: Convert to a new-style i2c driver
    windfarm: Convert to new-style i2c drivers
    therm_pm72: Convert to a new-style i2c driver
    i2c-viapro: Add new PCI device ID for VX855
    i2c/chips: Move max6875 to drivers/misc/eeprom
    i2c: Do not give adapters a default parent
    i2c: Do not probe for TV chips on Voodoo3 adapters
    i2c: Retry automatically on arbitration loss
    i2c: Remove void casts

    Linus Torvalds
     

16 Jun, 2009

4 commits


02 Jun, 2009

1 commit


24 Apr, 2009

1 commit


23 Apr, 2009

1 commit

  • On Tuesday 14 April 2009 20:31:21 Subrata Modak wrote:
    > Observed the following build error:
    > ---
    > CC drivers/macintosh/mediabay.o
    > In file included from drivers/macintosh/mediabay.c:21:
    > include/linux/ide.h:605: error: field ‘request_sense_rq’ has incomplete
    > type
    > make[2]: *** [drivers/macintosh/mediabay.o] Error 1
    > make[1]: *** [drivers/macintosh] Error 2
    > make: *** [drivers] Error 2
    > ---

    mediabay shouldn't include unconditionally so
    remove the superfluous include from mediabay.c (
    will pull in for CONFIG_BLK_DEV_IDE_PMAC=y).

    Reported-by: Subrata Modak
    Cc: Paul Mackerras
    Signed-off-by: Bartlomiej Zolnierkiewicz

    Bartlomiej Zolnierkiewicz
     

22 Apr, 2009

2 commits

  • Now that the powermac IDE host driver can be modular, we need to
    export check_media_bay_by_base() and media_bay_set_ide_infos()
    from drivers/macintosh/mediabay.c for it.

    This fixes the following build error:

    > CC [M] drivers/ide/pmac.o
    > drivers/ide/pmac.c: In function ‘pmac_ide_init_dev’:
    > drivers/ide/pmac.c:955: error: implicit declaration of function
    > ‘check_media_bay_by_base’
    > drivers/ide/pmac.c: In function ‘pmac_ide_setup_device’:
    > drivers/ide/pmac.c:1090: error: implicit declaration of function
    > ‘media_bay_set_ide_infos’
    > make[2]: *** [drivers/ide/pmac.o] Error 1
    > make[1]: *** [drivers/ide] Error 2
    > make: *** [drivers] Error 2

    Reported-by: Subrata Modak
    Signed-off-by: Bartlomiej Zolnierkiewicz
    Signed-off-by: Paul Mackerras

    Bartlomiej Zolnierkiewicz
     
  • Fixes this build error:

    In file included from drivers/macintosh/mediabay.c:21:
    include/linux/ide.h:605: error: field 'request_sense_rq' has incomplete type

    Signed-off-by: Alexander Beregalov
    Signed-off-by: Paul Mackerras

    Alexander Beregalov
     

11 Feb, 2009

1 commit


08 Jan, 2009

1 commit

  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial: (24 commits)
    trivial: chack -> check typo fix in main Makefile
    trivial: Add a space (and a comma) to a printk in 8250 driver
    trivial: Fix misspelling of "firmware" in docs for ncr53c8xx/sym53c8xx
    trivial: Fix misspelling of "firmware" in powerpc Makefile
    trivial: Fix misspelling of "firmware" in usb.c
    trivial: Fix misspelling of "firmware" in qla1280.c
    trivial: Fix misspelling of "firmware" in a100u2w.c
    trivial: Fix misspelling of "firmware" in megaraid.c
    trivial: Fix misspelling of "firmware" in ql4_mbx.c
    trivial: Fix misspelling of "firmware" in acpi_memhotplug.c
    trivial: Fix misspelling of "firmware" in ipw2100.c
    trivial: Fix misspelling of "firmware" in atmel.c
    trivial: Fix misspelled firmware in Kconfig
    trivial: fix an -> a typos in documentation and comments
    trivial: fix then -> than typos in comments and documentation
    trivial: update Jesper Juhl CREDITS entry with new email
    trivial: fix singal -> signal typo
    trivial: Fix incorrect use of "loose" in event.c
    trivial: printk: fix indentation of new_text_line declaration
    trivial: rtc-stk17ta8: fix sparse warning
    ...

    Linus Torvalds
     

07 Jan, 2009

2 commits

  • * git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core-2.6: (60 commits)
    uio: make uio_info's name and version const
    UIO: Documentation for UIO ioport info handling
    UIO: Pass information about ioports to userspace (V2)
    UIO: uio_pdrv_genirq: allow custom irq_flags
    UIO: use pci_ioremap_bar() in drivers/uio
    arm: struct device - replace bus_id with dev_name(), dev_set_name()
    libata: struct device - replace bus_id with dev_name(), dev_set_name()
    avr: struct device - replace bus_id with dev_name(), dev_set_name()
    block: struct device - replace bus_id with dev_name(), dev_set_name()
    chris: struct device - replace bus_id with dev_name(), dev_set_name()
    dmi: struct device - replace bus_id with dev_name(), dev_set_name()
    gadget: struct device - replace bus_id with dev_name(), dev_set_name()
    gpio: struct device - replace bus_id with dev_name(), dev_set_name()
    gpu: struct device - replace bus_id with dev_name(), dev_set_name()
    hwmon: struct device - replace bus_id with dev_name(), dev_set_name()
    i2o: struct device - replace bus_id with dev_name(), dev_set_name()
    IA64: struct device - replace bus_id with dev_name(), dev_set_name()
    i7300_idle: struct device - replace bus_id with dev_name(), dev_set_name()
    infiniband: struct device - replace bus_id with dev_name(), dev_set_name()
    ISDN: struct device - replace bus_id with dev_name(), dev_set_name()
    ...

    Linus Torvalds
     
  • of_node_put is needed before discarding a value received from
    of_find_node_by_name, eg in error handling code or when the device node is
    no longer used.

    The semantic match that catches the bug is as follows:
    (http://www.emn.fr/x-info/coccinelle/)

    //
    @r exists@
    local idexpression struct device_node *n;
    position p1, p2;
    struct device_node *n1;
    statement S;
    identifier f;
    expression E;
    expression *ptr != NULL;
    @@

    n@p1 = of_find_node_by_name(...)
    ...
    if (!n) S
    ... when != of_node_put(n)
    when != n1 = f(n,...)
    when != E = n
    when any
    when strict
    (
    return \(0\|\|ptr\);
    |
    return@p2 ...;
    |
    of_node_put(n);
    |
    n1 = f(n,...)
    |
    E = n
    )

    @script:python@
    p1 << r.p1;
    p2 << r.p2;
    @@

    print "* file: %s of_find_node_by_name %s return %s" % (p1[0].file,p1[0].line,p2[0].line)
    //

    Signed-off-by: Nicolas Palix
    Signed-off-by: Julia Lawall
    Acked-by: Stephen Rothwell
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Nicolas Palix