diff options
author | Stephen Warren <swarren@wwwdotorg.org> | 2015-03-08 05:48:54 (GMT) |
---|---|---|
committer | Marek Vasut <marex@denx.de> | 2015-04-14 03:47:58 (GMT) |
commit | 282685e07e4f5dccc70c6bfd3ce3603861e94aaa (patch) | |
tree | 3d6cba29126235b139acf9276423987610c64115 | |
parent | ee837554011a4f0db6f246ee67f7c1d1161694e9 (diff) | |
download | u-boot-282685e07e4f5dccc70c6bfd3ce3603861e94aaa.tar.xz |
usb: dwc2: remove control_data_toggle[]
The control data toggle resets to DATA1 at the start of the data phase
of every setup transaction. We don't need a global variable to store
the value; we can just store it on the stack.
Signed-off-by: Stephen Warren <swarren@wwwdotorg.org>
-rw-r--r-- | drivers/usb/host/dwc2.c | 12 |
1 files changed, 4 insertions, 8 deletions
diff --git a/drivers/usb/host/dwc2.c b/drivers/usb/host/dwc2.c index 189f654..e8a7e71 100644 --- a/drivers/usb/host/dwc2.c +++ b/drivers/usb/host/dwc2.c @@ -27,7 +27,6 @@ DEFINE_ALIGN_BUFFER(uint8_t, status_buffer, DWC2_STATUS_BUF_SIZE, 8); #define MAX_DEVICE 16 #define MAX_ENDPOINT 16 static int bulk_data_toggle[MAX_DEVICE][MAX_ENDPOINT]; -static int control_data_toggle[MAX_DEVICE][MAX_ENDPOINT]; static int root_hub_devnum; @@ -853,7 +852,6 @@ int submit_control_msg(struct usb_device *dev, unsigned long pipe, void *buffer, int len, struct devrequest *setup) { int devnum = usb_pipedevice(pipe); - int ep = usb_pipeendpoint(pipe); int pid, ret, act_len; /* For CONTROL endpoint pid should start with DATA1 */ int status_direction; @@ -870,9 +868,9 @@ int submit_control_msg(struct usb_device *dev, unsigned long pipe, void *buffer, return ret; if (buffer) { - control_data_toggle[devnum][ep] = DWC2_HC_PID_DATA1; - ret = chunk_msg(dev, pipe, &control_data_toggle[devnum][ep], - usb_pipein(pipe), buffer, len); + pid = DWC2_HC_PID_DATA1; + ret = chunk_msg(dev, pipe, &pid, usb_pipein(pipe), buffer, + len); if (ret) return ret; act_len = dev->act_len; @@ -933,10 +931,8 @@ int usb_lowlevel_init(int index, enum usb_init_type init, void **controller) DWC2_HPRT0_PRTRST); for (i = 0; i < MAX_DEVICE; i++) { - for (j = 0; j < MAX_ENDPOINT; j++) { - control_data_toggle[i][j] = DWC2_HC_PID_DATA1; + for (j = 0; j < MAX_ENDPOINT; j++) bulk_data_toggle[i][j] = DWC2_HC_PID_DATA0; - } } return 0; |