summaryrefslogtreecommitdiff
path: root/src/host
diff options
context:
space:
mode:
authorhathach <[email protected]>2018-12-08 20:56:56 +0700
committerhathach <[email protected]>2018-12-08 20:56:56 +0700
commitf6f0910778be2be2cfa25ef4e00ec2cf40c05fe9 (patch)
tree00cfcfc7e26af920081f673c4b9a39744e6bbfa1 /src/host
parentd3ac4c14a3204c585bdeba8e8f27c8257d1ac826 (diff)
hub clean up
Diffstat (limited to 'src/host')
-rw-r--r--src/host/hub.c16
-rw-r--r--src/host/usbh.c14
-rw-r--r--src/host/usbh_hub.h64
3 files changed, 13 insertions, 81 deletions
diff --git a/src/host/hub.c b/src/host/hub.c
index 04618d448..bc1434471 100644
--- a/src/host/hub.c
+++ b/src/host/hub.c
@@ -46,7 +46,6 @@
// INCLUDE
//--------------------------------------------------------------------+
#include "hub.h"
-#include "usbh_hub.h"
//--------------------------------------------------------------------+
// MACRO CONSTANT TYPEDEF
@@ -211,6 +210,7 @@ bool hub_open_subtask(uint8_t dev_addr, tusb_desc_interface_t const *p_interface
}
// is the response of interrupt endpoint polling
+#include "usbh_hcd.h" // FIXME remove
void hub_isr(pipe_handle_t pipe_hdl, xfer_result_t event, uint32_t xferred_bytes)
{
(void) xferred_bytes; // TODO can be more than 1 for hub with lots of ports
@@ -220,10 +220,20 @@ void hub_isr(pipe_handle_t pipe_hdl, xfer_result_t event, uint32_t xferred_bytes
if ( event == XFER_RESULT_SUCCESS )
{
for (uint8_t port=1; port <= p_hub->port_number; port++)
- { // TODO HUB ignore bit0 hub_status_change
+ {
+ // TODO HUB ignore bit0 hub_status_change
if ( BIT_TEST_(p_hub->status_change, port) )
{
- usbh_hub_port_plugged_isr(pipe_hdl.dev_addr, port);
+ hcd_event_t event =
+ {
+ .rhport = _usbh_devices[pipe_hdl.dev_addr].core_id,
+ .event_id = HCD_EVENT_DEVICE_ATTACH
+ };
+
+ event.attach.hub_addr = pipe_hdl.dev_addr;
+ event.attach.hub_port = port;
+
+ hcd_event_handler(&event, true);
break; // handle one port at a time, next port if any will be handled in the next cycle
}
}
diff --git a/src/host/usbh.c b/src/host/usbh.c
index c83424c9f..764203dbf 100644
--- a/src/host/usbh.c
+++ b/src/host/usbh.c
@@ -291,20 +291,6 @@ void usbh_xfer_isr(pipe_handle_t pipe_hdl, uint8_t class_code, xfer_result_t eve
}
}
-void usbh_hub_port_plugged_isr(uint8_t hub_addr, uint8_t hub_port)
-{
- hcd_event_t event =
- {
- .rhport = _usbh_devices[hub_addr].core_id,
- .event_id = HCD_EVENT_DEVICE_ATTACH
- };
-
- event.attach.hub_addr = hub_addr;
- event.attach.hub_port = hub_port;
-
- hcd_event_handler(&event, true);
-}
-
void hcd_event_device_attach(uint8_t rhport)
{
hcd_event_t event =
diff --git a/src/host/usbh_hub.h b/src/host/usbh_hub.h
deleted file mode 100644
index 48a81bcd2..000000000
--- a/src/host/usbh_hub.h
+++ /dev/null
@@ -1,64 +0,0 @@
-/**************************************************************************/
-/*!
- @file usbh_hub.h
- @author hathach (tinyusb.org)
-
- @section LICENSE
-
- Software License Agreement (BSD License)
-
- Copyright (c) 2013, hathach (tinyusb.org)
- All rights reserved.
-
- Redistribution and use in source and binary forms, with or without
- modification, are permitted provided that the following conditions are met:
- 1. Redistributions of source code must retain the above copyright
- notice, this list of conditions and the following disclaimer.
- 2. Redistributions in binary form must reproduce the above copyright
- notice, this list of conditions and the following disclaimer in the
- documentation and/or other materials provided with the distribution.
- 3. Neither the name of the copyright holders nor the
- names of its contributors may be used to endorse or promote products
- derived from this software without specific prior written permission.
-
- THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS ''AS IS'' AND ANY
- EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
- WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
- DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE FOR ANY
- DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
- (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
- LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
- ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
- SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
- This file is part of the tinyusb stack.
-*/
-/**************************************************************************/
-
-/** \ingroup group_usbh
- * @{ */
-
-#ifndef _TUSB_USBH_HUB_H_
-#define _TUSB_USBH_HUB_H_
-
-//--------------------------------------------------------------------+
-// INCLUDE
-//--------------------------------------------------------------------+
-#include "common/tusb_common.h"
-
-#ifdef __cplusplus
- extern "C" {
-#endif
-
-
-void usbh_hub_port_plugged_isr(uint8_t hub_addr, uint8_t hub_port);
-
-
-#ifdef __cplusplus
- }
-#endif
-
-#endif /* _TUSB_USBH_HUB_H_ */
-
-/** @} */