07 Nov, 2012

2 commits


22 Sep, 2012

1 commit


14 Sep, 2012

1 commit

  • Currently the MFD core supports remapping MFD cell interrupts using an
    irqdomain but only if the MFD is being instantiated using device tree
    and only if the device tree bindings use the pattern of registering IPs
    in the device tree with compatible properties. This will be actively
    harmful for drivers which support non-DT platforms and use this pattern
    for their DT bindings as it will mean that the core will silently change
    remapping behaviour and it is also limiting for drivers which don't do
    DT with this particular pattern. There is also a potential fragility if
    there are interrupts not associated with MFD cells and all the cells are
    omitted from the device tree for some reason.

    Instead change the code to take an IRQ domain as an optional argument,
    allowing drivers to take the decision about the parent domain for their
    interrupts. The one current user of this feature is ab8500-core, it has
    the domain lookup pushed out into the driver.

    Signed-off-by: Mark Brown
    Signed-off-by: Samuel Ortiz

    Mark Brown
     

09 Jul, 2012

1 commit


30 May, 2012

1 commit

  • Pull MFD changes from Samuel Ortiz:
    "Besides the usual cleanups, this one brings:

    * Support for 5 new chipsets: Intel's ICH LPC and SCH Centerton,
    ST-E's STAX211, Samsung's MAX77693 and TI's LM3533.

    * Device tree support for the twl6040, tps65910, da9502 and ab8500
    drivers.

    * Fairly big tps56910, ab8500 and db8500 updates.

    * i2c support for mc13xxx.

    * Our regular update for the wm8xxx driver from Mark."

    Fix up various conflicts with other trees, largely due to ab5500 removal
    etc.

    * tag 'mfd-3.5-1' of git://git.kernel.org/pub/scm/linux/kernel/git/sameo/mfd-2.6: (106 commits)
    mfd: Fix build break of max77693 by adding REGMAP_I2C option
    mfd: Fix twl6040 build failure
    mfd: Fix max77693 build failure
    mfd: ab8500-core should depend on MFD_DB8500_PRCMU
    gpio: tps65910: dt: process gpio specific device node info
    mfd: Remove the parsing of dt info for tps65910 gpio
    mfd: Save device node parsed platform data for tps65910 sub devices
    mfd: Add r_select to lm3533 platform data
    gpio: Add Intel Centerton support to gpio-sch
    mfd: Emulate active low IRQs as well as active high IRQs for wm831x
    mfd: Mark two lm3533 zone registers as volatile
    mfd: Fix return type of lm533 attribute is_visible
    mfd: Enable Device Tree support in the ab8500-pwm driver
    mfd: Enable Device Tree support in the ab8500-sysctrl driver
    mfd: Add support for Device Tree to twl6040
    mfd: Register the twl6040 child for the ASoC codec unconditionally
    mfd: Allocate twl6040 IRQ numbers dynamically
    mfd: twl6040 code cleanup in interrupt initialization part
    mfd: Enable ab8500-gpadc driver for Device Tree
    mfd: Prevent unassigned pointer from being used in ab8500-gpadc driver
    ...

    Linus Torvalds
     

18 May, 2012

1 commit


01 May, 2012

3 commits

  • All spi specific code is moved into a new module. The mc13xxx struct
    moves to a new local include file by necessity.

    A new config choice selects the SPI bus type support and by default is
    value of SPI_MASTER to remain compatible with existing configs.

    Signed-off-by: Marc Reilly
    Signed-off-by: Samuel Ortiz

    Marc Reilly
     
  • This change converts the mc13xxx core to use regmap rather than direct
    spi r/w.
    The spidev member of mc13xxx struct becomes redundant and is removed.
    Extra debugging aids are added to mc13xxx_reg_rmw.
    Mutex init is moved to before regmap init.

    Signed-off-by: Marc Reilly
    Reviewed-by: Mark Brown
    Signed-off-by: Samuel Ortiz

    Marc Reilly
     
  • This patch abstracts the bus specific operations from the driver core.
    Generic init and cleanup is consolidated into mc13xxx_common_*.
    spi specific functions are renamed to reflect such.
    (The irq member of the mc13xxx struct is no longer redundant, it's used
    to store the irq for cleanup time).

    Signed-off-by: Marc Reilly
    Signed-off-by: Samuel Ortiz

    Marc Reilly
     

07 Mar, 2012

1 commit

  • MC13783 can be programmed to wait some clock cycles between the
    touchscreen polarization and the resistance conversion. This is
    needed to adjust for touchscreens with high capacitance between
    plates.

    Signed-off-by: Michael Thalmeier
    Acked-by: Uwe Kleine-König
    Acked-by: Dmitry Torokhov
    Signed-off-by: Samuel Ortiz

    Michael Thalmeier
     

09 Jan, 2012

3 commits


24 Oct, 2011

6 commits


27 May, 2011

1 commit

  • With the addition of a platform device mfd_cell pointer, MFD drivers
    can go back to passing platform data back to their sub drivers.
    This allows for an mfd_cell->mfd_data removal and thus keep the
    sub drivers MFD agnostic. This is mostly needed for non MFD aware
    sub drivers.

    Cc: Mark Brown
    Cc: Liam Girdwood
    Acked-by: Uwe Kleine-König
    Signed-off-by: Samuel Ortiz

    Samuel Ortiz
     

23 Mar, 2011

3 commits

  • The device table is required to load modules based on modaliases.
    After adding the MODULE_DEVICE_TABLE, below entries will be added to
    modules.alias:
    alias spi:mc13892 mc13xxx_core
    alias spi:mc13783 mc13xxx_core

    Signed-off-by: Axel Lin
    Acked-by: Uwe Kleine-König
    Signed-off-by: Samuel Ortiz

    Axel Lin
     
  • Rename the platform_data variable to imply a distinction between
    common platform_data driver usage (typically accessed via
    pdev->dev.platform_data) and the way MFD passes data down to
    clients (using a wrapper named mfd_get_data).

    All clients have already been changed to use the wrapper function,
    so this can be a quick single-commit change that only touches things
    in drivers/mfd.

    Signed-off-by: Andres Salomon
    Acked-by: Linus Walleij
    Signed-off-by: Samuel Ortiz

    Andres Salomon
     
  • The cell's platform_data is now accessed with a helper function;
    change clients to use that, and remove the now-unused data_size.

    Note that mfd-core no longer makes a copy of platform_data, but the
    mc13xxx-core driver creates the pdata structures on the stack. In
    order to get around that, the various ARM mach types that set the
    pdata have been changed to hold the variable in static (global) memory.
    Also note that __initdata references in aforementioned pdata structs
    have been dropped.

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

    Andres Salomon
     

14 Jan, 2011

1 commit


29 Oct, 2010

3 commits