diff mbox

[U-Boot,v2,1/2] usb: dfu: add fullspeed support for DFU

Message ID 1410332101-26167-2-git-send-email-hs@denx.de
State Accepted
Delegated to: Łukasz Majewski
Headers show

Commit Message

Heiko Schocher Sept. 10, 2014, 6:55 a.m. UTC
DFU now can use also fullspeed.

Signed-off-by: Heiko Schocher <hs@denx.de>
Cc: Tom Rini <trini@ti.com>
Cc: Lukasz Majewski <l.majewski@samsung.com>
Cc: Marek Vasut <marex@denx.de>
Cc: Liu Bin <b-liu@ti.com>
Cc: Lukas Stockmann <lukas.stockmann@siemens.com>

---

- changes for v2:
  - get rid of config option CONFIG_DFU_FULLSPEED as Bin Liu
    suggested.
---
 drivers/usb/gadget/f_dfu.c | 3 +++
 1 file changed, 3 insertions(+)

Comments

Bin Liu Sept. 10, 2014, 1:49 p.m. UTC | #1
Heiko,

On 09/10/2014 01:55 AM, Heiko Schocher wrote:
> DFU now can use also fullspeed.
>
> Signed-off-by: Heiko Schocher <hs@denx.de>
> Cc: Tom Rini <trini@ti.com>
> Cc: Lukasz Majewski <l.majewski@samsung.com>
> Cc: Marek Vasut <marex@denx.de>
> Cc: Liu Bin <b-liu@ti.com>

My first name is Bin.

Other than that, feel free to add

Reviewed by: Bin Liu <b-liu@ti.com>

Regards,
-Bin.

> Cc: Lukas Stockmann <lukas.stockmann@siemens.com>
>
> ---
>
> - changes for v2:
>    - get rid of config option CONFIG_DFU_FULLSPEED as Bin Liu
>      suggested.
> ---
>   drivers/usb/gadget/f_dfu.c | 3 +++
>   1 file changed, 3 insertions(+)
>
> diff --git a/drivers/usb/gadget/f_dfu.c b/drivers/usb/gadget/f_dfu.c
> index 1145aab..dfa9f3b 100644
> --- a/drivers/usb/gadget/f_dfu.c
> +++ b/drivers/usb/gadget/f_dfu.c
> @@ -238,6 +238,7 @@ static inline void to_dfu_mode(struct f_dfu *f_dfu)
>   {
>   	f_dfu->usb_function.strings = dfu_strings;
>   	f_dfu->usb_function.hs_descriptors = f_dfu->function;
> +	f_dfu->usb_function.descriptors = f_dfu->function;
>   	f_dfu->dfu_state = DFU_STATE_dfuIDLE;
>   }
>
> @@ -245,6 +246,7 @@ static inline void to_runtime_mode(struct f_dfu *f_dfu)
>   {
>   	f_dfu->usb_function.strings = NULL;
>   	f_dfu->usb_function.hs_descriptors = dfu_runtime_descs;
> +	f_dfu->usb_function.descriptors = dfu_runtime_descs;
>   }
>
>   static int handle_upload(struct usb_request *req, u16 len)
> @@ -809,6 +811,7 @@ static int dfu_bind_config(struct usb_configuration *c)
>   		return -ENOMEM;
>   	f_dfu->usb_function.name = "dfu";
>   	f_dfu->usb_function.hs_descriptors = dfu_runtime_descs;
> +	f_dfu->usb_function.descriptors = dfu_runtime_descs;
>   	f_dfu->usb_function.bind = dfu_bind;
>   	f_dfu->usb_function.unbind = dfu_unbind;
>   	f_dfu->usb_function.set_alt = dfu_set_alt;
>
Łukasz Majewski Sept. 11, 2014, 12:16 p.m. UTC | #2
Hi Heiko,

