Linux-3.4-rc1 i.MX fixes

-----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.12 (GNU/Linux)
 
 iQIcBAABCAAGBQJPep/8AAoJEPFlmONMx+eztawQAKhH/gL51z9/npZ6mNeY4aQI
 5FOWO8gktsla5htE40702B1sjAS6KM0B8Hn5KJr/X7Dg2RTwLrsHv0148hQ5wob7
 xvGLmSmvRRuZx43qbrfsNNQeg2ell9d3mn9KH5IZ1l41ohvOHWZd68o/ZYbQAXph
 inez+QTdkJB+zXqIlocZsJEygdwIr/J1m4awIMJTUu4S5NJkMMyZA1M57Bue2TeD
 Wlf0iMzVz/0/Xddi3nISfGAg8gbEm8Mok9dBLkJyP8UTcx6yRuVCvwM0ejNwO7CG
 v1mQfLNzCHPZbMzo/9IRYQWfq7oiFCfl8DXrl94Fy5mKBrkavWKi3sujzlaTmbqk
 j65+tvUlFv7X898kxarP0YIvxcn44R1eVR3rLqsfH4KKQghiox4dutJJpaWhLdUr
 31iHbblm3jiEKzOMesLAaPXeFVv+OAafOK747GtcOVW9DNqnO7ndiPlvz7S2NHhg
 gx1l0o+DrQ2/2FIlFT3fBRIMNgoP6Y63rJ1vwoBFF9VKdI0iKVkK9RvtG/dwMcfj
 GUTiwpepuB/pyV1gEVlBrS64biV1KwQW9j9xXKZyDAqAMMM31DPsLljQX/0ANmZH
 jD4SxGat+iFG8gvk6oxlu7/jwsBOBp+6IdxW77+UWmtFKQ4/yQjiWeqEL2jbJOQa
 /oYr/HjDcNs1iX07IV4Q
 =g81P
 -----END PGP SIGNATURE-----

Merge tag 'v3.4-rc1-imx-fixes' of git://git.pengutronix.de/git/imx/linux-2.6 into fixes

Linux-3.4-rc1 i.MX fixes

* tag 'v3.4-rc1-imx-fixes' of git://git.pengutronix.de/git/imx/linux-2.6:
  ARM: armadillo5x0: Fix smsc911x driver probe
  ARM: kzm_arm11_01: Fix smsc911x driver probe
  ARM: mx31lilly: Fix smsc911x driver probe
  ARM: mx31lite: Fix smsc911x driver probe
  ARM: mx53ard: Fix smsc911x driver probe
  ARM: mx35: Fix registration of camera clock
  ARM: 3ds_debugboard: Fix smsc911x driver probe
  MX2: Fix mx2_camera clock regression.
  ARM: mach-mx35_3ds: Fix build warning due to the lack of 'const' annotation
This commit is contained in:
Olof Johansson 2012-04-03 05:13:19 -07:00
commit cfe2da5347
9 changed files with 48 additions and 3 deletions

View File

