diff options
| -rw-r--r-- | drivers/usb/renesas_usbhs/common.c | 24 | ||||
| -rw-r--r-- | drivers/usb/renesas_usbhs/common.h | 6 | ||||
| -rw-r--r-- | drivers/usb/renesas_usbhs/mod.c | 2 | 
3 files changed, 18 insertions, 14 deletions
diff --git a/drivers/usb/renesas_usbhs/common.c b/drivers/usb/renesas_usbhs/common.c index c3aef40fa9e..d2e2efaba65 100644 --- a/drivers/usb/renesas_usbhs/common.c +++ b/drivers/usb/renesas_usbhs/common.c @@ -61,8 +61,8 @@   */  #define usbhs_platform_call(priv, func, args...)\  	(!(priv) ? -ENODEV :			\ -	 !((priv)->pfunc->func) ? 0 :		\ -	 (priv)->pfunc->func(args)) +	 !((priv)->pfunc.func) ? 0 :		\ +	 (priv)->pfunc.func(args))  /*   *		common functions @@ -446,24 +446,28 @@ static int __devinit usbhs_probe(struct platform_device *pdev)  	/*  	 * care platform info  	 */ -	priv->pfunc	= &info->platform_callback; -	priv->dparam	= &info->driver_param; +	memcpy(&priv->pfunc, +	       &info->platform_callback, +	       sizeof(struct renesas_usbhs_platform_callback)); +	memcpy(&priv->dparam, +	       &info->driver_param, +	       sizeof(struct renesas_usbhs_driver_param));  	/* set driver callback functions for platform */  	dfunc			= &info->driver_callback;  	dfunc->notify_hotplug	= usbhsc_drvcllbck_notify_hotplug;  	/* set default param if platform doesn't have */ -	if (!priv->dparam->pipe_type) { -		priv->dparam->pipe_type = usbhsc_default_pipe_type; -		priv->dparam->pipe_size = ARRAY_SIZE(usbhsc_default_pipe_type); +	if (!priv->dparam.pipe_type) { +		priv->dparam.pipe_type = usbhsc_default_pipe_type; +		priv->dparam.pipe_size = ARRAY_SIZE(usbhsc_default_pipe_type);  	} -	if (!priv->dparam->pio_dma_border) -		priv->dparam->pio_dma_border = 64; /* 64byte */ +	if (!priv->dparam.pio_dma_border) +		priv->dparam.pio_dma_border = 64; /* 64byte */  	/* FIXME */  	/* runtime power control ? */ -	if (priv->pfunc->get_vbus) +	if (priv->pfunc.get_vbus)  		usbhsc_flags_set(priv, USBHSF_RUNTIME_PWCTRL);  	/* diff --git a/drivers/usb/renesas_usbhs/common.h b/drivers/usb/renesas_usbhs/common.h index dc9490d1f42..8729da5c3be 100644 --- a/drivers/usb/renesas_usbhs/common.h +++ b/drivers/usb/renesas_usbhs/common.h @@ -242,8 +242,8 @@ struct usbhs_priv {  	void __iomem *base;  	unsigned int irq; -	struct renesas_usbhs_platform_callback	*pfunc; -	struct renesas_usbhs_driver_param	*dparam; +	struct renesas_usbhs_platform_callback	pfunc; +	struct renesas_usbhs_driver_param	dparam;  	struct delayed_work notify_hotplug_work;  	struct platform_device *pdev; @@ -318,7 +318,7 @@ int usbhs_set_device_speed(struct usbhs_priv *priv, int devnum, u16 upphub,   * data   */  struct usbhs_priv *usbhs_pdev_to_priv(struct platform_device *pdev); -#define usbhs_get_dparam(priv, param)	(priv->dparam->param) +#define usbhs_get_dparam(priv, param)	(priv->dparam.param)  #define usbhs_priv_to_pdev(priv)	(priv->pdev)  #define usbhs_priv_to_dev(priv)		(&priv->pdev->dev)  #define usbhs_priv_to_lock(priv)	(&priv->lock) diff --git a/drivers/usb/renesas_usbhs/mod.c b/drivers/usb/renesas_usbhs/mod.c index 2d3b09d0d84..053f86d7000 100644 --- a/drivers/usb/renesas_usbhs/mod.c +++ b/drivers/usb/renesas_usbhs/mod.c @@ -58,7 +58,7 @@ void usbhs_mod_autonomy_mode(struct usbhs_priv *priv)  	struct usbhs_mod_info *info = usbhs_priv_to_modinfo(priv);  	info->irq_vbus		= usbhsm_autonomy_irq_vbus; -	priv->pfunc->get_vbus	= usbhsm_autonomy_get_vbus; +	priv->pfunc.get_vbus	= usbhsm_autonomy_get_vbus;  	usbhs_irq_callback_update(priv, NULL);  }  |