ARM: OMAP: get rid of OMAP_TAG_USB, v2
OMAP_TAGS should vanish soon since they're not generic arm tags. Most of them can be converted to a platform_data or parsed from a command line like e.g. serial tag. For OMAP_TAG_USB we just let boards call omap_usb_init() passing a pointer to omap_usb_config. Patch updated by Tony for mainline, basically make n770 and h4 compile. Also folded in a fix for OSK by David Brownell <dbrownell@users.sourceforge.net>. Signed-off-by: Felipe Balbi <felipe.balbi@nokia.com> Signed-off-by: Tony Lindgren <tony@atomide.com>
This commit is contained in:
@@ -17,7 +17,6 @@
|
||||
/* Different peripheral ids */
|
||||
#define OMAP_TAG_CLOCK 0x4f01
|
||||
#define OMAP_TAG_SERIAL_CONSOLE 0x4f03
|
||||
#define OMAP_TAG_USB 0x4f04
|
||||
#define OMAP_TAG_LCD 0x4f05
|
||||
#define OMAP_TAG_GPIO_SWITCH 0x4f06
|
||||
#define OMAP_TAG_UART 0x4f07
|
||||
|
@@ -29,6 +29,8 @@
|
||||
|
||||
#endif
|
||||
|
||||
void omap_usb_init(struct omap_usb_config *pdata);
|
||||
|
||||
/*-------------------------------------------------------------------------*/
|
||||
|
||||
/*
|
||||
|
@@ -729,30 +729,13 @@ static inline void omap_1510_usb_init(struct omap_usb_config *config) {}
|
||||
|
||||
/*-------------------------------------------------------------------------*/
|
||||
|
||||
static struct omap_usb_config platform_data;
|
||||
|
||||
static int __init
|
||||
omap_usb_init(void)
|
||||
void __init omap_usb_init(struct omap_usb_config *pdata)
|
||||
{
|
||||
const struct omap_usb_config *config;
|
||||
|
||||
config = omap_get_config(OMAP_TAG_USB, struct omap_usb_config);
|
||||
if (config == NULL) {
|
||||
printk(KERN_ERR "USB: No board-specific "
|
||||
"platform config found\n");
|
||||
return -ENODEV;
|
||||
}
|
||||
platform_data = *config;
|
||||
|
||||
if (cpu_is_omap730() || cpu_is_omap16xx() || cpu_is_omap24xx())
|
||||
omap_otg_init(&platform_data);
|
||||
omap_otg_init(pdata);
|
||||
else if (cpu_is_omap15xx())
|
||||
omap_1510_usb_init(&platform_data);
|
||||
else {
|
||||
omap_1510_usb_init(pdata);
|
||||
else
|
||||
printk(KERN_ERR "USB: No init for your chip yet\n");
|
||||
return -ENODEV;
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
subsys_initcall(omap_usb_init);
|
||||
|
Reference in New Issue
Block a user