> DFU now can use also fullspeed.
> 
> Signed-off-by: Heiko Schocher <hs@denx.de>
> Cc: Tom Rini <trini@ti.com>
> Cc: Lukasz Majewski <l.majewski@samsung.com>
> Cc: Marek Vasut <marex@denx.de>
> Cc: Liu Bin <b-liu@ti.com>
> Cc: Lukas Stockmann <lukas.stockmann@siemens.com>
> 
> ---
> 
> - changes for v2:
>   - get rid of config option CONFIG_DFU_FULLSPEED as Bin Liu
>     suggested.
> ---
>  drivers/usb/gadget/f_dfu.c | 3 +++
>  1 file changed, 3 insertions(+)
> 
> diff --git a/drivers/usb/gadget/f_dfu.c b/drivers/usb/gadget/f_dfu.c
> index 1145aab..dfa9f3b 100644
> --- a/drivers/usb/gadget/f_dfu.c
> +++ b/drivers/usb/gadget/f_dfu.c
> @@ -238,6 +238,7 @@ static inline void to_dfu_mode(struct f_dfu
> *f_dfu) {
>  	f_dfu->usb_function.strings = dfu_strings;
>  	f_dfu->usb_function.hs_descriptors = f_dfu->function;
> +	f_dfu->usb_function.descriptors = f_dfu->function;
>  	f_dfu->dfu_state = DFU_STATE_dfuIDLE;
>  }
>  
> @@ -245,6 +246,7 @@ static inline void to_runtime_mode(struct f_dfu
> *f_dfu) {
>  	f_dfu->usb_function.strings = NULL;
>  	f_dfu->usb_function.hs_descriptors = dfu_runtime_descs;
> +	f_dfu->usb_function.descriptors = dfu_runtime_descs;
>  }
>  
>  static int handle_upload(struct usb_request *req, u16 len)
> @@ -809,6 +811,7 @@ static int dfu_bind_config(struct
> usb_configuration *c) return -ENOMEM;
>  	f_dfu->usb_function.name = "dfu";
>  	f_dfu->usb_function.hs_descriptors = dfu_runtime_descs;
> +	f_dfu->usb_function.descriptors = dfu_runtime_descs;
>  	f_dfu->usb_function.bind = dfu_bind;
>  	f_dfu->usb_function.unbind = dfu_unbind;
>  	f_dfu->usb_function.set_alt = dfu_set_alt;

Test HW: Exynos 4412 - Trats2

This patch seems to not introduce any regressions, so

Tested-by: Lukasz Majewski <l.majewski@samsung.com>
Łukasz Majewski Sept. 15, 2014, 10:26 a.m. UTC | #3
Hi Heiko,

> DFU now can use also fullspeed.

Applied to u-boot-dfu
diff mbox

Patch

diff --git a/drivers/usb/gadget/f_dfu.c b/drivers/usb/gadget/f_dfu.c
index 1145aab..dfa9f3b 100644
--- a/drivers/usb/gadget/f_dfu.c
+++ b/drivers/usb/gadget/f_dfu.c
@@ -238,6 +238,7 @@  static inline void to_dfu_mode(struct f_dfu *f_dfu)
 {
 	f_dfu->usb_function.strings = dfu_strings;
 	f_dfu->usb_function.hs_descriptors = f_dfu->function;
+	f_dfu->usb_function.descriptors = f_dfu->function;
 	f_dfu->dfu_state = DFU_STATE_dfuIDLE;
 }
 
@@ -245,6 +246,7 @@  static inline void to_runtime_mode(struct f_dfu *f_dfu)
 {
 	f_dfu->usb_function.strings = NULL;
 	f_dfu->usb_function.hs_descriptors = dfu_runtime_descs;
+	f_dfu->usb_function.descriptors = dfu_runtime_descs;
 }
 
 static int handle_upload(struct usb_request *req, u16 len)
@@ -809,6 +811,7 @@  static int dfu_bind_config(struct usb_configuration *c)
 		return -ENOMEM;
 	f_dfu->usb_function.name = "dfu";
 	f_dfu->usb_function.hs_descriptors = dfu_runtime_descs;
+	f_dfu->usb_function.descriptors = dfu_runtime_descs;
 	f_dfu->usb_function.bind = dfu_bind;
 	f_dfu->usb_function.unbind = dfu_unbind;
 	f_dfu->usb_function.set_alt = dfu_set_alt;