Skip to content
GitLab
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in
Toggle navigation
Menu
Open sidebar
TASTE
uPython-mirror
Commits
1b50affc
Commit
1b50affc
authored
Oct 22, 2013
by
Damien
Browse files
Remove unnecessary USB files from stm.
parent
d276f635
Changes
6
Expand all
Hide whitespace changes
Inline
Side-by-side
stm/lib/usb_hcd.c
deleted
100644 → 0
View file @
d276f635
/**
******************************************************************************
* @file usb_hcd.c
* @author MCD Application Team
* @version V2.1.0
* @date 19-March-2012
* @brief Host Interface Layer
******************************************************************************
* @attention
*
* <h2><center>© COPYRIGHT 2012 STMicroelectronics</center></h2>
*
* Licensed under MCD-ST Liberty SW License Agreement V2, (the "License");
* You may not use this file except in compliance with the License.
* You may obtain a copy of the License at:
*
* http://www.st.com/software_license_agreement_liberty_v2
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*
******************************************************************************
*/
/* Includes ------------------------------------------------------------------*/
#include
"usb_core.h"
#include
"usb_hcd.h"
#include
"usb_conf.h"
#include
"usb_bsp.h"
/** @addtogroup USB_OTG_DRIVER
* @{
*/
/** @defgroup USB_HCD
* @brief This file is the interface between EFSL ans Host mass-storage class
* @{
*/
/** @defgroup USB_HCD_Private_Defines
* @{
*/
/**
* @}
*/
/** @defgroup USB_HCD_Private_TypesDefinitions
* @{
*/
/**
* @}
*/
/** @defgroup USB_HCD_Private_Macros
* @{
*/
/**
* @}
*/
/** @defgroup USB_HCD_Private_Variables
* @{
*/
/**
* @}
*/
/** @defgroup USB_HCD_Private_FunctionPrototypes
* @{
*/
/**
* @}
*/
/** @defgroup USB_HCD_Private_Functions
* @{
*/
/**
* @brief HCD_Init
* Initialize the HOST portion of the driver.
* @param pdev: Selected device
* @param base_address: OTG base address
* @retval Status
*/
uint32_t
HCD_Init
(
USB_OTG_CORE_HANDLE
*
pdev
,
USB_OTG_CORE_ID_TypeDef
coreID
)
{
uint8_t
i
=
0
;
pdev
->
host
.
ConnSts
=
0
;
for
(
i
=
0
;
i
<
USB_OTG_MAX_TX_FIFOS
;
i
++
)
{
pdev
->
host
.
ErrCnt
[
i
]
=
0
;
pdev
->
host
.
XferCnt
[
i
]
=
0
;
pdev
->
host
.
HC_Status
[
i
]
=
HC_IDLE
;
}
pdev
->
host
.
hc
[
0
].
max_packet
=
8
;
USB_OTG_SelectCore
(
pdev
,
coreID
);
#ifndef DUAL_ROLE_MODE_ENABLED
USB_OTG_DisableGlobalInt
(
pdev
);
USB_OTG_CoreInit
(
pdev
);
/* Force Host Mode*/
USB_OTG_SetCurrentMode
(
pdev
,
HOST_MODE
);
USB_OTG_CoreInitHost
(
pdev
);
USB_OTG_EnableGlobalInt
(
pdev
);
#endif
return
0
;
}
/**
* @brief HCD_GetCurrentSpeed
* Get Current device Speed.
* @param pdev : Selected device
* @retval Status
*/
uint32_t
HCD_GetCurrentSpeed
(
USB_OTG_CORE_HANDLE
*
pdev
)
{
USB_OTG_HPRT0_TypeDef
HPRT0
;
HPRT0
.
d32
=
USB_OTG_READ_REG32
(
pdev
->
regs
.
HPRT0
);
return
HPRT0
.
b
.
prtspd
;
}
/**
* @brief HCD_ResetPort
* Issues the reset command to device
* @param pdev : Selected device
* @retval Status
*/
uint32_t
HCD_ResetPort
(
USB_OTG_CORE_HANDLE
*
pdev
)
{
/*
Before starting to drive a USB reset, the application waits for the OTG
interrupt triggered by the debounce done bit (DBCDNE bit in OTG_FS_GOTGINT),
which indicates that the bus is stable again after the electrical debounce
caused by the attachment of a pull-up resistor on DP (FS) or DM (LS).
*/
USB_OTG_ResetPort
(
pdev
);
return
0
;
}
/**
* @brief HCD_IsDeviceConnected
* Check if the device is connected.
* @param pdev : Selected device
* @retval Device connection status. 1 -> connected and 0 -> disconnected
*
*/
uint32_t
HCD_IsDeviceConnected
(
USB_OTG_CORE_HANDLE
*
pdev
)
{
return
(
pdev
->
host
.
ConnSts
);
}
/**
* @brief HCD_GetCurrentFrame
* This function returns the frame number for sof packet
* @param pdev : Selected device
* @retval Frame number
*
*/
uint32_t
HCD_GetCurrentFrame
(
USB_OTG_CORE_HANDLE
*
pdev
)
{
return
(
USB_OTG_READ_REG32
(
&
pdev
->
regs
.
HREGS
->
HFNUM
)
&
0xFFFF
)
;
}
/**
* @brief HCD_GetURB_State
* This function returns the last URBstate
* @param pdev: Selected device
* @retval URB_STATE
*
*/
URB_STATE
HCD_GetURB_State
(
USB_OTG_CORE_HANDLE
*
pdev
,
uint8_t
ch_num
)
{
return
pdev
->
host
.
URB_State
[
ch_num
]
;
}
/**
* @brief HCD_GetXferCnt
* This function returns the last URBstate
* @param pdev: Selected device
* @retval No. of data bytes transferred
*
*/
uint32_t
HCD_GetXferCnt
(
USB_OTG_CORE_HANDLE
*
pdev
,
uint8_t
ch_num
)
{
return
pdev
->
host
.
XferCnt
[
ch_num
]
;
}
/**
* @brief HCD_GetHCState
* This function returns the HC Status
* @param pdev: Selected device
* @retval HC_STATUS
*
*/
HC_STATUS
HCD_GetHCState
(
USB_OTG_CORE_HANDLE
*
pdev
,
uint8_t
ch_num
)
{
return
pdev
->
host
.
HC_Status
[
ch_num
]
;
}
/**
* @brief HCD_HC_Init
* This function prepare a HC and start a transfer
* @param pdev: Selected device
* @param hc_num: Channel number
* @retval status
*/
uint32_t
HCD_HC_Init
(
USB_OTG_CORE_HANDLE
*
pdev
,
uint8_t
hc_num
)
{
return
USB_OTG_HC_Init
(
pdev
,
hc_num
);
}
/**
* @brief HCD_SubmitRequest
* This function prepare a HC and start a transfer
* @param pdev: Selected device
* @param hc_num: Channel number
* @retval status
*/
uint32_t
HCD_SubmitRequest
(
USB_OTG_CORE_HANDLE
*
pdev
,
uint8_t
hc_num
)
{
pdev
->
host
.
URB_State
[
hc_num
]
=
URB_IDLE
;
pdev
->
host
.
hc
[
hc_num
].
xfer_count
=
0
;
return
USB_OTG_HC_StartXfer
(
pdev
,
hc_num
);
}
/**
* @}
*/
/**
* @}
*/
/**
* @}
*/
/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
stm/lib/usb_hcd.h
deleted
100644 → 0
View file @
d276f635
/**
******************************************************************************
* @file usb_hcd.h
* @author MCD Application Team
* @version V2.1.0
* @date 19-March-2012
* @brief Host layer Header file
******************************************************************************
* @attention
*
* <h2><center>© COPYRIGHT 2012 STMicroelectronics</center></h2>
*
* Licensed under MCD-ST Liberty SW License Agreement V2, (the "License");
* You may not use this file except in compliance with the License.
* You may obtain a copy of the License at:
*
* http://www.st.com/software_license_agreement_liberty_v2
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*
******************************************************************************
*/
/* Define to prevent recursive inclusion -------------------------------------*/
#ifndef __USB_HCD_H__
#define __USB_HCD_H__
/* Includes ------------------------------------------------------------------*/
#include
"usb_regs.h"
#include
"usb_core.h"
/** @addtogroup USB_OTG_DRIVER
* @{
*/
/** @defgroup USB_HCD
* @brief This file is the
* @{
*/
/** @defgroup USB_HCD_Exported_Defines
* @{
*/
/**
* @}
*/
/** @defgroup USB_HCD_Exported_Types
* @{
*/
/**
* @}
*/
/** @defgroup USB_HCD_Exported_Macros
* @{
*/
/**
* @}
*/
/** @defgroup USB_HCD_Exported_Variables
* @{
*/
/**
* @}
*/
/** @defgroup USB_HCD_Exported_FunctionsPrototype
* @{
*/
uint32_t
HCD_Init
(
USB_OTG_CORE_HANDLE
*
pdev
,
USB_OTG_CORE_ID_TypeDef
coreID
);
uint32_t
HCD_HC_Init
(
USB_OTG_CORE_HANDLE
*
pdev
,
uint8_t
hc_num
);
uint32_t
HCD_SubmitRequest
(
USB_OTG_CORE_HANDLE
*
pdev
,
uint8_t
hc_num
)
;
uint32_t
HCD_GetCurrentSpeed
(
USB_OTG_CORE_HANDLE
*
pdev
);
uint32_t
HCD_ResetPort
(
USB_OTG_CORE_HANDLE
*
pdev
);
uint32_t
HCD_IsDeviceConnected
(
USB_OTG_CORE_HANDLE
*
pdev
);
uint32_t
HCD_GetCurrentFrame
(
USB_OTG_CORE_HANDLE
*
pdev
)
;
URB_STATE
HCD_GetURB_State
(
USB_OTG_CORE_HANDLE
*
pdev
,
uint8_t
ch_num
);
uint32_t
HCD_GetXferCnt
(
USB_OTG_CORE_HANDLE
*
pdev
,
uint8_t
ch_num
);
HC_STATUS
HCD_GetHCState
(
USB_OTG_CORE_HANDLE
*
pdev
,
uint8_t
ch_num
)
;
/**
* @}
*/
#endif //__USB_HCD_H__
/**
* @}
*/
/**
* @}
*/
/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
stm/lib/usb_hcd_int.c
deleted
100644 → 0
View file @
d276f635
This diff is collapsed.
Click to expand it.
stm/lib/usb_hcd_int.h
deleted
100644 → 0
View file @
d276f635
/**
******************************************************************************
* @file usb_hcd_int.h
* @author MCD Application Team
* @version V2.1.0
* @date 19-March-2012
* @brief Peripheral Device Interface Layer
******************************************************************************
* @attention
*
* <h2><center>© COPYRIGHT 2012 STMicroelectronics</center></h2>
*
* Licensed under MCD-ST Liberty SW License Agreement V2, (the "License");
* You may not use this file except in compliance with the License.
* You may obtain a copy of the License at:
*
* http://www.st.com/software_license_agreement_liberty_v2
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*
******************************************************************************
*/
/* Define to prevent recursive inclusion -------------------------------------*/
#ifndef __HCD_INT_H__
#define __HCD_INT_H__
/* Includes ------------------------------------------------------------------*/
#include
"usb_hcd.h"
/** @addtogroup USB_OTG_DRIVER
* @{
*/
/** @defgroup USB_HCD_INT
* @brief This file is the
* @{
*/
/** @defgroup USB_HCD_INT_Exported_Defines
* @{
*/
/**
* @}
*/
/** @defgroup USB_HCD_INT_Exported_Types
* @{
*/
typedef
struct
_USBH_HCD_INT
{
uint8_t
(
*
SOF
)
(
USB_OTG_CORE_HANDLE
*
pdev
);
uint8_t
(
*
DevConnected
)
(
USB_OTG_CORE_HANDLE
*
pdev
);
uint8_t
(
*
DevDisconnected
)
(
USB_OTG_CORE_HANDLE
*
pdev
);
}
USBH_HCD_INT_cb_TypeDef
;
extern
USBH_HCD_INT_cb_TypeDef
*
USBH_HCD_INT_fops
;
/**
* @}
*/
/** @defgroup USB_HCD_INT_Exported_Macros
* @{
*/
#define CLEAR_HC_INT(HC_REGS, intr) \
{
\
USB_OTG_HCINTn_TypeDef
hcint_clear
;
\
hcint_clear
.
d32
=
0
;
\
hcint_clear
.
b
.
intr
=
1
;
\
USB_OTG_WRITE_REG32
(
&
((
HC_REGS
)
->
HCINT
),
hcint_clear
.
d32
);
\
}
\
#define MASK_HOST_INT_CHH(hc_num) { USB_OTG_HCINTMSK_TypeDef INTMSK; \
INTMSK
.
d32
=
USB_OTG_READ_REG32
(
&
pdev
->
regs
.
HC_REGS
[
hc_num
]
->
HCINTMSK
);
\
INTMSK
.
b
.
chhltd
=
0
;
\
USB_OTG_WRITE_REG32
(
&
pdev
->
regs
.
HC_REGS
[
hc_num
]
->
HCINTMSK
,
INTMSK
.
d32
);
}
#define UNMASK_HOST_INT_CHH(hc_num) { USB_OTG_HCINTMSK_TypeDef INTMSK; \
INTMSK
.
d32
=
USB_OTG_READ_REG32
(
&
pdev
->
regs
.
HC_REGS
[
hc_num
]
->
HCINTMSK
);
\
INTMSK
.
b
.
chhltd
=
1
;
\
USB_OTG_WRITE_REG32
(
&
pdev
->
regs
.
HC_REGS
[
hc_num
]
->
HCINTMSK
,
INTMSK
.
d32
);
}
#define MASK_HOST_INT_ACK(hc_num) { USB_OTG_HCINTMSK_TypeDef INTMSK; \
INTMSK
.
d32
=
USB_OTG_READ_REG32
(
&
pdev
->
regs
.
HC_REGS
[
hc_num
]
->
HCINTMSK
);
\
INTMSK
.
b
.
ack
=
0
;
\
USB_OTG_WRITE_REG32
(
&
pdev
->
regs
.
HC_REGS
[
hc_num
]
->
HCINTMSK
,
GINTMSK
.
d32
);
}
#define UNMASK_HOST_INT_ACK(hc_num) { USB_OTG_HCGINTMSK_TypeDef INTMSK; \
INTMSK
.
d32
=
USB_OTG_READ_REG32
(
&
pdev
->
regs
.
HC_REGS
[
hc_num
]
->
HCINTMSK
);
\
INTMSK
.
b
.
ack
=
1
;
\
USB_OTG_WRITE_REG32
(
&
pdev
->
regs
.
HC_REGS
[
hc_num
]
->
HCINTMSK
,
INTMSK
.
d32
);
}
/**
* @}
*/
/** @defgroup USB_HCD_INT_Exported_Variables
* @{
*/
/**
* @}
*/
/** @defgroup USB_HCD_INT_Exported_FunctionsPrototype
* @{
*/
/* Callbacks handler */
void
ConnectCallback_Handler
(
USB_OTG_CORE_HANDLE
*
pdev
);
void
Disconnect_Callback_Handler
(
USB_OTG_CORE_HANDLE
*
pdev
);
void
Overcurrent_Callback_Handler
(
USB_OTG_CORE_HANDLE
*
pdev
);
uint32_t
USBH_OTG_ISR_Handler
(
USB_OTG_CORE_HANDLE
*
pdev
);
/**
* @}
*/
#endif //__HCD_INT_H__
/**
* @}
*/
/**
* @}
*/
/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
stm/lib/usb_otg.c
deleted
100644 → 0
View file @
d276f635
/**
******************************************************************************
* @file usb_otg.c
* @author MCD Application Team
* @version V2.1.0
* @date 19-March-2012
* @brief OTG Core Layer
******************************************************************************
* @attention
*
* <h2><center>© COPYRIGHT 2012 STMicroelectronics</center></h2>
*
* Licensed under MCD-ST Liberty SW License Agreement V2, (the "License");
* You may not use this file except in compliance with the License.
* You may obtain a copy of the License at:
*
* http://www.st.com/software_license_agreement_liberty_v2
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*
******************************************************************************
*/
/* Includes ------------------------------------------------------------------*/
#include
"usb_defines.h"
#include
"usb_regs.h"
#include
"usb_core.h"
#include
"usb_otg.h"
/** @addtogroup USB_OTG_DRIVER
* @{
*/
/** @defgroup USB_OTG
* @brief This file is the interface between EFSL ans Host mass-storage class
* @{
*/
/** @defgroup USB_OTG_Private_Defines
* @{
*/
/**
* @}
*/
/** @defgroup USB_OTG_Private_TypesDefinitions
* @{
*/
/**
* @}
*/
/** @defgroup USB_OTG_Private_Macros
* @{
*/
/**
* @}
*/
/** @defgroup USB_OTG_Private_Variables
* @{
*/
/**
* @}
*/
/** @defgroup USB_OTG_Private_FunctionPrototypes
* @{
*/
uint32_t
USB_OTG_HandleOTG_ISR
(
USB_OTG_CORE_HANDLE
*
pdev
);
static
uint32_t
USB_OTG_HandleConnectorIDStatusChange_ISR
(
USB_OTG_CORE_HANDLE
*
pdev
);
static
uint32_t
USB_OTG_HandleSessionRequest_ISR
(
USB_OTG_CORE_HANDLE
*
pdev
);
static
uint32_t
USB_OTG_Read_itr
(
USB_OTG_CORE_HANDLE
*
pdev
);
/**
* @}
*/
/** @defgroup USB_OTG_Private_Functions
* @{
*/
/* OTG Interrupt Handler */
/**
* @brief STM32_USBO_OTG_ISR_Handler
*
* @param None
* @retval : None
*/
uint32_t
STM32_USBO_OTG_ISR_Handler
(
USB_OTG_CORE_HANDLE
*
pdev
)
{
uint32_t
retval
=
0
;
USB_OTG_GINTSTS_TypeDef
gintsts
;
gintsts
.
d32
=
0
;
gintsts
.
d32
=
USB_OTG_Read_itr
(
pdev
);
if
(
gintsts
.
d32
==
0
)
{
return
0
;
}
if
(
gintsts
.
b
.
otgintr
)
{
retval
|=
USB_OTG_HandleOTG_ISR
(
pdev
);
}
if
(
gintsts
.
b
.
conidstschng
)
{
retval
|=
USB_OTG_HandleConnectorIDStatusChange_ISR
(
pdev
);
}
if
(
gintsts
.
b
.
sessreqintr
)
{
retval
|=
USB_OTG_HandleSessionRequest_ISR
(
pdev
);
}
return
retval
;
}