- 19 10月, 2011 1 次提交
-
-
由 Sarah Sharp 提交于
To add USB 3.0 link power management (LPM), we need to know what the U1 and U2 exit latencies are for the xHCI host controller. External USB 3.0 hubs report these values through the SuperSpeed Capabilities descriptor in the BOS descriptor. Make the USB 3.0 roothub for the xHCI host behave like an external hub and return the BOS descriptors. The U1 and U2 exit latencies will vary across each host controller, so we need to dynamically fill those values in by reading the exit latencies out of the xHC registers. Make the roothub code in the USB core handle hub_control() returning the length of the data copied. Signed-off-by: NSarah Sharp <sarah.a.sharp@linux.intel.com> Acked-by: NAlan Stern <stern@rowland.harvard.edu> Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
-
- 14 10月, 2011 39 次提交
-
-
由 Klaus Schwarzkopf 提交于
This driver provides two functions in one configuration: a mass storage, and a ACM (serial port) link. Heavily based on multi.c and cdc2.c Signed-off-by: NKlaus Schwarzkopf <schwarzkopf@sensortherm.de> Signed-off-by: NFelipe Balbi <balbi@ti.com>
-
由 Felipe Balbi 提交于
| drivers/usb/gadget/mv_udc_core.c: In function 'handle_setup_packet': | drivers/usb/gadget/mv_udc_core.c:1556:6: warning: 'status' may be \ used uninitialized in this function Signed-off-by: NFelipe Balbi <balbi@ti.com>
-
由 Neil Zhang 提交于
This patch is going to support clock gating when vbus detection is posible. Clock and phy will be on only when usb gadget is used(vbus valid). Signed-off-by: NNeil Zhang <zhangwm@marvell.com> Signed-off-by: NFelipe Balbi <balbi@ti.com>
-
由 Neil Zhang 提交于
Add test mode support for marvell udc driver. Signed-off-by: NNeil Zhang <zhangwm@marvell.com> Signed-off-by: NFelipe Balbi <balbi@ti.com>
-
由 Neil Zhang 提交于
use DMA API for status_req's dma address, it is needed by dtd. Signed-off-by: NNeil Zhang <zhangwm@marvell.com> Signed-off-by: NFelipe Balbi <balbi@ti.com>
-
由 Neil Zhang 提交于
The controller will prime failure sometimes when do the iperf test. Add delay to wait controller release dtd dma before we free it. Then the issue is gone. Signed-off-by: NNeil Zhang <zhangwm@marvell.com> Signed-off-by: NFelipe Balbi <balbi@ti.com>
-
由 Neil Zhang 提交于
put the device in idle when shutdown. Signed-off-by: NNeil Zhang <zhangwm@marvell.com> Signed-off-by: NFelipe Balbi <balbi@ti.com>
-
由 Neil Zhang 提交于
This patch is going to correct the ep0 state, and the unexpected ep0 package warning can be removed. Signed-off-by: NNeil Zhang <zhangwm@marvell.com> Signed-off-by: NFelipe Balbi <balbi@ti.com>
-
由 Neil Zhang 提交于
1: Add parameter check. 2: For controller endpoint, we need to flush in and out directions. 3: delete redundant code, make it more readable. Signed-off-by: NNeil Zhang <zhangwm@marvell.com> Signed-off-by: NFelipe Balbi <balbi@ti.com>
-
由 Neil Zhang 提交于
According to the comment right above the code, we should use USB_ENDPOINT_XFER_BULK instead. Signed-off-by: NNeil Zhang <zhangwm@marvell.com> Signed-off-by: NFelipe Balbi <balbi@ti.com>
-
由 Neil Zhang 提交于
The ep enable / disable functions can be called from interrupt context, and they are not race safe on SMP systems. The critical data can be modified in more than one routing. Make them race safe by using IRQ-safe spinlock functions. Signed-off-by: NNeil Zhang <zhangwm@marvell.com> Signed-off-by: NFelipe Balbi <balbi@ti.com>
-
由 Neil Zhang 提交于
For the code doesn't restrict controller ep must be ep0, so we will go through all the eps and check if there is a setup package received. And also we just need to acknowledge the corresponding bit in ENDPTSETUPSTAT register. Signed-off-by: NNeil Zhang <zhangwm@marvell.com> Signed-off-by: NFelipe Balbi <balbi@ti.com>
-
由 Neil Zhang 提交于
Set next dtd ptr to EP_QUEUE_HEAD_NEXT_TERMINATE for dqh when init ep0. It means the dQH is empty. Signed-off-by: NNeil Zhang <zhangwm@marvell.com> Signed-off-by: NFelipe Balbi <balbi@ti.com>
-
由 Neil Zhang 提交于
According to ChipIdea datasheet, there is no toggle flag for ep0. Signed-off-by: NNeil Zhang <zhangwm@marvell.com> Signed-off-by: NFelipe Balbi <balbi@ti.com>
-
由 Neil Zhang 提交于
The max size of data payload is in bit0 - bit10, so we need use 0x7ff as the bitmask to fetch from usb_endpoint_descriptor.wMaxPacketSize. Signed-off-by: NNeil Zhang <zhangwm@marvell.com> Signed-off-by: NFelipe Balbi <balbi@ti.com>
-
由 Neil Zhang 提交于
Some platforms will use usb to download images, the controller may not be stopped correctly when start kernel. In some cases, it may have some pending interrupts, and they will be triggered immediately when we finish requesting irq in function probe. But we haven't finished the device initialization at this time. So let's stop udc here to avoid this case occurred. Signed-off-by: NNeil Zhang <zhangwm@marvell.com> Signed-off-by: NFelipe Balbi <balbi@ti.com>
-
由 Neil Zhang 提交于
Tag the probe function as __devinit. Tag the remove function as __devexit. Signed-off-by: NNeil Zhang <zhangwm@marvell.com> Signed-off-by: NFelipe Balbi <balbi@ti.com>
-
由 Neil Zhang 提交于
This patch do the following things: 1. Add header and Copyright for marvell usb driver. 2. Add mv_usb.h in include/linux/platform_data, make the driver fits all the marvell platform using the same ChipIdea usb ip. 3. Some SOC may has mutiple clock sources, so let me define it in mv_usb_platform_data and give two helper functions named udc_clock_enable/udc_clock_disable to deal with the clocks. 4. Different SOCs will have some difference in PHY initialization, so we will remove file mv_udc_phy.c and add two funtions in mv_usb_platform_data, let the platform relative driver to realize it. 5. Rewrite probe function according to the modification list above. Find it will kernel panic when probe failed. The root cause is as follows: When probe failed, the error handle may call device_unregister() which in return will call gadget_release.In current code, gadget_release have two issues: 1: the_controller is a NULL pointer. 2: if we free udc here, then the following code in probe will access NULL pointer. Signed-off-by: NNeil Zhang <zhangwm@marvell.com> Signed-off-by: NFelipe Balbi <balbi@ti.com>
-
由 Felipe Balbi 提交于
| drivers/usb/renesas_usbhs/fifo.c: In function ‘usbhsf_dma_prepare_push’: | drivers/usb/renesas_usbhs/fifo.c:823:7: warning: cast from pointer \ to integer of different size [-Wpointer-to-int-cast] | drivers/usb/renesas_usbhs/fifo.c: In function ‘usbhsf_dma_try_pop’: | drivers/usb/renesas_usbhs/fifo.c:900:7: warning: cast from pointer \ to integer of different size [-Wpointer-to-int-cast] Signed-off-by: NFelipe Balbi <balbi@ti.com>
-
由 Felipe Balbi 提交于
that driver can compile cleanly on x86 without any issues. Signed-off-by: NFelipe Balbi <balbi@ti.com>
-
由 Kuninori Morimoto 提交于
In current renesas-usbhs, there was inconsistency about the style of kernel module or built-in. This patch solve it. [ balbi@ti.com : fix compile issue when building modules ] Signed-off-by: NKuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: NFelipe Balbi <balbi@ti.com>
-
由 Kuninori Morimoto 提交于
renesas_usbhs has default callback functions and settings. And it tried overwrite to platform private data if platform doesn't have them. So, if renesas_usbhs was compiled as module, it will be hung-up on 2nd insmod. This patch fixup it. Special thanks to Bastian Reported-by: NBastian Hecht <hechtb@googlemail.com> Signed-off-by: NKuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: NFelipe Balbi <balbi@ti.com>
-
由 Kuninori Morimoto 提交于
This is mod_host prototype support for renesas_usbhs driver. It doesn't support USB-Hub, and USB-DMAC for now. Signed-off-by: NKuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: NFelipe Balbi <balbi@ti.com>
-
由 Kuninori Morimoto 提交于
CCPL setting is needed on only mod_gadget. Signed-off-by: NKuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: NFelipe Balbi <balbi@ti.com>
-
由 Kuninori Morimoto 提交于
mod_host needs data/status stage handler Signed-off-by: NKuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: NFelipe Balbi <balbi@ti.com>
-
由 Kuninori Morimoto 提交于
mod_host use INTSTS1 interrupt Signed-off-by: NKuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: NFelipe Balbi <balbi@ti.com>
-
由 Kuninori Morimoto 提交于
mod_host needs device speed setup function Signed-off-by: NKuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: NFelipe Balbi <balbi@ti.com>
-
由 Kuninori Morimoto 提交于
It is enabled to set SOF packet output bit when USBRST bit was set. And USBRST bit should be set 0 when SOF packet was output. Signed-off-by: NKuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: NFelipe Balbi <balbi@ti.com>
-
由 Kuninori Morimoto 提交于
some renesas_usbhs device is supporting OTG external device interface. In that device, it is necessary to control PWEN/EXTLP on DVSTCTR. This patch support it. But renesas_usbhs driver doesn't have OTG support for now. Signed-off-by: NKuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: NFelipe Balbi <balbi@ti.com>
-
由 Kuninori Morimoto 提交于
When data read interrupt happened, the pipe is BUF which means "enable". then, next un-necessary interrupt/token might be issued again when all data were popped from fifo. It will cause un-understandable bug. This patch decides pipe disable on top of read interrupt. Signed-off-by: NKuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: NFelipe Balbi <balbi@ti.com>
-
由 Kuninori Morimoto 提交于
renesas_usbhs can manually set DATA0/DATA1. This patch is prepare for mod_host support Signed-off-by: NKuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: NFelipe Balbi <balbi@ti.com>
-
由 Kuninori Morimoto 提交于
Automatically packet start by usbhs_pkt_push() was useful. But the pushed packet will be called twice if new packet was pushed on usbhs_pkt :: done callback. (1st is called by usbhs_pkt_push(), 2nd is called by usbhsf_pkt_handler()) This patch disables automatic packet start, and clarified packet start timing. Signed-off-by: NKuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: NFelipe Balbi <balbi@ti.com>
-
由 Kuninori Morimoto 提交于
transfer done function was registered in struct struct usbhs_pipe_info. It was good for mod_gadget, but not good for mod_host. This function move it to struct usbhs_pkt. Signed-off-by: NKuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: NFelipe Balbi <balbi@ti.com>
-
由 Kuninori Morimoto 提交于
pipe name is usefull function for mod_xxx Signed-off-by: NKuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: NFelipe Balbi <balbi@ti.com>
-
由 Kuninori Morimoto 提交于
device select method will be used on mod_host Signed-off-by: NKuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: NFelipe Balbi <balbi@ti.com>
-
由 Kuninori Morimoto 提交于
There was no method to get struct usbhs_priv when packet transfer done function was called. This patch allow that callback function receive it. Signed-off-by: NKuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: NFelipe Balbi <balbi@ti.com>
-
由 Kuninori Morimoto 提交于
renesas_usbhs device needs special bit settings if it was mod_host and dcp pipe. This patch support it. Signed-off-by: NKuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: NFelipe Balbi <balbi@ti.com>
-
由 Kuninori Morimoto 提交于
it was possible to get usbhs_mod from usbhs_priv. this patch remove unneeded parameter. Signed-off-by: NKuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: NFelipe Balbi <balbi@ti.com>
-
由 Kuninori Morimoto 提交于
usbhs_usbreq_get/set_val() functions were in pipe.c file, but it is irrelevant to pipe. this patch move it to common.c Signed-off-by: NKuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: NFelipe Balbi <balbi@ti.com>
-