Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 3b72e441 authored by Linus Torvalds's avatar Linus Torvalds
Browse files

Merge branch 'for-next' of git://git.o-hand.com/linux-mfd

* 'for-next' of git://git.o-hand.com/linux-mfd:
  mfd: further unbork the ucb1400 ac97_bus dependencies
  mfd: ucb1400 needs GPIO
  mfd: ucb1400 sound driver uses/depends on AC97_BUS:
  mfd: Don't use NO_IRQ in WM8350
  mfd: update TMIO drivers to use the clock API
  mfd: twl4030-core irq simplification
  mfd: add base support for Dialog DA9030/DA9034 PMICs
  mfd: TWL4030 core driver
  mfd: support tmiofb cell on tc6393xb
  mfd: add OHCI cell to tc6393xb
  mfd: Fix htc-egpio compile warning
  mfd: do tcb6393xb state restore on resume only if requested
  mfd: provide and use setup hook for tc6393xb
  mfd: update sm501 debugging/low information messages
  mfd: reduce stack usage in mfd-core.c
parents 396b122f 64c12e9b
Loading
Loading
Loading
Loading
+0 −2
Original line number Diff line number Diff line
@@ -59,8 +59,6 @@
 * TC6393XB GPIOs
 */
#define TOSA_TC6393XB_GPIO_BASE		(NR_BUILTIN_GPIO + 2 * 12)
#define TOSA_TC6393XB_GPIO(i)		(TOSA_TC6393XB_GPIO_BASE + (i))
#define TOSA_TC6393XB_GPIO_BIT(gpio)	(1 << (gpio - TOSA_TC6393XB_GPIO_BASE))

#define TOSA_GPIO_TG_ON			(TOSA_TC6393XB_GPIO_BASE + 0)
#define TOSA_GPIO_L_MUTE		(TOSA_TC6393XB_GPIO_BASE + 1)
+31 −6
Original line number Diff line number Diff line
@@ -706,16 +706,39 @@ static struct tmio_nand_data tosa_tc6393xb_nand_config = {
	.badblock_pattern = &tosa_tc6393xb_nand_bbt,
};

static struct tc6393xb_platform_data tosa_tc6393xb_setup = {
static int tosa_tc6393xb_setup(struct platform_device *dev)
{
	int rc;

	rc = gpio_request(TOSA_GPIO_CARD_VCC_ON, "CARD_VCC_ON");
	if (rc)
		goto err_req;

	rc = gpio_direction_output(TOSA_GPIO_CARD_VCC_ON, 1);
	if (rc)
		goto err_dir;

	return rc;

err_dir:
	gpio_free(TOSA_GPIO_CARD_VCC_ON);
err_req:
	return rc;
}

static void tosa_tc6393xb_teardown(struct platform_device *dev)
{
	gpio_free(TOSA_GPIO_CARD_VCC_ON);
}

static struct tc6393xb_platform_data tosa_tc6393xb_data = {
	.scr_pll2cr	= 0x0cc1,
	.scr_gper	= 0x3300,
	.scr_gpo_dsr	=
		TOSA_TC6393XB_GPIO_BIT(TOSA_GPIO_CARD_VCC_ON),
	.scr_gpo_doecr	=
		TOSA_TC6393XB_GPIO_BIT(TOSA_GPIO_CARD_VCC_ON),

	.irq_base	= IRQ_BOARD_START,
	.gpio_base	= TOSA_TC6393XB_GPIO_BASE,
	.setup		= tosa_tc6393xb_setup,
	.teardown	= tosa_tc6393xb_teardown,

	.enable		= tosa_tc6393xb_enable,
	.disable	= tosa_tc6393xb_disable,
@@ -723,6 +746,8 @@ static struct tc6393xb_platform_data tosa_tc6393xb_setup = {
	.resume		= tosa_tc6393xb_resume,

	.nand_data	= &tosa_tc6393xb_nand_config,

	.resume_restore = 1,
};


@@ -730,7 +755,7 @@ static struct platform_device tc6393xb_device = {
	.name	= "tc6393xb",
	.id	= -1,
	.dev	= {
		.platform_data	= &tosa_tc6393xb_setup,
		.platform_data	= &tosa_tc6393xb_data,
	},
	.num_resources	= ARRAY_SIZE(tc6393xb_resources),
	.resource	= tc6393xb_resources,
+1 −1
Original line number Diff line number Diff line
@@ -219,7 +219,7 @@ config TOUCHSCREEN_ATMEL_TSADCC

config TOUCHSCREEN_UCB1400
	tristate "Philips UCB1400 touchscreen"
	select AC97_BUS
	depends on AC97_BUS
	depends on UCB1400_CORE
	help
	  This enables support for the Philips UCB1400 touchscreen interface.
+16 −0
Original line number Diff line number Diff line
@@ -52,6 +52,8 @@ config HTC_PASIC3

config UCB1400_CORE
	tristate "Philips UCB1400 Core driver"
	depends on AC97_BUS
	depends on GPIOLIB
	help
	  This enables support for the Philips UCB1400 core functions.
	  The UCB1400 is an AC97 audio codec.
@@ -59,6 +61,20 @@ config UCB1400_CORE
	  To compile this driver as a module, choose M here: the
	  module will be called ucb1400_core.

config TWL4030_CORE
	bool "Texas Instruments TWL4030/TPS659x0 Support"
	depends on I2C=y && GENERIC_HARDIRQS && (ARCH_OMAP2 || ARCH_OMAP3)
	help
	  Say yes here if you have TWL4030 family chip on your board.
	  This core driver provides register access and IRQ handling
	  facilities, and registers devices for the various functions
	  so that function-specific drivers can bind to them.

	  These multi-function chips are found on many OMAP2 and OMAP3
	  boards, providing power management, RTC, GPIO, keypad, a
	  high speed USB OTG transceiver, an audio codec (on most
	  versions) and many other features.

config MFD_TMIO
	bool
	default n
+2 −0
Original line number Diff line number Diff line
@@ -17,6 +17,8 @@ wm8350-objs := wm8350-core.o wm8350-regmap.o wm8350-gpio.o
obj-$(CONFIG_MFD_WM8350)	+= wm8350.o
obj-$(CONFIG_MFD_WM8350_I2C)	+= wm8350-i2c.o

obj-$(CONFIG_TWL4030_CORE)	+= twl4030-core.o

obj-$(CONFIG_MFD_CORE)		+= mfd-core.o

obj-$(CONFIG_MCP)		+= mcp-core.o
Loading