mirror of
https://github.com/torvalds/linux.git
synced 2024-12-27 05:11: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>
80 lines
1.9 KiB
C
80 lines
1.9 KiB
C
#ifndef __ASM_MACH_PXA910_H
|
|
#define __ASM_MACH_PXA910_H
|
|
|
|
struct sys_timer;
|
|
|
|
extern struct sys_timer pxa910_timer;
|
|
extern void __init pxa910_init_irq(void);
|
|
|
|
#include <linux/i2c.h>
|
|
#include <linux/i2c/pxa-i2c.h>
|
|
#include <mach/devices.h>
|
|
#include <plat/pxa3xx_nand.h>
|
|
|
|
extern struct pxa_device_desc pxa910_device_uart1;
|
|
extern struct pxa_device_desc pxa910_device_uart2;
|
|
extern struct pxa_device_desc pxa910_device_twsi0;
|
|
extern struct pxa_device_desc pxa910_device_twsi1;
|
|
extern struct pxa_device_desc pxa910_device_pwm1;
|
|
extern struct pxa_device_desc pxa910_device_pwm2;
|
|
extern struct pxa_device_desc pxa910_device_pwm3;
|
|
extern struct pxa_device_desc pxa910_device_pwm4;
|
|
extern struct pxa_device_desc pxa910_device_nand;
|
|
|
|
static inline int pxa910_add_uart(int id)
|
|
{
|
|
struct pxa_device_desc *d = NULL;
|
|
|
|
switch (id) {
|
|
case 1: d = &pxa910_device_uart1; break;
|
|
case 2: d = &pxa910_device_uart2; break;
|
|
}
|
|
|
|
if (d == NULL)
|
|
return -EINVAL;
|
|
|
|
return pxa_register_device(d, NULL, 0);
|
|
}
|
|
|
|
static inline int pxa910_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 0: d = &pxa910_device_twsi0; break;
|
|
case 1: d = &pxa910_device_twsi1; break;
|
|
default:
|
|
return -EINVAL;
|
|
}
|
|
|
|
ret = i2c_register_board_info(id, info, size);
|
|
if (ret)
|
|
return ret;
|
|
|
|
return pxa_register_device(d, data, sizeof(*data));
|
|
}
|
|
|
|
static inline int pxa910_add_pwm(int id)
|
|
{
|
|
struct pxa_device_desc *d = NULL;
|
|
|
|
switch (id) {
|
|
case 1: d = &pxa910_device_pwm1; break;
|
|
case 2: d = &pxa910_device_pwm2; break;
|
|
case 3: d = &pxa910_device_pwm3; break;
|
|
case 4: d = &pxa910_device_pwm4; break;
|
|
default:
|
|
return -EINVAL;
|
|
}
|
|
|
|
return pxa_register_device(d, NULL, 0);
|
|
}
|
|
|
|
static inline int pxa910_add_nand(struct pxa3xx_nand_platform_data *info)
|
|
{
|
|
return pxa_register_device(&pxa910_device_nand, info, sizeof(*info));
|
|
}
|
|
#endif /* __ASM_MACH_PXA910_H */
|