Commit add49f78 authored by Olof Johansson's avatar Olof Johansson

Merge tag 'pxa-for-4.16' of https://github.com/rjarzmik/linux into next/soc

This is the pxa changes for v4.16 cycle.

It is :
 - the conversion to the new parser sharpslpart parser
   for the Sharp variants
 - an I2C platform data cleanup for PXA
 - a gpioreg switch of one register for lubbock

* tag 'pxa-for-4.16' of https://github.com/rjarzmik/linux:
  ARM: pxa/lubbock: add GPIO driver for LUB_MISC_WR register
  ARM: pxa/poodle: Remove hardcoded partitioning, use sharpslpart parser
  ARM: pxa/spitz: Remove hardcoded partitioning, use sharpslpart parser
  ARM: pxa/tosa: Remove hardcoded partitioning, use sharpslpart parser
  ARM: pxa/corgi: Remove hardcoded partitioning, use sharpslpart parser
  ARM: pxa: move header file out of I2C realm
  ARM: pxa: move declarations to proper place
Signed-off-by: default avatarOlof Johansson <olof@lixom.net>
parents 34c1baec 9c666384
...@@ -10,7 +10,7 @@ extern void __init mmp2_init_irq(void); ...@@ -10,7 +10,7 @@ extern void __init mmp2_init_irq(void);
extern void mmp2_clear_pmic_int(void); extern void mmp2_clear_pmic_int(void);
#include <linux/i2c.h> #include <linux/i2c.h>
#include <linux/i2c/pxa-i2c.h> #include <linux/platform_data/i2c-pxa.h>
#include <linux/platform_data/dma-mmp_tdma.h> #include <linux/platform_data/dma-mmp_tdma.h>
#include "devices.h" #include "devices.h"
......
...@@ -11,7 +11,7 @@ extern void pxa168_restart(enum reboot_mode, const char *); ...@@ -11,7 +11,7 @@ extern void pxa168_restart(enum reboot_mode, const char *);
extern void pxa168_clear_keypad_wakeup(void); extern void pxa168_clear_keypad_wakeup(void);
#include <linux/i2c.h> #include <linux/i2c.h>
#include <linux/i2c/pxa-i2c.h> #include <linux/platform_data/i2c-pxa.h>
#include <linux/platform_data/mtd-nand-pxa3xx.h> #include <linux/platform_data/mtd-nand-pxa3xx.h>
#include <video/pxa168fb.h> #include <video/pxa168fb.h>
#include <linux/platform_data/keypad-pxa27x.h> #include <linux/platform_data/keypad-pxa27x.h>
......
...@@ -7,7 +7,7 @@ extern void __init icu_init_irq(void); ...@@ -7,7 +7,7 @@ extern void __init icu_init_irq(void);
extern void __init pxa910_init_irq(void); extern void __init pxa910_init_irq(void);
#include <linux/i2c.h> #include <linux/i2c.h>
#include <linux/i2c/pxa-i2c.h> #include <linux/platform_data/i2c-pxa.h>
#include <linux/platform_data/mtd-nand-pxa3xx.h> #include <linux/platform_data/mtd-nand-pxa3xx.h>
#include <video/mmp_disp.h> #include <video/mmp_disp.h>
......
...@@ -40,6 +40,7 @@ config MACH_PXA3XX_DT ...@@ -40,6 +40,7 @@ config MACH_PXA3XX_DT
config ARCH_LUBBOCK config ARCH_LUBBOCK
bool "Intel DBPXA250 Development Platform (aka Lubbock)" bool "Intel DBPXA250 Development Platform (aka Lubbock)"
select GPIO_REG
select PXA25x select PXA25x
select SA1111 select SA1111
......
...@@ -28,7 +28,7 @@ ...@@ -28,7 +28,7 @@
#include <linux/mtd/partitions.h> #include <linux/mtd/partitions.h>
#include <linux/types.h> #include <linux/types.h>
#include <linux/platform_data/pcf857x.h> #include <linux/platform_data/pcf857x.h>
#include <linux/i2c/pxa-i2c.h> #include <linux/platform_data/i2c-pxa.h>
#include <linux/mtd/rawnand.h> #include <linux/mtd/rawnand.h>
#include <linux/mtd/physmap.h> #include <linux/mtd/physmap.h>
#include <linux/regulator/max1586.h> #include <linux/regulator/max1586.h>
......
...@@ -31,7 +31,7 @@ ...@@ -31,7 +31,7 @@
#include <linux/i2c.h> #include <linux/i2c.h>
#include <linux/platform_data/pca953x.h> #include <linux/platform_data/pca953x.h>
#include <linux/i2c/pxa-i2c.h> #include <linux/platform_data/i2c-pxa.h>
#include <linux/mfd/da903x.h> #include <linux/mfd/da903x.h>
#include <linux/regulator/machine.h> #include <linux/regulator/machine.h>
......
...@@ -19,7 +19,7 @@ ...@@ -19,7 +19,7 @@
#include <mach/hardware.h> #include <mach/hardware.h>
#include <asm/mach/arch.h> #include <asm/mach/arch.h>
#include <linux/i2c.h> #include <linux/i2c.h>
#include <linux/i2c/pxa-i2c.h> #include <linux/platform_data/i2c-pxa.h>
#include <asm/io.h> #include <asm/io.h>
#include "pxa27x.h" #include "pxa27x.h"
......
...@@ -23,7 +23,7 @@ ...@@ -23,7 +23,7 @@
#include <linux/platform_device.h> #include <linux/platform_device.h>
#include <linux/pwm.h> #include <linux/pwm.h>
#include <linux/pwm_backlight.h> #include <linux/pwm_backlight.h>
#include <linux/i2c/pxa-i2c.h> #include <linux/platform_data/i2c-pxa.h>
#include <asm/irq.h> #include <asm/irq.h>
#include <asm/mach-types.h> #include <asm/mach-types.h>
......
...@@ -26,7 +26,7 @@ ...@@ -26,7 +26,7 @@
#include <linux/gpio.h> #include <linux/gpio.h>
#include <linux/backlight.h> #include <linux/backlight.h>
#include <linux/i2c.h> #include <linux/i2c.h>
#include <linux/i2c/pxa-i2c.h> #include <linux/platform_data/i2c-pxa.h>
#include <linux/io.h> #include <linux/io.h>
#include <linux/regulator/machine.h> #include <linux/regulator/machine.h>
#include <linux/spi/spi.h> #include <linux/spi/spi.h>
...@@ -606,24 +606,6 @@ static void __init corgi_init_spi(void) ...@@ -606,24 +606,6 @@ static void __init corgi_init_spi(void)
static inline void corgi_init_spi(void) {} static inline void corgi_init_spi(void) {}
#endif #endif
static struct mtd_partition sharpsl_nand_partitions[] = {
{
.name = "System Area",
.offset = 0,
.size = 7 * 1024 * 1024,
},
{
.name = "Root Filesystem",
.offset = 7 * 1024 * 1024,
.size = 25 * 1024 * 1024,
},
{
.name = "Home Filesystem",
.offset = MTDPART_OFS_APPEND,
.size = MTDPART_SIZ_FULL,
},
};
static uint8_t scan_ff_pattern[] = { 0xff, 0xff }; static uint8_t scan_ff_pattern[] = { 0xff, 0xff };
static struct nand_bbt_descr sharpsl_bbt = { static struct nand_bbt_descr sharpsl_bbt = {
...@@ -633,10 +615,16 @@ static struct nand_bbt_descr sharpsl_bbt = { ...@@ -633,10 +615,16 @@ static struct nand_bbt_descr sharpsl_bbt = {
.pattern = scan_ff_pattern .pattern = scan_ff_pattern
}; };
static const char * const probes[] = {
"cmdlinepart",
"ofpart",
"sharpslpart",
NULL,
};
static struct sharpsl_nand_platform_data sharpsl_nand_platform_data = { static struct sharpsl_nand_platform_data sharpsl_nand_platform_data = {
.badblock_pattern = &sharpsl_bbt, .badblock_pattern = &sharpsl_bbt,
.partitions = sharpsl_nand_partitions, .part_parsers = probes,
.nr_partitions = ARRAY_SIZE(sharpsl_nand_partitions),
}; };
static struct resource sharpsl_nand_resources[] = { static struct resource sharpsl_nand_resources[] = {
...@@ -750,9 +738,6 @@ static void __init corgi_init(void) ...@@ -750,9 +738,6 @@ static void __init corgi_init(void)
platform_scoop_config = &corgi_pcmcia_config; platform_scoop_config = &corgi_pcmcia_config;
if (machine_is_husky())
sharpsl_nand_partitions[1].size = 53 * 1024 * 1024;
platform_add_devices(devices, ARRAY_SIZE(devices)); platform_add_devices(devices, ARRAY_SIZE(devices));
regulator_has_full_constraints(); regulator_has_full_constraints();
......
...@@ -17,7 +17,7 @@ ...@@ -17,7 +17,7 @@
#include <linux/mtd/partitions.h> #include <linux/mtd/partitions.h>
#include <linux/sm501.h> #include <linux/sm501.h>
#include <linux/smsc911x.h> #include <linux/smsc911x.h>
#include <linux/i2c/pxa-i2c.h> #include <linux/platform_data/i2c-pxa.h>
#include <asm/mach-types.h> #include <asm/mach-types.h>
#include <asm/mach/arch.h> #include <asm/mach/arch.h>
......
...@@ -5,7 +5,7 @@ ...@@ -5,7 +5,7 @@
#include <linux/platform_device.h> #include <linux/platform_device.h>
#include <linux/dma-mapping.h> #include <linux/dma-mapping.h>
#include <linux/spi/pxa2xx_spi.h> #include <linux/spi/pxa2xx_spi.h>
#include <linux/i2c/pxa-i2c.h> #include <linux/platform_data/i2c-pxa.h>
#include "udc.h" #include "udc.h"
#include <linux/platform_data/usb-pxa3xx-ulpi.h> #include <linux/platform_data/usb-pxa3xx-ulpi.h>
......
...@@ -56,3 +56,12 @@ extern struct platform_device pxa93x_device_gpio; ...@@ -56,3 +56,12 @@ extern struct platform_device pxa93x_device_gpio;
void __init pxa_register_device(struct platform_device *dev, void *data); void __init pxa_register_device(struct platform_device *dev, void *data);
void __init pxa2xx_set_dmac_info(int nb_channels, int nb_requestors); void __init pxa2xx_set_dmac_info(int nb_channels, int nb_requestors);
struct i2c_pxa_platform_data;
extern void pxa_set_i2c_info(struct i2c_pxa_platform_data *info);
#ifdef CONFIG_PXA27x
extern void pxa27x_set_i2c_power_info(struct i2c_pxa_platform_data *info);
#endif
#ifdef CONFIG_PXA3xx
extern void pxa3xx_set_i2c_power_info(struct i2c_pxa_platform_data *info);
#endif
...@@ -32,7 +32,7 @@ ...@@ -32,7 +32,7 @@
#include <linux/apm-emulation.h> #include <linux/apm-emulation.h>
#include <linux/i2c.h> #include <linux/i2c.h>
#include <linux/platform_data/pca953x.h> #include <linux/platform_data/pca953x.h>
#include <linux/i2c/pxa-i2c.h> #include <linux/platform_data/i2c-pxa.h>
#include <linux/regulator/userspace-consumer.h> #include <linux/regulator/userspace-consumer.h>
#include <asm/mach-types.h> #include <asm/mach-types.h>
......
...@@ -23,7 +23,7 @@ ...@@ -23,7 +23,7 @@
#include <linux/gpio.h> #include <linux/gpio.h>
#include <linux/gpio_keys.h> #include <linux/gpio_keys.h>
#include <linux/leds-lp3944.h> #include <linux/leds-lp3944.h>
#include <linux/i2c/pxa-i2c.h> #include <linux/platform_data/i2c-pxa.h>
#include <asm/setup.h> #include <asm/setup.h>
#include <asm/mach-types.h> #include <asm/mach-types.h>
......
...@@ -38,7 +38,7 @@ ...@@ -38,7 +38,7 @@
#include <linux/spi/spi.h> #include <linux/spi/spi.h>
#include <linux/spi/pxa2xx_spi.h> #include <linux/spi/pxa2xx_spi.h>
#include <linux/usb/gpio_vbus.h> #include <linux/usb/gpio_vbus.h>
#include <linux/i2c/pxa-i2c.h> #include <linux/platform_data/i2c-pxa.h>
#include <mach/hardware.h> #include <mach/hardware.h>
#include <asm/mach-types.h> #include <asm/mach-types.h>
......
...@@ -28,7 +28,7 @@ ...@@ -28,7 +28,7 @@
#include <linux/leds.h> #include <linux/leds.h>
#include <linux/mfd/da903x.h> #include <linux/mfd/da903x.h>
#include <linux/platform_data/max732x.h> #include <linux/platform_data/max732x.h>
#include <linux/i2c/pxa-i2c.h> #include <linux/platform_data/i2c-pxa.h>
#include <asm/types.h> #include <asm/types.h>
#include <asm/setup.h> #include <asm/setup.h>
...@@ -42,6 +42,7 @@ ...@@ -42,6 +42,7 @@
#include <asm/mach/irq.h> #include <asm/mach/irq.h>
#include "pxa300.h" #include "pxa300.h"
#include "devices.h"
#include <linux/platform_data/video-pxafb.h> #include <linux/platform_data/video-pxafb.h>
#include <linux/platform_data/mmc-pxamci.h> #include <linux/platform_data/mmc-pxamci.h>
#include <linux/platform_data/keypad-pxa27x.h> #include <linux/platform_data/keypad-pxa27x.h>
......
...@@ -13,6 +13,7 @@ ...@@ -13,6 +13,7 @@
*/ */
#include <linux/clkdev.h> #include <linux/clkdev.h>
#include <linux/gpio.h> #include <linux/gpio.h>
#include <linux/gpio/gpio-reg.h>
#include <linux/gpio/machine.h> #include <linux/gpio/machine.h>
#include <linux/module.h> #include <linux/module.h>
#include <linux/kernel.h> #include <linux/kernel.h>
...@@ -110,20 +111,18 @@ static unsigned long lubbock_pin_config[] __initdata = { ...@@ -110,20 +111,18 @@ static unsigned long lubbock_pin_config[] __initdata = {
}; };
#define LUB_HEXLED __LUB_REG(LUBBOCK_FPGA_PHYS + 0x010) #define LUB_HEXLED __LUB_REG(LUBBOCK_FPGA_PHYS + 0x010)
#define LUB_MISC_WR __LUB_REG(LUBBOCK_FPGA_PHYS + 0x080)
void lubbock_set_hexled(uint32_t value) void lubbock_set_hexled(uint32_t value)
{ {
LUB_HEXLED = value; LUB_HEXLED = value;
} }
static struct gpio_chip *lubbock_misc_wr_gc;
void lubbock_set_misc_wr(unsigned int mask, unsigned int set) void lubbock_set_misc_wr(unsigned int mask, unsigned int set)
{ {
unsigned long flags; unsigned long m = mask, v = set;
lubbock_misc_wr_gc->set_multiple(lubbock_misc_wr_gc, &m, &v);
local_irq_save(flags);
LUB_MISC_WR = (LUB_MISC_WR & ~mask) | (set & mask);
local_irq_restore(flags);
} }
EXPORT_SYMBOL(lubbock_set_misc_wr); EXPORT_SYMBOL(lubbock_set_misc_wr);
...@@ -452,9 +451,9 @@ static void lubbock_irda_transceiver_mode(struct device *dev, int mode) ...@@ -452,9 +451,9 @@ static void lubbock_irda_transceiver_mode(struct device *dev, int mode)
local_irq_save(flags); local_irq_save(flags);
if (mode & IR_SIRMODE) { if (mode & IR_SIRMODE) {
LUB_MISC_WR &= ~(1 << 4); lubbock_set_misc_wr(BIT(4), 0);
} else if (mode & IR_FIRMODE) { } else if (mode & IR_FIRMODE) {
LUB_MISC_WR |= 1 << 4; lubbock_set_misc_wr(BIT(4), BIT(4));
} }
pxa2xx_transceiver_mode(dev, mode); pxa2xx_transceiver_mode(dev, mode);
local_irq_restore(flags); local_irq_restore(flags);
...@@ -472,6 +471,15 @@ static void __init lubbock_init(void) ...@@ -472,6 +471,15 @@ static void __init lubbock_init(void)
pxa2xx_mfp_config(ARRAY_AND_SIZE(lubbock_pin_config)); pxa2xx_mfp_config(ARRAY_AND_SIZE(lubbock_pin_config));
lubbock_misc_wr_gc = gpio_reg_init(NULL, (void *)&LUB_MISC_WR,
-1, 16, "lubbock", 0, LUB_MISC_WR,
NULL, NULL, NULL);
if (IS_ERR(lubbock_misc_wr_gc)) {
pr_err("Lubbock: unable to register lubbock GPIOs: %ld\n",
PTR_ERR(lubbock_misc_wr_gc));
lubbock_misc_wr_gc = NULL;
}
pxa_set_ffuart_info(NULL); pxa_set_ffuart_info(NULL);
pxa_set_btuart_info(NULL); pxa_set_btuart_info(NULL);
pxa_set_stuart_info(NULL); pxa_set_stuart_info(NULL);
......
...@@ -31,7 +31,7 @@ ...@@ -31,7 +31,7 @@
#include <linux/regulator/gpio-regulator.h> #include <linux/regulator/gpio-regulator.h>
#include <linux/regulator/machine.h> #include <linux/regulator/machine.h>
#include <linux/usb/gpio_vbus.h> #include <linux/usb/gpio_vbus.h>
#include <linux/i2c/pxa-i2c.h> #include <linux/platform_data/i2c-pxa.h>
#include <mach/hardware.h> #include <mach/hardware.h>
#include <asm/mach-types.h> #include <asm/mach-types.h>
......
...@@ -29,7 +29,7 @@ ...@@ -29,7 +29,7 @@
#include <linux/pwm.h> #include <linux/pwm.h>
#include <linux/pwm_backlight.h> #include <linux/pwm_backlight.h>
#include <linux/smc91x.h> #include <linux/smc91x.h>
#include <linux/i2c/pxa-i2c.h> #include <linux/platform_data/i2c-pxa.h>
#include <linux/slab.h> #include <linux/slab.h>
#include <linux/leds.h> #include <linux/leds.h>
......
...@@ -42,7 +42,7 @@ ...@@ -42,7 +42,7 @@
#include <linux/regulator/fixed.h> #include <linux/regulator/fixed.h>
#include <linux/regulator/max1586.h> #include <linux/regulator/max1586.h>
#include <linux/slab.h> #include <linux/slab.h>
#include <linux/i2c/pxa-i2c.h> #include <linux/platform_data/i2c-pxa.h>
#include <asm/mach-types.h> #include <asm/mach-types.h>
#include <asm/mach/arch.h> #include <asm/mach/arch.h>
......
...@@ -22,7 +22,7 @@ ...@@ -22,7 +22,7 @@
#include <linux/serial_8250.h> #include <linux/serial_8250.h>
#include <linux/dm9000.h> #include <linux/dm9000.h>
#include <linux/gpio.h> #include <linux/gpio.h>
#include <linux/i2c/pxa-i2c.h> #include <linux/platform_data/i2c-pxa.h>
#include <linux/platform_data/mtd-nand-pxa3xx.h> #include <linux/platform_data/mtd-nand-pxa3xx.h>
......
...@@ -22,7 +22,7 @@ ...@@ -22,7 +22,7 @@
#include <linux/power_supply.h> #include <linux/power_supply.h>
#include <linux/usb/gpio_vbus.h> #include <linux/usb/gpio_vbus.h>
#include <linux/regulator/max1586.h> #include <linux/regulator/max1586.h>
#include <linux/i2c/pxa-i2c.h> #include <linux/platform_data/i2c-pxa.h>
#include <asm/mach-types.h> #include <asm/mach-types.h>
#include <asm/mach/arch.h> #include <asm/mach/arch.h>
......
...@@ -23,7 +23,7 @@ ...@@ -23,7 +23,7 @@
#include <linux/irq.h> #include <linux/irq.h>
#include <linux/platform_device.h> #include <linux/platform_device.h>
#include <linux/i2c.h> #include <linux/i2c.h>
#include <linux/i2c/pxa-i2c.h> #include <linux/platform_data/i2c-pxa.h>
#include <linux/pwm.h> #include <linux/pwm.h>
#include <linux/pwm_backlight.h> #include <linux/pwm_backlight.h>
......
...@@ -24,7 +24,7 @@ ...@@ -24,7 +24,7 @@
#include <linux/mtd/physmap.h> #include <linux/mtd/physmap.h>
#include <linux/gpio.h> #include <linux/gpio.h>
#include <linux/i2c.h> #include <linux/i2c.h>
#include <linux/i2c/pxa-i2c.h> #include <linux/platform_data/i2c-pxa.h>
#include <linux/regulator/machine.h> #include <linux/regulator/machine.h>
#include <linux/spi/spi.h> #include <linux/spi/spi.h>
#include <linux/spi/ads7846.h> #include <linux/spi/ads7846.h>
...@@ -333,24 +333,6 @@ static struct pxafb_mach_info poodle_fb_info = { ...@@ -333,24 +333,6 @@ static struct pxafb_mach_info poodle_fb_info = {
.lcd_conn = LCD_COLOR_TFT_16BPP, .lcd_conn = LCD_COLOR_TFT_16BPP,
}; };
static struct mtd_partition sharpsl_nand_partitions[] = {
{
.name = "System Area",
.offset = 0,
.size = 7 * 1024 * 1024,
},
{
.name = "Root Filesystem",
.offset = 7 * 1024 * 1024,
.size = 22 * 1024 * 1024,
},
{
.name = "Home Filesystem",
.offset = MTDPART_OFS_APPEND,
.size = MTDPART_SIZ_FULL,
},
};
static uint8_t scan_ff_pattern[] = { 0xff, 0xff }; static uint8_t scan_ff_pattern[] = { 0xff, 0xff };
static struct nand_bbt_descr sharpsl_bbt = { static struct nand_bbt_descr sharpsl_bbt = {
...@@ -360,10 +342,16 @@ static struct nand_bbt_descr sharpsl_bbt = { ...@@ -360,10 +342,16 @@ static struct nand_bbt_descr sharpsl_bbt = {
.pattern = scan_ff_pattern .pattern = scan_ff_pattern
}; };
static const char * const probes[] = {
"cmdlinepart",
"ofpart",
"sharpslpart",
NULL,
};
static struct sharpsl_nand_platform_data sharpsl_nand_platform_data = { static struct sharpsl_nand_platform_data sharpsl_nand_platform_data = {
.badblock_pattern = &sharpsl_bbt, .badblock_pattern = &sharpsl_bbt,
.partitions = sharpsl_nand_partitions, .part_parsers = probes,
.nr_partitions = ARRAY_SIZE(sharpsl_nand_partitions),
}; };
static struct resource sharpsl_nand_resources[] = { static struct resource sharpsl_nand_resources[] = {
......
...@@ -22,7 +22,7 @@ ...@@ -22,7 +22,7 @@
#include <linux/syscore_ops.h> #include <linux/syscore_ops.h>
#include <linux/io.h> #include <linux/io.h>
#include <linux/irq.h> #include <linux/irq.h>
#include <linux/i2c/pxa-i2c.h> #include <linux/platform_data/i2c-pxa.h>
#include <asm/mach/map.h> #include <asm/mach/map.h>
#include <mach/hardware.h> #include <mach/hardware.h>
......
...@@ -23,7 +23,7 @@ ...@@ -23,7 +23,7 @@
#include <linux/io.h> #include <linux/io.h>
#include <linux/of.h> #include <linux/of.h>
#include <linux/syscore_ops.h> #include <linux/syscore_ops.h>
#include <linux/i2c/pxa-i2c.h> #include <linux/platform_data/i2c-pxa.h>
#include <asm/mach/map.h> #include <asm/mach/map.h>
#include <asm/suspend.h> #include <asm/suspend.h>
......
...@@ -32,7 +32,7 @@ ...@@ -32,7 +32,7 @@
#include <linux/pwm.h> #include <linux/pwm.h>
#include <linux/pwm_backlight.h> #include <linux/pwm_backlight.h>
#include <linux/i2c.h> #include <linux/i2c.h>
#include <linux/i2c/pxa-i2c.h> #include <linux/platform_data/i2c-pxa.h>
#include <linux/spi/spi.h> #include <linux/spi/spi.h>
#include <linux/spi/spi_gpio.h> #include <linux/spi/spi_gpio.h>
#include <linux/lis3lv02d.h> #include <linux/lis3lv02d.h>
......
...@@ -20,7 +20,7 @@ ...@@ -20,7 +20,7 @@
#include <linux/delay.h> #include <linux/delay.h>
#include <linux/fb.h> #include <linux/fb.h>
#include <linux/i2c.h> #include <linux/i2c.h>
#include <linux/i2c/pxa-i2c.h> #include <linux/platform_data/i2c-pxa.h>
#include <linux/smc91x.h> #include <linux/smc91x.h>
#include <linux/mfd/da903x.h> #include <linux/mfd/da903x.h>
#include <linux/mtd/mtd.h> #include <linux/mtd/mtd.h>
......
...@@ -20,7 +20,7 @@ ...@@ -20,7 +20,7 @@
#include <linux/gpio.h> #include <linux/gpio.h>
#include <linux/leds.h> #include <linux/leds.h>
#include <linux/i2c.h> #include <linux/i2c.h>
#include <linux/i2c/pxa-i2c.h> #include <linux/platform_data/i2c-pxa.h>
#include <linux/platform_data/pca953x.h> #include <linux/platform_data/pca953x.h>
#include <linux/spi/spi.h> #include <linux/spi/spi.h>
#include <linux/spi/ads7846.h> #include <linux/spi/ads7846.h>
...@@ -739,21 +739,6 @@ static inline void spitz_lcd_init(void) {} ...@@ -739,21 +739,6 @@ static inline void spitz_lcd_init(void) {}
* NAND Flash * NAND Flash
******************************************************************************/ ******************************************************************************/
#if defined(CONFIG_MTD_NAND_SHARPSL) || defined(CONFIG_MTD_NAND_SHARPSL_MODULE) #if defined(CONFIG_MTD_NAND_SHARPSL) || defined(CONFIG_MTD_NAND_SHARPSL_MODULE)
static struct mtd_partition spitz_nand_partitions[] = {
{
.name = "System Area",
.offset = 0,
.size = 7 * 1024 * 1024,
}, {
.name = "Root Filesystem",
.offset = 7 * 1024 * 1024,
}, {
.name = "Home Filesystem",
.offset = MTDPART_OFS_APPEND,
.size = MTDPART_SIZ_FULL,
},
};
static uint8_t scan_ff_pattern[] = { 0xff, 0xff }; static uint8_t scan_ff_pattern[] = { 0xff, 0xff };
static struct nand_bbt_descr spitz_nand_bbt = { static struct nand_bbt_descr spitz_nand_bbt = {
...@@ -808,10 +793,16 @@ static const struct mtd_ooblayout_ops akita_ooblayout_ops = { ...@@ -808,10 +793,16 @@ static const struct mtd_ooblayout_ops akita_ooblayout_ops = {
.free = akita_ooblayout_free, .free = akita_ooblayout_free,
}; };
static const char * const probes[] = {
"cmdlinepart",
"ofpart",
"sharpslpart",
NULL,
};
static struct sharpsl_nand_platform_data spitz_nand_pdata = { static struct sharpsl_nand_platform_data spitz_nand_pdata = {
.badblock_pattern = &spitz_nand_bbt, .badblock_pattern = &spitz_nand_bbt,
.partitions = spitz_nand_partitions, .part_parsers = probes,
.nr_partitions = ARRAY_SIZE(spitz_nand_partitions),
}; };
static struct resource spitz_nand_resources[] = { static struct resource spitz_nand_resources[] = {
...@@ -834,14 +825,7 @@ static struct platform_device spitz_nand_device = { ...@@ -834,14 +825,7 @@ static struct platform_device spitz_nand_device = {
static void __init spitz_nand_init(void) static void __init spitz_nand_init(void)
{ {
if (machine_is_spitz()) { if (machine_is_akita() || machine_is_borzoi()) {
spitz_nand_partitions[1].size = 5 * 1024 * 1024;
} else if (machine_is_akita()) {
spitz_nand_partitions[1].size = 58 * 1024 * 1024;
spitz_nand_bbt.len = 1;
spitz_nand_pdata.ecc_layout = &akita_ooblayout_ops;
} else if (machine_is_borzoi()) {
spitz_nand_partitions[1].size = 32 * 1024 * 1024;
spitz_nand_bbt.len = 1; spitz_nand_bbt.len = 1;
spitz_nand_pdata.ecc_layout = &akita_ooblayout_ops; spitz_nand_pdata.ecc_layout = &akita_ooblayout_ops;
} }
......
...@@ -25,7 +25,7 @@ ...@@ -25,7 +25,7 @@
#include <linux/mtd/plat-ram.h> #include <linux/mtd/plat-ram.h>
#include <linux/mtd/partitions.h> #include <linux/mtd/partitions.h>
#include <linux/i2c/pxa-i2c.h> #include <linux/platform_data/i2c-pxa.h>
#include <linux/platform_data/pcf857x.h> #include <linux/platform_data/pcf857x.h>
#include <linux/platform_data/at24.h> #include <linux/platform_data/at24.h>
#include <linux/smc91x.h> #include <linux/smc91x.h>
......
...@@ -35,7 +35,7 @@ ...@@ -35,7 +35,7 @@
#include <linux/spi/spi.h> #include <linux/spi/spi.h>
#include <linux/spi/pxa2xx_spi.h> #include <linux/spi/pxa2xx_spi.h>
#include <linux/input/matrix_keypad.h> #include <linux/input/matrix_keypad.h>
#include <linux/i2c/pxa-i2c.h> #include <linux/platform_data/i2c-pxa.h>
#include <linux/usb/gpio_vbus.h> #include <linux/usb/gpio_vbus.h>
#include <linux/reboot.h> #include <linux/reboot.h>
#include <linux/memblock.h> #include <linux/memblock.h>
...@@ -673,24 +673,6 @@ static int tosa_tc6393xb_suspend(struct platform_device *dev) ...@@ -673,24 +673,6 @@ static int tosa_tc6393xb_suspend(struct platform_device *dev)
return 0; return 0;
} }
static struct mtd_partition tosa_nand_partition[] = {
{
.name = "smf",
.offset = 0,
.size = 7 * 1024 * 1024,
},
{
.name = "root",
.offset = MTDPART_OFS_APPEND,
.size = 28 * 1024 * 1024,
},
{
.name = "home",
.offset = MTDPART_OFS_APPEND,
.size = MTDPART_SIZ_FULL,
},
};
static uint8_t scan_ff_pattern[] = { 0xff, 0xff }; static uint8_t scan_ff_pattern[] = { 0xff, 0xff };
static struct nand_bbt_descr tosa_tc6393xb_nand_bbt = { static struct nand_bbt_descr tosa_tc6393xb_nand_bbt = {
...@@ -700,10 +682,16 @@ static struct nand_bbt_descr tosa_tc6393xb_nand_bbt = { ...@@ -700,10 +682,16 @@ static struct nand_bbt_descr tosa_tc6393xb_nand_bbt = {
.pattern = scan_ff_pattern .pattern = scan_ff_pattern
}; };
static const char * const probes[] = {
"cmdlinepart",
"ofpart",
"sharpslpart",
NULL,
};
static struct tmio_nand_data tosa_tc6393xb_nand_config = { static struct tmio_nand_data tosa_tc6393xb_nand_config = {
.num_partitions = ARRAY_SIZE(tosa_nand_partition),
.partition = tosa_nand_partition,
.badblock_pattern = &tosa_tc6393xb_nand_bbt, .badblock_pattern = &tosa_tc6393xb_nand_bbt,
.part_parsers = probes,
}; };
static int tosa_tc6393xb_setup(struct platform_device *dev) static int tosa_tc6393xb_setup(struct platform_device *dev)
......
...@@ -28,7 +28,7 @@ ...@@ -28,7 +28,7 @@
#include <linux/mtd/physmap.h> #include <linux/mtd/physmap.h>
#include <linux/mtd/partitions.h> #include <linux/mtd/partitions.h>
#include <linux/regulator/machine.h> #include <linux/regulator/machine.h>
#include <linux/i2c/pxa-i2c.h> #include <linux/platform_data/i2c-pxa.h>
#include <asm/types.h> #include <asm/types.h>
#include <asm/setup.h> #include <asm/setup.h>
......
...@@ -37,7 +37,7 @@ ...@@ -37,7 +37,7 @@
#include <linux/jiffies.h> #include <linux/jiffies.h>
#include <linux/i2c-gpio.h> #include <linux/i2c-gpio.h>
#include <linux/gpio/machine.h> #include <linux/gpio/machine.h>
#include <linux/i2c/pxa-i2c.h> #include <linux/platform_data/i2c-pxa.h>
#include <linux/serial_8250.h> #include <linux/serial_8250.h>
#include <linux/smc91x.h> #include <linux/smc91x.h>
#include <linux/pwm.h> #include <linux/pwm.h>
......
...@@ -27,7 +27,7 @@ ...@@ -27,7 +27,7 @@
#include <linux/ata_platform.h> #include <linux/ata_platform.h>
#include <linux/regulator/machine.h> #include <linux/regulator/machine.h>
#include <linux/regulator/max1586.h> #include <linux/regulator/max1586.h>
#include <linux/i2c/pxa-i2c.h> #include <linux/platform_data/i2c-pxa.h>
#include <asm/mach-types.h> #include <asm/mach-types.h>
#include <asm/mach/arch.h> #include <asm/mach/arch.h>
......
...@@ -16,7 +16,7 @@ ...@@ -16,7 +16,7 @@
#include <linux/platform_device.h> #include <linux/platform_device.h>
#include <linux/i2c.h> #include <linux/i2c.h>
#include <linux/i2c/pxa-i2c.h> #include <linux/platform_data/i2c-pxa.h>
#include <linux/smc91x.h> #include <linux/smc91x.h>
#include <linux/mtd/mtd.h> #include <linux/mtd/mtd.h>
#include <linux/mtd/partitions.h> #include <linux/mtd/partitions.h>
...@@ -32,6 +32,7 @@ ...@@ -32,6 +32,7 @@
#include <mach/smemc.h> #include <mach/smemc.h>
#include "generic.h" #include "generic.h"
#include "devices.h"
#define XCEP_ETH_PHYS (PXA_CS3_PHYS + 0x00000300) #define XCEP_ETH_PHYS (PXA_CS3_PHYS + 0x00000300)
#define XCEP_ETH_PHYS_END (PXA_CS3_PHYS + 0x000fffff) #define XCEP_ETH_PHYS_END (PXA_CS3_PHYS + 0x000fffff)
......
...@@ -30,7 +30,7 @@ ...@@ -30,7 +30,7 @@
#include <linux/gpio_keys.h> #include <linux/gpio_keys.h>
#include <linux/delay.h> #include <linux/delay.h>
#include <linux/regulator/machine.h> #include <linux/regulator/machine.h>
#include <linux/i2c/pxa-i2c.h> #include <linux/platform_data/i2c-pxa.h>
#include <asm/mach-types.h> #include <asm/mach-types.h>
#include <asm/mach/arch.h> #include <asm/mach/arch.h>
......
...@@ -26,7 +26,7 @@ ...@@ -26,7 +26,7 @@
#include <linux/mtd/partitions.h> #include <linux/mtd/partitions.h>
#include <linux/mtd/physmap.h> #include <linux/mtd/physmap.h>
#include <linux/i2c.h> #include <linux/i2c.h>
#include <linux/i2c/pxa-i2c.h> #include <linux/platform_data/i2c-pxa.h>
#include <linux/platform_data/pca953x.h> #include <linux/platform_data/pca953x.h>
#include <linux/apm-emulation.h> #include <linux/apm-emulation.h>
#include <linux/can/platform/mcp251x.h> #include <linux/can/platform/mcp251x.h>
...@@ -40,6 +40,7 @@ ...@@ -40,6 +40,7 @@
#include <asm/mach/map.h> #include <asm/mach/map.h>
#include "pxa27x.h" #include "pxa27x.h"
#include "devices.h"
#include <mach/regs-uart.h> #include <mach/regs-uart.h>
#include <linux/platform_data/usb-ohci-pxa27x.h> #include <linux/platform_data/usb-ohci-pxa27x.h>
#include <linux/platform_data/mmc-pxamci.h> #include <linux/platform_data/mmc-pxamci.h>
......
...@@ -17,11 +17,12 @@ ...@@ -17,11 +17,12 @@
#include <linux/kernel.h> #include <linux/kernel.h>
#include <linux/init.h> #include <linux/init.h>
#include <linux/i2c.h> #include <linux/i2c.h>
#include <linux/i2c/pxa-i2c.h> #include <linux/platform_data/i2c-pxa.h>
#include <linux/platform_data/pca953x.h> #include <linux/platform_data/pca953x.h>
#include <linux/gpio.h> #include <linux/gpio.h>
#include "pxa300.h" #include "pxa300.h"
#include "devices.h"
#include "zylonite.h" #include "zylonite.h"
#include "generic.h" #include "generic.h"
......
...@@ -10,7 +10,7 @@ ...@@ -10,7 +10,7 @@
#include <linux/init.h> #include <linux/init.h>
#include <linux/pci.h> #include <linux/pci.h>
#include <linux/platform_device.h> #include <linux/platform_device.h>
#include <linux/i2c/pxa-i2c.h> #include <linux/platform_data/i2c-pxa.h>
#include <linux/of.h> #include <linux/of.h>
#include <linux/of_device.h> #include <linux/of_device.h>
#include <linux/of_address.h> #include <linux/of_address.h>
......
...@@ -36,7 +36,7 @@ ...@@ -36,7 +36,7 @@
#include <linux/clk.h> #include <linux/clk.h>
#include <linux/slab.h> #include <linux/slab.h>
#include <linux/io.h> #include <linux/io.h>
#include <linux/i2c/pxa-i2c.h> #include <linux/platform_data/i2c-pxa.h>
#include <asm/irq.h> #include <asm/irq.h>
......
...@@ -71,15 +71,4 @@ struct i2c_pxa_platform_data { ...@@ -71,15 +71,4 @@ struct i2c_pxa_platform_data {
unsigned char master_code; unsigned char master_code;
unsigned long rate; unsigned long rate;
}; };
extern void pxa_set_i2c_info(struct i2c_pxa_platform_data *info);
#ifdef CONFIG_PXA27x
extern void pxa27x_set_i2c_power_info(struct i2c_pxa_platform_data *info);
#endif
#ifdef CONFIG_PXA3xx
extern void pxa3xx_set_i2c_power_info(struct i2c_pxa_platform_data *info);
#endif
#endif #endif
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment