summaryrefslogtreecommitdiffstats
path: root/keyboard/infinity/mbed-infinity/README
diff options
context:
space:
mode:
Diffstat (limited to 'keyboard/infinity/mbed-infinity/README')
-rw-r--r--keyboard/infinity/mbed-infinity/README83
1 files changed, 0 insertions, 83 deletions
diff --git a/keyboard/infinity/mbed-infinity/README b/keyboard/infinity/mbed-infinity/README
deleted file mode 100644
index 43051c9003..0000000000
--- a/keyboard/infinity/mbed-infinity/README
+++ /dev/null
@@ -1,83 +0,0 @@
-mbed fix for Infinity
-=====================
-Without linker script patch it doesn't place vector table in final binary.
-And clock is configured to 48MHz using internal clock reference and FLL multiplication.
-
-
-mbed/targets/cmsis/TARGET_Freescale/TARGET_K20D50M/system_MK20D5.c
- Fix SystemInit: clock setup for internal clock. Inifinity has no external Xtal.
-
-mbed/targets/cmsis/TARGET_Freescale/TARGET_K20D50M/cmsis_nvic.c
- Fix NVIC vector address of firmware 0x1000 instead of 0x0
-
-mbed/targets/cmsis/TARGET_Freescale/TARGET_K20D50M/TOOLCHAIN_GCC_ARM/MK20D5.ld
- Fix memory map for Infinity bootloader
- Flash starts at 0x1000
- No flash config bytes sector
-
-USBDevice/USBDevice/USBHAL_KL25Z.cpp
- Fix USB clock setup, see below.
-
-
-2015/01/04 Based on mbed-sdk @2f63fa7d78a26.
-
-
-
-Kinetis USB config
-==================
-Clock source: Internal reference clock wth FLL
- SIM_SOPT[USBSRC] = 1(MCGPLLCLK/MCGFLLCLK)
- SIM_SOPT[PLLSEL] = 0(MCGFLLCLK)
-
-Clock dividor:
- SIM_CLKDIV2[USBDIV] = 0
- SIM_CLKDIV2[USBFAC] = 0
-
-Clock enable:
- SIM_SCGC4[USBOTG] = 1
-
-
-
-Infinity bootloader change
-==========================
-After @2c7542e(2015/01) Infinity bootloader doesn't disable watchdog timer and keyboard firmware has to do it itself. mbed disables watchdog in startup sequence but unfortunately timer is timed out bofore that.
-
-We have to do that in earlier phase of mbed startup sequence.
-
-
-mbed starup sequence files:
-mbed/targets/cmsis/TARGET_Freescale/TARGET_K20D50M/TOOLCHAIN_GCC_ARM/startup_M20D5.s
-mbed/targets/cmsis/TARGET_Freescale/TARGET_K20D50M/system_MK20D5.c
-
-Infinity booloader change commit:
-https://github.com/kiibohd/controller/commit/2c7542e2e7f0b8a99edf563dc53164fe1a439483
-
-discussion:
-https://geekhack.org/index.php?topic=41989.msg1686616#msg1686616
-
-
-WORKAROUND
-----------
-Call SystemInit early in Reset_Handler.
-
-$ diff -u ../../mbed-sdk/libraries/mbed/targets/cmsis/TARGET_Freescale/TARGET_K20D50M/TOOLCHAIN_GCC_ARM/startup_MK20D5.s mbed-infinity
---- ../../mbed-sdk/libraries/mbed/targets/cmsis/TARGET_Freescale/TARGET_K20D50M/TOOLCHAIN_GCC_ARM/startup_MK20D5.s 2015-03-22 10:33:22.779866000 +0900
-+++ mbed-infinity/startup_MK20D5.s 2015-03-22 10:32:56.483866000 +0900
-@@ -147,6 +147,8 @@
- * __etext: End of code section, i.e., begin of data sections to copy from.
- * __data_start__/__data_end__: RAM address range that data should be
- * copied to. Both must be aligned to 4 bytes boundary. */
-+ ldr r0, =SystemInit
-+ blx r0
-
- ldr r1, =__etext
- ldr r2, =__data_start__
-@@ -161,8 +163,6 @@
-
- .Lflash_to_ram_loop_end:
-
-- ldr r0, =SystemInit
-- blx r0
- ldr r0, =_start
- bx r0
- .pool