mirror of
https://github.com/torvalds/linux.git
synced 2024-11-19 10:31:48 +00:00
b459396ee9
This patch moves the platform data definition from arch/arm/plat-pxa/include/plat/i2c.h to include/linux/i2c/pxa-i2c.h so it can be accessed from x86 the same way as on ARM. This change should make no functional change to the PXA code. The move is verified by building the following defconfigs: cm_x2xx_defconfig corgi_defconfig em_x270_defconfig ezx_defconfig imote2_defconfig pxa3xx_defconfig spitz_defconfig zeus_defconfig raumfeld_defconfig magician_defconfig mmp2_defconfig pxa168_defconfig pxa910_defconfig Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de> Signed-off-by: Dirk Brandewie <dirk.brandewie@gmail.com> Signed-off-by: Ben Dooks <ben-linux@fluff.org>
90 lines
2.3 KiB
C
90 lines
2.3 KiB
C
#ifndef __ASM_MACH_MMP2_H
|
|
#define __ASM_MACH_MMP2_H
|
|
|
|
#include <plat/sdhci.h>
|
|
|
|
struct sys_timer;
|
|
|
|
extern struct sys_timer mmp2_timer;
|
|
extern void __init mmp2_init_icu(void);
|
|
extern void __init mmp2_init_irq(void);
|
|
extern void mmp2_clear_pmic_int(void);
|
|
|
|
#include <linux/i2c.h>
|
|
#include <linux/i2c/pxa-i2c.h>
|
|
#include <mach/devices.h>
|
|
|
|
extern struct pxa_device_desc mmp2_device_uart1;
|
|
extern struct pxa_device_desc mmp2_device_uart2;
|
|
extern struct pxa_device_desc mmp2_device_uart3;
|
|
extern struct pxa_device_desc mmp2_device_uart4;
|
|
extern struct pxa_device_desc mmp2_device_twsi1;
|
|
extern struct pxa_device_desc mmp2_device_twsi2;
|
|
extern struct pxa_device_desc mmp2_device_twsi3;
|
|
extern struct pxa_device_desc mmp2_device_twsi4;
|
|
extern struct pxa_device_desc mmp2_device_twsi5;
|
|
extern struct pxa_device_desc mmp2_device_twsi6;
|
|
extern struct pxa_device_desc mmp2_device_sdh0;
|
|
extern struct pxa_device_desc mmp2_device_sdh1;
|
|
extern struct pxa_device_desc mmp2_device_sdh2;
|
|
extern struct pxa_device_desc mmp2_device_sdh3;
|
|
|
|
static inline int mmp2_add_uart(int id)
|
|
{
|
|
struct pxa_device_desc *d = NULL;
|
|
|
|
switch (id) {
|
|
case 1: d = &mmp2_device_uart1; break;
|
|
case 2: d = &mmp2_device_uart2; break;
|
|
case 3: d = &mmp2_device_uart3; break;
|
|
case 4: d = &mmp2_device_uart4; break;
|
|
default:
|
|
return -EINVAL;
|
|
}
|
|
|
|
return pxa_register_device(d, NULL, 0);
|
|
}
|
|
|
|
static inline int mmp2_add_twsi(int id, struct i2c_pxa_platform_data *data,
|
|
struct i2c_board_info *info, unsigned size)
|
|
{
|
|
struct pxa_device_desc *d = NULL;
|
|
int ret;
|
|
|
|
switch (id) {
|
|
case 1: d = &mmp2_device_twsi1; break;
|
|
case 2: d = &mmp2_device_twsi2; break;
|
|
case 3: d = &mmp2_device_twsi3; break;
|
|
case 4: d = &mmp2_device_twsi4; break;
|
|
case 5: d = &mmp2_device_twsi5; break;
|
|
case 6: d = &mmp2_device_twsi6; break;
|
|
default:
|
|
return -EINVAL;
|
|
}
|
|
|
|
ret = i2c_register_board_info(id - 1, info, size);
|
|
if (ret)
|
|
return ret;
|
|
|
|
return pxa_register_device(d, data, sizeof(*data));
|
|
}
|
|
|
|
static inline int mmp2_add_sdhost(int id, struct sdhci_pxa_platdata *data)
|
|
{
|
|
struct pxa_device_desc *d = NULL;
|
|
|
|
switch (id) {
|
|
case 0: d = &mmp2_device_sdh0; break;
|
|
case 1: d = &mmp2_device_sdh1; break;
|
|
case 2: d = &mmp2_device_sdh2; break;
|
|
case 3: d = &mmp2_device_sdh3; break;
|
|
default:
|
|
return -EINVAL;
|
|
}
|
|
|
|
return pxa_register_device(d, data, sizeof(*data));
|
|
}
|
|
|
|
#endif /* __ASM_MACH_MMP2_H */
|
|
|