Skip to content

Commit

Permalink
ARM: ux500: Do not attempt to register non-existent i2c devices on Sn…
Browse files Browse the repository at this point in the history
…owball

This patch prevents i2c devices which are not present on the Snowball
low-cost development board from being registered. Devices such as;
tc3589x, bu1780 and lp5521 are present on other supported boards,
but are not located on Snowball.

Signed-off-by: Lee Jones <lee.jones@linaro.org>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
  • Loading branch information
Lee Jones authored and Linus Walleij committed May 1, 2012
1 parent 3de3d74 commit 4809f90
Showing 1 changed file with 13 additions and 12 deletions.
25 changes: 13 additions & 12 deletions arch/arm/mach-ux500/board-mop500.c
Original file line number Diff line number Diff line change
Expand Up @@ -646,7 +646,6 @@ static void __init mop500_init_machine(void)
static void __init snowball_init_machine(void)
{
struct device *parent = NULL;
int i2c0_devs;
int i;

parent = u8500_init_devices();
Expand All @@ -664,11 +663,6 @@ static void __init snowball_init_machine(void)
mop500_spi_init(parent);
mop500_uart_init(parent);

i2c0_devs = ARRAY_SIZE(mop500_i2c0_devices);
i2c_register_board_info(0, mop500_i2c0_devices, i2c0_devs);
i2c_register_board_info(2, mop500_i2c2_devices,
ARRAY_SIZE(mop500_i2c2_devices));

/* This board has full regulator constraints */
regulator_has_full_constraints();
}
Expand Down Expand Up @@ -767,7 +761,6 @@ static void __init u8500_init_machine(void)
int i;

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

for (i = 0; i < ARRAY_SIZE(mop500_platform_devs); i++)
mop500_platform_devs[i]->dev.parent = parent;
Expand All @@ -785,6 +778,12 @@ static void __init u8500_init_machine(void)
ARRAY_SIZE(mop500_platform_devs));

mop500_sdi_init(parent);

i2c0_devs = ARRAY_SIZE(mop500_i2c0_devices);
i2c_register_board_info(0, mop500_i2c0_devices, i2c0_devs);
i2c_register_board_info(2, mop500_i2c2_devices,
ARRAY_SIZE(mop500_i2c2_devices));

} else if (of_machine_is_compatible("calaosystems,snowball-a9500")) {
snowball_pins_init();
platform_add_devices(snowball_platform_devs,
Expand All @@ -798,19 +797,21 @@ static void __init u8500_init_machine(void)
* instead.
*/
mop500_gpio_keys[0].gpio = HREFV60_PROX_SENSE_GPIO;
i2c0_devs -= NUM_PRE_V60_I2C0_DEVICES;
hrefv60_pins_init();
platform_add_devices(mop500_platform_devs,
ARRAY_SIZE(mop500_platform_devs));

hrefv60_sdi_init(parent);

i2c0_devs = ARRAY_SIZE(mop500_i2c0_devices);
i2c0_devs -= NUM_PRE_V60_I2C0_DEVICES;

i2c_register_board_info(0, mop500_i2c0_devices, i2c0_devs);
i2c_register_board_info(2, mop500_i2c2_devices,
ARRAY_SIZE(mop500_i2c2_devices));
}
mop500_i2c_init(parent);

i2c_register_board_info(0, mop500_i2c0_devices, i2c0_devs);
i2c_register_board_info(2, mop500_i2c2_devices,
ARRAY_SIZE(mop500_i2c2_devices));

/* This board has full regulator constraints */
regulator_has_full_constraints();
}
Expand Down

0 comments on commit 4809f90

Please sign in to comment.