From 7506c2a2c158513ab3db9d382495e089725d79f3 Mon Sep 17 00:00:00 2001 From: Michael Walker Date: Tue, 1 May 2018 00:46:42 -0700 Subject: support Teensy 3.6 --- os/hal/ports/KINETIS/LLD/hal_usb_lld.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'os/hal/ports/KINETIS') diff --git a/os/hal/ports/KINETIS/LLD/hal_usb_lld.c b/os/hal/ports/KINETIS/LLD/hal_usb_lld.c index e8d9778..77421c8 100644 --- a/os/hal/ports/KINETIS/LLD/hal_usb_lld.c +++ b/os/hal/ports/KINETIS/LLD/hal_usb_lld.c @@ -398,15 +398,21 @@ void usb_lld_init(void) { #if KINETIS_USB_USE_USB0 + /* Set USB clock source to MCGPLLCLK, MCGFLLCLK, USB1 PFD, or IRC48M */ SIM->SOPT2 |= SIM_SOPT2_USBSRC; -#if defined(K20x5) || defined(K20x7) +#if defined(K20x5) || defined(K20x7) || defined(MK66F18) #if KINETIS_MCG_MODE == KINETIS_MCG_MODE_FEI /* MCGOUTCLK is the SYSCLK frequency, so don't divide for USB clock */ SIM->CLKDIV2 = SIM_CLKDIV2_USBDIV(0); +#if defined(MK66F18) + /* Switch from default MCGPLLCLK to IRC48M for USB */ + SIM->SOPT2 |= SIM_SOPT2_PLLFLLSEL_SET(3); +#endif + #elif KINETIS_MCG_MODE == KINETIS_MCG_MODE_PEE #define KINETIS_USBCLK_FREQUENCY 48000000UL -- cgit v1.2.3