sunxi: musb: Move musb config and platdata to the sunxi-musb glue
Move the musb config and platdata to the sunxi-musb glue, which is where it really belongs. This is preparation patch for adding device-model support for the sunxi-musb-host code. Signed-off-by: Hans de Goede <hdegoede@redhat.com> Acked-by: Ian Campbell <ijc@hellion.org.uk>
This commit is contained in:
parent
71cbe0d681
commit
d42faf3198
@ -19,3 +19,10 @@ void sunxi_usb_phy_power_off(int index);
|
||||
int sunxi_usb_phy_vbus_detect(int index);
|
||||
int sunxi_usb_phy_id_detect(int index);
|
||||
void sunxi_usb_phy_enable_squelch_detect(int index, int enable);
|
||||
|
||||
/* Not really phy related, but we have to declare this somewhere ... */
|
||||
#if defined(CONFIG_MUSB_HOST) || defined(CONFIG_MUSB_GADGET)
|
||||
void sunxi_musb_board_init(void);
|
||||
#else
|
||||
#define sunxi_musb_board_init()
|
||||
#endif
|
||||
|
@ -31,7 +31,6 @@
|
||||
#include <asm/arch/usb_phy.h>
|
||||
#include <asm/gpio.h>
|
||||
#include <asm/io.h>
|
||||
#include <linux/usb/musb.h>
|
||||
#include <net.h>
|
||||
|
||||
#if defined CONFIG_VIDEO_LCD_PANEL_I2C && !(defined CONFIG_SPL_BUILD)
|
||||
@ -449,28 +448,6 @@ void sunxi_board_init(void)
|
||||
}
|
||||
#endif
|
||||
|
||||
#if defined(CONFIG_MUSB_HOST) || defined(CONFIG_MUSB_GADGET)
|
||||
extern const struct musb_platform_ops sunxi_musb_ops;
|
||||
|
||||
static struct musb_hdrc_config musb_config = {
|
||||
.multipoint = 1,
|
||||
.dyn_fifo = 1,
|
||||
.num_eps = 6,
|
||||
.ram_bits = 11,
|
||||
};
|
||||
|
||||
static struct musb_hdrc_platform_data musb_plat = {
|
||||
#if defined(CONFIG_MUSB_HOST)
|
||||
.mode = MUSB_HOST,
|
||||
#else
|
||||
.mode = MUSB_PERIPHERAL,
|
||||
#endif
|
||||
.config = &musb_config,
|
||||
.power = 250,
|
||||
.platform_ops = &sunxi_musb_ops,
|
||||
};
|
||||
#endif
|
||||
|
||||
#ifdef CONFIG_USB_GADGET
|
||||
int g_dnl_board_usb_cable_connected(void)
|
||||
{
|
||||
@ -533,9 +510,8 @@ int misc_init_r(void)
|
||||
if (ret)
|
||||
return ret;
|
||||
#endif
|
||||
#if defined(CONFIG_MUSB_HOST) || defined(CONFIG_MUSB_GADGET)
|
||||
musb_register(&musb_plat, NULL, (void *)SUNXI_USB0_BASE);
|
||||
#endif
|
||||
sunxi_musb_board_init();
|
||||
|
||||
return 0;
|
||||
}
|
||||
#endif
|
||||
|
@ -26,17 +26,9 @@
|
||||
#include <asm/arch/gpio.h>
|
||||
#include <asm/arch/usb_phy.h>
|
||||
#include <asm-generic/gpio.h>
|
||||
#include <linux/usb/musb.h>
|
||||
#include "linux-compat.h"
|
||||
#include "musb_core.h"
|
||||
#ifdef CONFIG_AXP152_POWER
|
||||
#include <axp152.h>
|
||||
#endif
|
||||
#ifdef CONFIG_AXP209_POWER
|
||||
#include <axp209.h>
|
||||
#endif
|
||||
#ifdef CONFIG_AXP221_POWER
|
||||
#include <axp221.h>
|
||||
#endif
|
||||
|
||||
/******************************************************************************
|
||||
******************************************************************************
|
||||
@ -277,8 +269,31 @@ static int sunxi_musb_init(struct musb *musb)
|
||||
return 0;
|
||||
}
|
||||
|
||||
const struct musb_platform_ops sunxi_musb_ops = {
|
||||
static const struct musb_platform_ops sunxi_musb_ops = {
|
||||
.init = sunxi_musb_init,
|
||||
.enable = sunxi_musb_enable,
|
||||
.disable = sunxi_musb_disable,
|
||||
};
|
||||
|
||||
static struct musb_hdrc_config musb_config = {
|
||||
.multipoint = 1,
|
||||
.dyn_fifo = 1,
|
||||
.num_eps = 6,
|
||||
.ram_bits = 11,
|
||||
};
|
||||
|
||||
static struct musb_hdrc_platform_data musb_plat = {
|
||||
#if defined(CONFIG_MUSB_HOST)
|
||||
.mode = MUSB_HOST,
|
||||
#else
|
||||
.mode = MUSB_PERIPHERAL,
|
||||
#endif
|
||||
.config = &musb_config,
|
||||
.power = 250,
|
||||
.platform_ops = &sunxi_musb_ops,
|
||||
};
|
||||
|
||||
void sunxi_musb_board_init(void)
|
||||
{
|
||||
musb_register(&musb_plat, NULL, (void *)SUNXI_USB0_BASE);
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user