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

Commit ed781d39 authored by Linus Walleij's avatar Linus Walleij
Browse files

ARM: ux500: switch over to Nomadik pinctrl driver



This converts the Ux500 family to use the pinctrl driver for
configuring pins.

Acked-by: default avatarStephen Warren <swarren@wwwdotorg.org>
Signed-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
parent 65697e6b
Loading
Loading
Loading
Loading
+396 −423

File changed.

Preview size limit exceeded, changes collapsed.

+12 −9
Original line number Original line Diff line number Diff line

/*
/*
 * Copyright (C) 2008-2009 ST-Ericsson
 * Copyright (C) 2008-2009 ST-Ericsson
 *
 *
@@ -618,10 +619,9 @@ static void __init mop500_init_machine(void)


	mop500_gpio_keys[0].gpio = GPIO_PROX_SENSOR;
	mop500_gpio_keys[0].gpio = GPIO_PROX_SENSOR;


	mop500_pinmaps_init();
	parent = u8500_init_devices();
	parent = u8500_init_devices();


	mop500_pins_init();

	/* FIXME: parent of ab8500 should be prcmu */
	/* FIXME: parent of ab8500 should be prcmu */
	for (i = 0; i < ARRAY_SIZE(mop500_platform_devs); i++)
	for (i = 0; i < ARRAY_SIZE(mop500_platform_devs); i++)
		mop500_platform_devs[i]->dev.parent = parent;
		mop500_platform_devs[i]->dev.parent = parent;
@@ -651,10 +651,9 @@ static void __init snowball_init_machine(void)
	int i2c0_devs;
	int i2c0_devs;
	int i;
	int i;


	snowball_pinmaps_init();
	parent = u8500_init_devices();
	parent = u8500_init_devices();


	snowball_pins_init();

	for (i = 0; i < ARRAY_SIZE(snowball_platform_devs); i++)
	for (i = 0; i < ARRAY_SIZE(snowball_platform_devs); i++)
		snowball_platform_devs[i]->dev.parent = parent;
		snowball_platform_devs[i]->dev.parent = parent;


@@ -689,10 +688,9 @@ static void __init hrefv60_init_machine(void)
	 */
	 */
	mop500_gpio_keys[0].gpio = HREFV60_PROX_SENSE_GPIO;
	mop500_gpio_keys[0].gpio = HREFV60_PROX_SENSE_GPIO;


	hrefv60_pinmaps_init();
	parent = u8500_init_devices();
	parent = u8500_init_devices();


	hrefv60_pins_init();

	for (i = 0; i < ARRAY_SIZE(mop500_platform_devs); i++)
	for (i = 0; i < ARRAY_SIZE(mop500_platform_devs); i++)
		mop500_platform_devs[i]->dev.parent = parent;
		mop500_platform_devs[i]->dev.parent = parent;


@@ -781,6 +779,14 @@ static void __init u8500_init_machine(void)
	int i2c0_devs;
	int i2c0_devs;
	int i;
	int i;


	/* Pinmaps must be in place before devices register */
	if (of_machine_is_compatible("st-ericsson,mop500"))
		mop500_pinmaps_init();
	else if (of_machine_is_compatible("calaosystems,snowball-a9500"))
		snowball_pinmaps_init();
	else if (of_machine_is_compatible("st-ericsson,hrefv60+"))
		hrefv60_pinmaps_init();

	parent = u8500_init_devices();
	parent = u8500_init_devices();
	i2c0_devs = ARRAY_SIZE(mop500_i2c0_devices);
	i2c0_devs = ARRAY_SIZE(mop500_i2c0_devices);


@@ -794,14 +800,12 @@ static void __init u8500_init_machine(void)


	if (of_machine_is_compatible("st-ericsson,mop500")) {
	if (of_machine_is_compatible("st-ericsson,mop500")) {
		mop500_gpio_keys[0].gpio = GPIO_PROX_SENSOR;
		mop500_gpio_keys[0].gpio = GPIO_PROX_SENSOR;
		mop500_pins_init();


		platform_add_devices(mop500_platform_devs,
		platform_add_devices(mop500_platform_devs,
				ARRAY_SIZE(mop500_platform_devs));
				ARRAY_SIZE(mop500_platform_devs));


		mop500_sdi_init(parent);
		mop500_sdi_init(parent);
	} else if (of_machine_is_compatible("calaosystems,snowball-a9500")) {
	} else if (of_machine_is_compatible("calaosystems,snowball-a9500")) {
		snowball_pins_init();
		platform_add_devices(snowball_platform_devs,
		platform_add_devices(snowball_platform_devs,
				ARRAY_SIZE(snowball_platform_devs));
				ARRAY_SIZE(snowball_platform_devs));


@@ -814,7 +818,6 @@ static void __init u8500_init_machine(void)
		 */
		 */
		mop500_gpio_keys[0].gpio = HREFV60_PROX_SENSE_GPIO;
		mop500_gpio_keys[0].gpio = HREFV60_PROX_SENSE_GPIO;
		i2c0_devs -= NUM_PRE_V60_I2C0_DEVICES;
		i2c0_devs -= NUM_PRE_V60_I2C0_DEVICES;
		hrefv60_pins_init();
		platform_add_devices(mop500_platform_devs,
		platform_add_devices(mop500_platform_devs,
				ARRAY_SIZE(mop500_platform_devs));
				ARRAY_SIZE(mop500_platform_devs));


+3 −3
Original line number Original line Diff line number Diff line
@@ -85,9 +85,9 @@ extern void hrefv60_sdi_init(struct device *parent);
extern void mop500_sdi_tc35892_init(struct device *parent);
extern void mop500_sdi_tc35892_init(struct device *parent);
void __init mop500_u8500uib_init(void);
void __init mop500_u8500uib_init(void);
void __init mop500_stuib_init(void);
void __init mop500_stuib_init(void);
void __init mop500_pins_init(void);
void __init mop500_pinmaps_init(void);
void __init hrefv60_pins_init(void);
void __init snowball_pinmaps_init(void);
void __init snowball_pins_init(void);
void __init hrefv60_pinmaps_init(void);


void mop500_uib_i2c_add(int busnum, struct i2c_board_info *info,
void mop500_uib_i2c_add(int busnum, struct i2c_board_info *info,
		unsigned n);
		unsigned n);