diff options
| author | Ha Thach <[email protected]> | 2022-02-25 18:21:37 +0700 |
|---|---|---|
| committer | GitHub <[email protected]> | 2022-02-25 18:21:37 +0700 |
| commit | b797d1aa50310a46d430ff0efd66d7e88028de3b (patch) | |
| tree | f2b90c249142f1206fc3339afd953cab2ab55719 /hw | |
| parent | fa895ed3dc46d5aa5e11b19ff07beb6fcfc62655 (diff) | |
| parent | a8d6e823951a758829b53199de25a4ff2ce14494 (diff) | |
Merge pull request #1340 from tannewt/hid_to_cdc
Add concurrent host and device example
Diffstat (limited to 'hw')
| -rw-r--r-- | hw/bsp/imxrt/boards/mimxrt1060_evk/board.mk | 3 | ||||
| -rw-r--r-- | hw/bsp/imxrt/boards/mimxrt1064_evk/board.mk | 3 | ||||
| -rw-r--r-- | hw/bsp/imxrt/family.c | 27 | ||||
| -rw-r--r-- | hw/bsp/imxrt/family.mk | 7 |
4 files changed, 35 insertions, 5 deletions
diff --git a/hw/bsp/imxrt/boards/mimxrt1060_evk/board.mk b/hw/bsp/imxrt/boards/mimxrt1060_evk/board.mk index d0498dbb1..b14b2a6b9 100644 --- a/hw/bsp/imxrt/boards/mimxrt1060_evk/board.mk +++ b/hw/bsp/imxrt/boards/mimxrt1060_evk/board.mk @@ -7,5 +7,8 @@ JLINK_DEVICE = MIMXRT1062xxx6A # For flash-pyocd target PYOCD_TARGET = mimxrt1060 +BOARD_DEVICE_RHPORT_NUM = 1 +BOARD_HOST_RHPORT_NUM = 0 + # flash using pyocd flash: flash-pyocd diff --git a/hw/bsp/imxrt/boards/mimxrt1064_evk/board.mk b/hw/bsp/imxrt/boards/mimxrt1064_evk/board.mk index 586d74fe5..2b479719f 100644 --- a/hw/bsp/imxrt/boards/mimxrt1064_evk/board.mk +++ b/hw/bsp/imxrt/boards/mimxrt1064_evk/board.mk @@ -7,5 +7,8 @@ JLINK_DEVICE = MIMXRT1064xxx6A # For flash-pyocd target PYOCD_TARGET = mimxrt1064 +BOARD_DEVICE_RHPORT_NUM = 1 +BOARD_HOST_RHPORT_NUM = 0 + # flash using pyocd flash: flash-pyocd diff --git a/hw/bsp/imxrt/family.c b/hw/bsp/imxrt/family.c index 716681ca9..a811a7e40 100644 --- a/hw/bsp/imxrt/family.c +++ b/hw/bsp/imxrt/family.c @@ -98,13 +98,9 @@ void board_init(void) CLOCK_EnableUsbhs0PhyPllClock(kCLOCK_Usbphy480M, 480000000U); CLOCK_EnableUsbhs0Clock(kCLOCK_Usb480M, 480000000U); - // USB1 -// CLOCK_EnableUsbhs1PhyPllClock(kCLOCK_Usbphy480M, 480000000U); -// CLOCK_EnableUsbhs1Clock(kCLOCK_Usb480M, 480000000U); - USBPHY_Type* usb_phy; - // RT105x RT106x have dual USB controller. TODO support USB2 + // RT105x RT106x have dual USB controller. #ifdef USBPHY1 usb_phy = USBPHY1; #else @@ -122,6 +118,27 @@ void board_init(void) phytx &= ~(USBPHY_TX_D_CAL_MASK | USBPHY_TX_TXCAL45DM_MASK | USBPHY_TX_TXCAL45DP_MASK); phytx |= USBPHY_TX_D_CAL(0x0C) | USBPHY_TX_TXCAL45DP(0x06) | USBPHY_TX_TXCAL45DM(0x06); usb_phy->TX = phytx; + + // RT105x RT106x have dual USB controller. +#ifdef USBPHY2 + // USB1 + CLOCK_EnableUsbhs1PhyPllClock(kCLOCK_Usbphy480M, 480000000U); + CLOCK_EnableUsbhs1Clock(kCLOCK_Usb480M, 480000000U); + + usb_phy = USBPHY2; + + // Enable PHY support for Low speed device + LS via FS Hub + usb_phy->CTRL |= USBPHY_CTRL_SET_ENUTMILEVEL2_MASK | USBPHY_CTRL_SET_ENUTMILEVEL3_MASK; + + // Enable all power for normal operation + usb_phy->PWD = 0; + + // TX Timing + phytx = usb_phy->TX; + phytx &= ~(USBPHY_TX_D_CAL_MASK | USBPHY_TX_TXCAL45DM_MASK | USBPHY_TX_TXCAL45DP_MASK); + phytx |= USBPHY_TX_D_CAL(0x0C) | USBPHY_TX_TXCAL45DP(0x06) | USBPHY_TX_TXCAL45DM(0x06); + usb_phy->TX = phytx; +#endif } //--------------------------------------------------------------------+ diff --git a/hw/bsp/imxrt/family.mk b/hw/bsp/imxrt/family.mk index d086d503f..0bf4a0d15 100644 --- a/hw/bsp/imxrt/family.mk +++ b/hw/bsp/imxrt/family.mk @@ -15,6 +15,13 @@ CFLAGS += \ -DXIP_BOOT_HEADER_ENABLE=1 \ -DCFG_TUSB_MCU=OPT_MCU_MIMXRT10XX +ifdef BOARD_DEVICE_RHPORT_NUM +CFLAGS += -DBOARD_DEVICE_RHPORT_NUM=$(BOARD_DEVICE_RHPORT_NUM) +endif +ifdef BOARD_HOST_RHPORT_NUM +CFLAGS += -DBOARD_HOST_RHPORT_NUM=$(BOARD_HOST_RHPORT_NUM) +endif + # mcu driver cause following warnings CFLAGS += -Wno-error=unused-parameter -Wno-error=implicit-fallthrough= |
