14 Mar, 2011

1 commit

  • The device table is required to load modules based on modaliases.

    After adding MODULE_DEVICE_TABLE, below entries will be added to
    modules.pcimap:

    pch_gpio 0x00008086 0x00008803 0xffffffff 0xffffffff 0x00000000 0x00000000 0x0
    ml_ioh_gpio 0x000010db 0x0000802e 0xffffffff 0xffffffff 0x00000000 0x00000000 0x0

    Signed-off-by: Axel Lin
    Cc: Tomoya MORINAGA
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Axel Lin
     

12 Feb, 2011

1 commit

  • Add a mutex to register communication and handling. Without the mutex,
    GPIOs didn't switch as expected when toggled in a fast sequence of
    status changes of multiple outputs.

    Signed-off-by: Roland Stigge
    Acked-by: Eric Miao
    Cc: Grant Likely
    Cc: Marc Zyngier
    Cc: Ben Gardner
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Roland Stigge
     

26 Jan, 2011

1 commit


15 Jan, 2011

2 commits

  • * 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/sameo/mfd-2.6: (59 commits)
    mfd: ab8500-core chip version cut 2.0 support
    mfd: Flag WM831x /IRQ as a wake source
    mfd: Convert WM831x away from legacy I2C PM operations
    regulator: Support MAX8998/LP3974 DVS-GPIO
    mfd: Support LP3974 RTC
    i2c: Convert SCx200 driver from using raw PCI to platform device
    x86: OLPC: convert olpc-xo1 driver from pci device to platform device
    mfd: MAX8998/LP3974 hibernation support
    mfd/ab8500: remove spi support
    mfd: Remove ARCH_U8500 dependency from AB8500
    misc: Make AB8500_PWM driver depend on U8500 due to PWM breakage
    mfd: Add __devexit annotation for vx855_remove
    mfd: twl6030 irq_data conversion.
    gpio: Fix cs5535 printk warnings
    misc: Fix cs5535 printk warnings
    mfd: Convert Wolfson MFD drivers to use irq_data accessor function
    mfd: Convert TWL4030 to new irq_ APIs
    mfd: Convert tps6586x driver to new irq_ API
    mfd: Convert tc6393xb driver to new irq_ APIs
    mfd: Convert t7166xb driver to new irq_ API
    ...

    Linus Torvalds
     
  • Commit a1f5f22adc3206c47e70652c12671666c65b579f ("gpio: timbgpio:
    irq_data conversion") was slightly too enthusiastic in converting
    timbgpio_irq() over to take an irq_data * argument instead of an
    unsigned int irq argument, as it is a flow handler, which still take
    IRQ numbers for now. (And on top of that, it was using the wrong
    accessors.)

    This fixes it up, and seems to build without warnings.

    Signed-off-by: Lennert Buytenhek
    Cc: Andrew Morton
    Cc: Richard Röjfors
    Signed-off-by: Linus Torvalds

    Lennert Buytenhek
     

14 Jan, 2011

18 commits

  • drivers/gpio/cs5535-gpio.c: In function 'cs5535_gpio_probe':
    drivers/gpio/cs5535-gpio.c:269: warning: format '%x' expects type 'unsigned int', but argument 3 has type 'resource_size_t'
    drivers/gpio/cs5535-gpio.c:269: warning: format '%x' expects type 'unsigned int', but argument 4 has type 'resource_size_t'

    Use vsprintf extension %pR to format resource.

    Original-patch-by: Randy Dunlap
    Signed-off-by: Joe Perches
    Signed-off-by: Samuel Ortiz

    Joe Perches
     
  • This adds MODULE_ALIAS entries to the various cs5535 subdevice modules; this
    allows the modules to automatically be loaded when cs5535-mfd loads.

    Signed-off-by: Andres Salomon
    Signed-off-by: Samuel Ortiz

    Andres Salomon
     
  • The cs5535-mfd driver now takes care of the PCI BAR handling; this
    simplifies the gpio driver a lot.

    Signed-off-by: Andres Salomon
    Signed-off-by: Samuel Ortiz

    Andres Salomon
     
  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6: (348 commits)
    ALSA: hda - Fix NULL-derefence with a single mic in STAC auto-mic detection
    ALSA: hda - Add missing NID 0x19 fixup for Sony VAIO
    ALSA: hda - Fix ALC275 enable hardware EQ for SONY VAIO
    ALSA: oxygen: fix Xonar DG input
    ALSA: hda - Fix EAPD on Lenovo NB ALC269 to low
    ALSA: hda - Fix missing EAPD for Acer 4930G
    ALSA: hda: Disable 4/6 channels on some NVIDIA GPUs.
    ALSA: hda - Add static_hdmi_pcm option to HDMI codec parser
    ALSA: hda - Don't refer ELD when unplugged
    ASoC: tpa6130a2: Fix compiler warning
    ASoC: tlv320dac33: Add DAPM selection for LOM invert
    ASoC: DMIC codec: Adding a generic DMIC codec
    ALSA: snd-usb-us122l: Fix missing NULL checks
    ALSA: snd-usb-us122l: Fix MIDI output
    ASoC: soc-cache: Fix invalid memory access during snd_soc_lzo_cache_sync()
    ASoC: Fix section mismatch in wm8995.c
    ALSA: oxygen: add S/PDIF source selection for Claro cards
    ALSA: oxygen: fix CD/MIDI for X-Meridian (2G)
    ASoC: fix migor audio build
    ALSA: include delay.h for msleep in Xonar DG support
    ...

    Linus Torvalds
     
  • ML7213 is a companion chip for Intel Atom E6xx series. This driver can be
    used for OKI SEMICONDUCTOR ML7213 IOH(Input/Output Hub) which is for
    IVI(In-Vehicle Infotainment) use. This driver can access the IOH's GPIO
    device.

    Signed-off-by: Tomoya MORINAGA
    Cc: Samuel Ortiz
    Cc: Rabin Vincent
    Cc: Marc Zyngier
    Cc: Linus Walleij
    Cc: Mark Brown
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Tomoya MORINAGA
     
  • Fix kconfig dependency warning to satisfy dependencies:

    warning: (GPIO_VX855 && GPIOLIB) selects MFD_VX855 which has unmet direct dependencies (MFD_SUPPORT && PCI)

    Signed-off-by: Randy Dunlap
    Cc: Daniel Drake
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Randy Dunlap
     
  • Fix kconfig dependency warning to satisfy dependencies:

    warning: (GPIO_RDC321X && PCI && GPIOLIB) selects MFD_RDC321X which has unmet direct dependencies (MFD_SUPPORT && PCI)

    Signed-off-by: Randy Dunlap
    Cc: Florian Fainelli
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Randy Dunlap
     
  • Converts irq_chips and flow handlers over to the new struct irq_data based
    irq_chip functions.

    Signed-off-by: Lennert Buytenhek
    Cc: Yoichi Yuasa
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Lennert Buytenhek
     
  • Converts irq_chips and flow handlers over to the new struct irq_data based
    irq_chip functions.

    Signed-off-by: Lennert Buytenhek
    Cc: Richard Röjfors
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Lennert Buytenhek
     
  • Converts irq_chips and flow handlers over to the new struct irq_data based
    irq_chip functions.

    Signed-off-by: Lennert Buytenhek
    Acked-by: Rabin Vincent
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Lennert Buytenhek
     
  • Converts irq_chips and flow handlers over to the new struct irq_data based
    irq_chip functions.

    Signed-off-by: Lennert Buytenhek
    Cc: Gregory Bean
    Tested-by: Rohit Vaswani
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Lennert Buytenhek
     
  • Converts irq_chips and flow handlers over to the new struct irq_data based
    irq_chip functions.

    Signed-off-by: Lennert Buytenhek
    Acked-by: Rabin Vincent
    Cc: Luotao Fu
    Cc: Linus Walleij
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Lennert Buytenhek
     
  • Converts irq_chips and flow handlers over to the new struct irq_data based
    irq_chip functions.

    Signed-off-by: Lennert Buytenhek
    Acked-by: Baruch Siach
    Cc: David Brownell
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Lennert Buytenhek
     
  • Converts irq_chips and flow handlers over to the new struct irq_data based
    irq_chip functions.

    Signed-off-by: Lennert Buytenhek
    Cc: Alek Du
    Cc: Alan Cox
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Lennert Buytenhek
     
  • Converts irq_chips and flow handlers over to the new struct irq_data based
    irq_chip functions.

    Signed-off-by: Lennert Buytenhek
    Acked-by: Marc Zyngier
    Cc: Eric Miao
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Lennert Buytenhek
     
  • Converts irq_chips and flow handlers over to the new struct irq_data based
    irq_chip functions.

    Signed-off-by: Lennert Buytenhek
    Cc: Alan Cox
    Cc: Yin Kangkai
    Cc: Alek Du
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Lennert Buytenhek
     
  • Converts irq_chips and flow handlers over to the new struct irq_data based
    irq_chip functions.

    Signed-off-by: Lennert Buytenhek
    Acked-by: "Hennerich, Michael"
    Cc: Mark Brown
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Lennert Buytenhek
     
  • This adds (well, re-adds actually) handling for events/IRQs through cs5535
    GPIOs. In the wild and wooly world of CS5535, setup_event() is for
    assigning an IRQ to a GPIO filter/event pair, and set_irq() sets up the
    pair to trigger IRQs.

    These should really only be used in highly platform-specific drivers (such
    as OLPC's DCON driver). Sadly, because set_irq() uses MSRs, this causes
    the driver to become X86-specific.

    Signed-off-by: Andres Salomon
    Signed-off-by: Daniel Drake
    Cc: Grant Likely
    Cc: Greg KH
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Andres Salomon
     

13 Jan, 2011

1 commit


07 Jan, 2011

1 commit


03 Jan, 2011

1 commit


24 Dec, 2010

2 commits

  • The default for non-READ_BACK GPIO regs is to have the clear bits set;
    this means that our original errata fix was too simplistic. This
    changes it to the following behavior:

    - when setting GPIOs, ignore the higher order bits (they're for
    clearing, we don't need to care about them).

    - when clearing GPIOs, keep all the bits, but unset (via XOR) the
    lower order bit that negates the clear bit that we care about. That
    is, if we're clearing GPIO 26 (val = 0x04000000), we first XOR what's
    currently in the register with 0x0400 (GPIO 26's SET bit), and then
    OR that with the GPIO 26's CLEAR bit.

    Tested-by: Daniel Drake
    Signed-off-by: Andres Salomon
    Signed-off-by: Linus Torvalds

    Andres Salomon
     
  • The edge detect status GPIOs function differently from the other atomic
    model CS5536 GPIO registers; writing 1 to the high bits clears the GPIO,
    but writing 1 to the lower bits also clears the bit.

    This means that read-modify-write doesn't actually work for it, so don't
    apply the errata here. If a negative edge status gets lost after
    resume.. well, we tried our best!

    Tested-by: Daniel Drake
    Signed-off-by: Andres Salomon
    Signed-off-by: Linus Torvalds

    Andres Salomon
     

23 Dec, 2010

2 commits


22 Dec, 2010

1 commit


20 Dec, 2010

3 commits


13 Dec, 2010

1 commit


03 Dec, 2010

1 commit

  • The AMD Geode CS5536 Companion Device Silicon Revision B1 Specification
    Update mentions the follow as issue #36:

    "Atomic write transactions to the atomic GPIO High Bank Feature Bit
    registers should only affect the bits selected [...]"

    "after Suspend, an atomic write transaction [...] will clear all
    non-selected bits of the accessed register."

    In other words, writing to the high bank for a single GPIO bit will
    clear every other GPIO bit (but only sometimes after a suspend).

    The workaround described is obvious and simple; do a read-modify-write.
    This patch does that, and documents why we're doing it.

    Signed-off-by: Andres Salomon
    Cc:
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Andres Salomon
     

26 Nov, 2010

1 commit


29 Oct, 2010

3 commits