@ -662,6 +662,7 @@ static struct clk_lookup lookups[] = {
_REGISTER_CLOCK(NULL, "dma", dma_clk) _REGISTER_CLOCK(NULL, "dma", dma_clk)
_REGISTER_CLOCK(NULL, "rtic", rtic_clk) _REGISTER_CLOCK(NULL, "rtic", rtic_clk)
_REGISTER_CLOCK(NULL, "brom", brom_clk) _REGISTER_CLOCK(NULL, "brom", brom_clk)
_REGISTER_CLOCK(NULL, "emma", emma_clk)
_REGISTER_CLOCK("m2m-emmaprp.0", NULL, emma_clk) _REGISTER_CLOCK("m2m-emmaprp.0", NULL, emma_clk)
_REGISTER_CLOCK(NULL, "slcdc", slcdc_clk) _REGISTER_CLOCK(NULL, "slcdc", slcdc_clk)
_REGISTER_CLOCK("imx27-fec.0", NULL, fec_clk) _REGISTER_CLOCK("imx27-fec.0", NULL, fec_clk)

View File

@ -483,7 +483,7 @@ static struct clk_lookup lookups[] = {
_REGISTER_CLOCK("imx2-wdt.0", NULL, wdog_clk) _REGISTER_CLOCK("imx2-wdt.0", NULL, wdog_clk)
_REGISTER_CLOCK(NULL, "max", max_clk) _REGISTER_CLOCK(NULL, "max", max_clk)
_REGISTER_CLOCK(NULL, "audmux", audmux_clk) _REGISTER_CLOCK(NULL, "audmux", audmux_clk)
_REGISTER_CLOCK(NULL, "csi", csi_clk) _REGISTER_CLOCK("mx3-camera.0", NULL, csi_clk)
_REGISTER_CLOCK(NULL, "iim", iim_clk) _REGISTER_CLOCK(NULL, "iim", iim_clk)
_REGISTER_CLOCK(NULL, "gpu2d", gpu2d_clk) _REGISTER_CLOCK(NULL, "gpu2d", gpu2d_clk)
_REGISTER_CLOCK("mxc_nand.0", NULL, nfc_clk) _REGISTER_CLOCK("mxc_nand.0", NULL, nfc_clk)

View File

@ -38,6 +38,8 @@
#include <linux/usb/otg.h> #include <linux/usb/otg.h>
#include <linux/usb/ulpi.h> #include <linux/usb/ulpi.h>
#include <linux/delay.h> #include <linux/delay.h>
#include <linux/regulator/machine.h>
#include <linux/regulator/fixed.h>
#include <mach/hardware.h> #include <mach/hardware.h>
#include <asm/mach-types.h> #include <asm/mach-types.h>
@ -479,6 +481,11 @@ static struct platform_device *devices[] __initdata = {
&armadillo5x0_smc911x_device, &armadillo5x0_smc911x_device,
}; };
static struct regulator_consumer_supply dummy_supplies[] = {
REGULATOR_SUPPLY("vdd33a", "smsc911x"),
REGULATOR_SUPPLY("vddvario", "smsc911x"),
};
/* /*
* Perform board specific initializations * Perform board specific initializations
*/ */
@ -489,6 +496,8 @@ static void __init armadillo5x0_init(void)
mxc_iomux_setup_multiple_pins(armadillo5x0_pins, mxc_iomux_setup_multiple_pins(armadillo5x0_pins,
ARRAY_SIZE(armadillo5x0_pins), "armadillo5x0"); ARRAY_SIZE(armadillo5x0_pins), "armadillo5x0");
regulator_register_fixed(0, dummy_supplies, ARRAY_SIZE(dummy_supplies));
platform_add_devices(devices, ARRAY_SIZE(devices)); platform_add_devices(devices, ARRAY_SIZE(devices));
imx_add_gpio_keys(&armadillo5x0_button_data); imx_add_gpio_keys(&armadillo5x0_button_data);
imx31_add_imx_i2c1(NULL); imx31_add_imx_i2c1(NULL);

View File

@ -24,6 +24,8 @@
#include <linux/serial_8250.h> #include <linux/serial_8250.h>
#include <linux/smsc911x.h> #include <linux/smsc911x.h>
#include <linux/types.h> #include <linux/types.h>
#include <linux/regulator/machine.h>
#include <linux/regulator/fixed.h>
#include <asm/irq.h> #include <asm/irq.h>
#include <asm/mach-types.h> #include <asm/mach-types.h>
@ -166,6 +168,11 @@ static struct platform_device kzm_smsc9118_device = {
}, },
}; };
static struct regulator_consumer_supply dummy_supplies[] = {
REGULATOR_SUPPLY("vdd33a", "smsc911x"),
REGULATOR_SUPPLY("vddvario", "smsc911x"),
};
static int __init kzm_init_smsc9118(void) static int __init kzm_init_smsc9118(void)
{ {
/* /*
@ -175,6 +182,8 @@ static int __init kzm_init_smsc9118(void)
gpio_request(IOMUX_TO_GPIO(MX31_PIN_GPIO1_2), "smsc9118-int"); gpio_request(IOMUX_TO_GPIO(MX31_PIN_GPIO1_2), "smsc9118-int");
gpio_direction_input(IOMUX_TO_GPIO(MX31_PIN_GPIO1_2)); gpio_direction_input(IOMUX_TO_GPIO(MX31_PIN_GPIO1_2));
regulator_register_fixed(0, dummy_supplies, ARRAY_SIZE(dummy_supplies));
return platform_device_register(&kzm_smsc9118_device); return platform_device_register(&kzm_smsc9118_device);
} }
#else #else

View File

@ -34,6 +34,8 @@
#include <linux/mfd/mc13783.h> #include <linux/mfd/mc13783.h>
#include <linux/usb/otg.h> #include <linux/usb/otg.h>
#include <linux/usb/ulpi.h> #include <linux/usb/ulpi.h>
#include <linux/regulator/machine.h>
#include <linux/regulator/fixed.h>
#include <asm/mach-types.h> #include <asm/mach-types.h>
#include <asm/mach/arch.h> #include <asm/mach/arch.h>
@ -242,6 +244,11 @@ static struct platform_device *devices[] __initdata = {
static int mx31lilly_baseboard; static int mx31lilly_baseboard;
core_param(mx31lilly_baseboard, mx31lilly_baseboard, int, 0444); core_param(mx31lilly_baseboard, mx31lilly_baseboard, int, 0444);
static struct regulator_consumer_supply dummy_supplies[] = {
REGULATOR_SUPPLY("vdd33a", "smsc911x"),
REGULATOR_SUPPLY("vddvario", "smsc911x"),
};
static void __init mx31lilly_board_init(void) static void __init mx31lilly_board_init(void)
{ {
imx31_soc_init(); imx31_soc_init();
@ -280,6 +287,8 @@ static void __init mx31lilly_board_init(void)
imx31_add_spi_imx1(&spi1_pdata); imx31_add_spi_imx1(&spi1_pdata);
spi_register_board_info(&mc13783_dev, 1); spi_register_board_info(&mc13783_dev, 1);
regulator_register_fixed(0, dummy_supplies, ARRAY_SIZE(dummy_supplies));
platform_add_devices(devices, ARRAY_SIZE(devices)); platform_add_devices(devices, ARRAY_SIZE(devices));
/* USB */ /* USB */

View File

@ -29,6 +29,8 @@
#include <linux/usb/ulpi.h> #include <linux/usb/ulpi.h>
#include <linux/mtd/physmap.h> #include <linux/mtd/physmap.h>
#include <linux/delay.h> #include <linux/delay.h>
#include <linux/regulator/machine.h>
#include <linux/regulator/fixed.h>
#include <asm/mach-types.h> #include <asm/mach-types.h>
#include <asm/mach/arch.h> #include <asm/mach/arch.h>
@ -226,6 +228,11 @@ void __init mx31lite_map_io(void)
static int mx31lite_baseboard; static int mx31lite_baseboard;
core_param(mx31lite_baseboard, mx31lite_baseboard, int, 0444); core_param(mx31lite_baseboard, mx31lite_baseboard, int, 0444);
static struct regulator_consumer_supply dummy_supplies[] = {
REGULATOR_SUPPLY("vdd33a", "smsc911x"),
REGULATOR_SUPPLY("vddvario", "smsc911x"),
};
static void __init mx31lite_init(void) static void __init mx31lite_init(void)
{ {
int ret; int ret;
@ -259,6 +266,8 @@ static void __init mx31lite_init(void)
if (usbh2_pdata.otg) if (usbh2_pdata.otg)
imx31_add_mxc_ehci_hs(2, &usbh2_pdata); imx31_add_mxc_ehci_hs(2, &usbh2_pdata);
regulator_register_fixed(0, dummy_supplies, ARRAY_SIZE(dummy_supplies));
/* SMSC9117 IRQ pin */ /* SMSC9117 IRQ pin */
ret = gpio_request(IOMUX_TO_GPIO(MX31_PIN_SFS6), "sms9117-irq"); ret = gpio_request(IOMUX_TO_GPIO(MX31_PIN_SFS6), "sms9117-irq");
if (ret) if (ret)

View File

@ -97,7 +97,7 @@ static struct i2c_board_info __initdata i2c_devices_3ds[] = {
static int lcd_power_gpio = -ENXIO; static int lcd_power_gpio = -ENXIO;
static int mc9s08dz60_gpiochip_match(struct gpio_chip *chip, static int mc9s08dz60_gpiochip_match(struct gpio_chip *chip,
void *data) const void *data)
{ {
return !strcmp(chip->label, data); return !strcmp(chip->label, data);
} }

View File

@ -23,6 +23,8 @@
#include <linux/delay.h> #include <linux/delay.h>
#include <linux/gpio.h> #include <linux/gpio.h>
#include <linux/smsc911x.h> #include <linux/smsc911x.h>
#include <linux/regulator/machine.h>
#include <linux/regulator/fixed.h>
#include <mach/common.h> #include <mach/common.h>
#include <mach/hardware.h> #include <mach/hardware.h>
@ -214,6 +216,11 @@ static int weim_cs_config(void)
return 0; return 0;
} }
static struct regulator_consumer_supply dummy_supplies[] = {
REGULATOR_SUPPLY("vdd33a", "smsc911x"),
REGULATOR_SUPPLY("vddvario", "smsc911x"),
};
void __init imx53_ard_common_init(void) void __init imx53_ard_common_init(void)
{ {
mxc_iomux_v3_setup_multiple_pads(mx53_ard_pads, mxc_iomux_v3_setup_multiple_pads(mx53_ard_pads,
@ -232,6 +239,7 @@ static void __init mx53_ard_board_init(void)
imx53_ard_common_init(); imx53_ard_common_init();
mx53_ard_io_init(); mx53_ard_io_init();
regulator_register_fixed(0, dummy_supplies, ARRAY_SIZE(dummy_supplies));
platform_add_devices(devices, ARRAY_SIZE(devices)); platform_add_devices(devices, ARRAY_SIZE(devices));
imx53_add_sdhci_esdhc_imx(0, &mx53_ard_sd1_data); imx53_add_sdhci_esdhc_imx(0, &mx53_ard_sd1_data);

View File

@ -80,7 +80,7 @@ static struct smsc911x_platform_config smsc911x_config = {
static struct platform_device smsc_lan9217_device = { static struct platform_device smsc_lan9217_device = {
.name = "smsc911x", .name = "smsc911x",
.id = 0, .id = -1,
.dev = { .dev = {
.platform_data = &smsc911x_config, .platform_data = &smsc911x_config,
}, },