Gregory Nutt
abfb070ee1
Kinetis: Try to make UART/LPUART definitions sane.
2017-02-25 17:48:05 -06:00
Gregory Nutt
27cac7f083
Fix error in last commit: defined, not define in conditional logic.
2017-02-25 16:44:27 -06:00
Gregory Nutt
1e1714b061
Kinetis: Resolve issue with duplicate definitions of up_putc. Addition conditional logic to pick just one.
2017-02-25 16:36:47 -06:00
Gregory Nutt
ee2f71ad3e
Kinetis USBDEV: Eliminate compilation error introduced by last SIM changes.
2017-02-25 13:26:53 -06:00
Gregory Nutt
48bc77ee6b
Update some comments.
2017-02-25 12:40:30 -06:00
Gregory Nutt
04ea69c32f
Kinetis: Fix some comple errors and warnings that came in with the last PR
2017-02-25 11:52:31 -06:00
Gregory Nutt
90e63ba18e
Purely cosmetic changes from review of last PR.
2017-02-25 11:43:05 -06:00
David Sidrane
38df949adc
Merged in david_s5/nuttx/upstream_kinetis (pull request #221 )
...
Kinetis:Add LPUART
Approved-by: Gregory Nutt
2017-02-25 17:23:04 +00:00
David Sidrane
df01e343a7
Kinetis:Add LPUART serail device driver
2017-02-25 07:06:04 -10:00
David Sidrane
0cbc03255c
Kinetis:Add LPUART and Clock configuartaion to freedom-k66f board
...
Pin out LPUART0 for testing
Define BOARD_SOPT2_PLLFLLSEL ti select MCGPLLCLK
Define BOARD_SIM_CLKDIV3_FREQ etal to provide BOARD_LPUART0_FREQ
2017-02-25 07:05:34 -10:00
David Sidrane
b553d34a68
Kinetis:Added configurable 1|2 stop bits
...
HAVE_SERIAL_CONSOLE -> HAVE_UART_CONSOLE to bew consistent with
HAVE_LPUART_CONSOLE naming
2017-02-25 07:02:56 -10:00
David Sidrane
dd218ffa8c
Kinetis:Extend clockconfig to support SOPT2_PLLFLLSEL and SIM_CLKDIV3
...
A board.h file can now specify the:
1) BOARD_SOPT2_PLLFLLSEL to select the output of the SIM_SOPT2 MUX
from:
MCGFLLCLK
MCGPLLCLK
USB1PFD
IRC48MHZ
2) If it defines BOARD_SIM_CLKDIV3_FREQ then it must define
BOARD_SIM_CLKDIV3_PLLFLLFRAC and BOARD_SIM_CLKDIV3_PLLFLLDIV
which wil be used to cpnfigure SIM_CLKDIV3 [PLLFLLFRAC, PLLFLLDIV]
2017-02-25 07:02:56 -10:00
David Sidrane
86c9f97f78
Kinetis: Add LPUART as lowlevel console
2017-02-25 07:02:56 -10:00
David Sidrane
29ab603a66
Kinetis:Add LPUART for use with K66
...
Add LPUART made UART5 an uption as the K66 does not have UART5
2017-02-25 07:02:56 -10:00
David Sidrane
f6fe9beeb3
Kinetis:Add LPUART to config
2017-02-25 07:02:56 -10:00
David Sidrane
b280aef9c0
Kinetis:Add LPUART register definitions
2017-02-25 07:02:38 -10:00
David Sidrane
9061a3fb64
Kinetis: UART add UART_BDH_SBNS definition
2017-02-25 07:02:38 -10:00
Marc Rechte
579360e77d
Merge branch 'master' of https://bitbucket.org/mrechte/nuttx-twrk64
2017-02-24 08:02:08 +01:00
Marc Rechte
c734a6283c
kinetis_enet.c add #define for number of loops for auto negotiation to complete
2017-02-24 08:00:11 +01:00
David Sidrane
a43554decd
Kinetis:SIM add paramiterized SIM_CLKDIVx_xxFRAC|DIV macros
...
The makes for cleaner board definitions like:
Divider output clock = Divider input clock * ((PLLFLLFRAC+1)/(PLLFLLDIV+1))
SIM_CLKDIV3_FREQ = BOARD_SOPT2_FREQ × [ (PLLFLLFRAC+1) / (PLLFLLDIV+1)]
90 Mhz = 180 Mhz X [(0 + 1) / (1 + 1)]
#define BOARD_SIM_CLKDIV3_PLLFLLFRAC 1
#define BOARD_SIM_CLKDIV3_PLLFLLDIV 2
#define BOARD_SIM_CLKDIV3_FREQ (BOARD_SOPT2_FREQ * (BOARD_SIM_CLKDIV3_PLLFLLFRAC / BOARD_SIM_CLKDIV3_PLLFLLDIV))
2017-02-23 19:27:55 -10:00
David Sidrane
e1278c0cb9
Kinetis:Fix typo in comment
2017-02-23 19:25:53 -10:00
David Sidrane
41e3d9f174
Kinetis:Refactor you use SIM_SOPT2_PLLFLLSEL, added warning
...
The warning has been added because: SIM_SOPT2_PLLFLLSEL
is a clock selection that may feed many clock subsystem:
USB, TPM, SDHCSRC, LPUARTSRC. Therefore, there needs to
be a global board level setting to select the source for
SIM_SOPT2_PLLFLLSEL and then derive all the sub selections
and proper fractions/divisors for each modules clock.
2017-02-22 10:42:52 -10:00
David Sidrane
12c24f2644
Kinetis:kinetis_clockconfig uses the correct ACKISO
...
ACKISO is located in the PMC_REGSC on the majority
of the Kinetis SoCs. With the exception of the
MK40DXxxxZVLQ10 where ACKISO is located in LLWU_CS
2017-02-22 10:42:52 -10:00
David Sidrane
1324b8c00a
Kinetis:Resolves issues where Freescale moved ACKISO
...
ACKISO is located in the PMC_REGSC on the majority
of the Kinetis SoCs. With the exception of the
MK40DXxxxZVLQ10 where ACKISO is located in LLWU_CS
2017-02-22 10:42:52 -10:00
David Sidrane
a4b985f865
Kinetis:PMC defines are based on PMC feature configuration
2017-02-22 10:42:52 -10:00
David Sidrane
381ffa3083
Kinetis:SIM defines are based on SIM feature configuration
2017-02-22 10:42:52 -10:00
Gregory Nutt
bb059432ea
Move local variables to top of function for compliance with coding standard.
2017-02-20 17:54:04 -06:00
Gregory Nutt
0fc226dd53
Changes from review of last PR
2017-02-19 14:58:37 -06:00
Marc Rechté
1838171d43
Add twr-k64f120m config and fix some ENET related problems
2017-02-19 21:20:56 +01:00
Gregory Nutt
a49b349614
C library: Add swab()
2017-02-16 14:42:27 -06:00
Gregory Nutt
3b351615be
Kinetis K66: Change necessary for correct build.
2017-02-16 11:33:36 -06:00
Gregory Nutt
c3bfccf293
Kinetis PWM: Purely cosmetic changes from review.
2017-02-15 17:54:55 -06:00
David Sidrane
c83af148b1
Kinetis:Add FTM3 to PWM
2017-02-15 13:42:36 -10:00
David Sidrane
a95a6c43d3
Kinetis Support RMII clock source select
...
This defined the RMII clock source select bits and allows
the selection to be made via Kconfig
2017-02-15 13:42:36 -10:00
David Sidrane
3423a4ecc2
Kinetis: Add comment the Freedom-K66F uses KSZ8081 PHY
2017-02-14 09:15:23 -10:00
David Sidrane
35fc713931
Kinetis K64 and K66 share mpu files
2017-02-14 09:15:23 -10:00
David Sidrane
84b206bf7e
Kinetis K66 FMC
...
Added K66 FMC register definition
2017-02-13 14:35:52 -10:00
David Sidrane
7d80db5919
Kinetis K66 Pin Mux
2017-02-13 14:35:51 -10:00
David Sidrane
e28781ebeb
Include K66 memory map
2017-02-13 14:35:51 -10:00
David Sidrane
6597e46ce7
Define Alternate addresses for IP blocks in both AIPS0 & AIPS1
...
Added ALT version of RNGA, FTM2, DAC0 as a facility to later
define secondary access via AIPS1 to these peripherals
2017-02-13 14:35:51 -10:00
David Sidrane
bd7d7edcf8
Kinetis: Updated comment in clockconfig
2017-02-13 13:24:47 -10:00
David Sidrane
3840c802d1
Kinetis SPI and I2C are 0 based
...
The K whole family line has max 4 or each. But the supported
parts have the maximums listed below:
K46 and K66 3 SPI SPI0-SPI2
K46 and K66 4 I2C I2C0-I2C3
2017-02-13 13:24:47 -10:00
David Sidrane
ddd1f8c507
Kinetis SDHC - Enable clock after selected
2017-02-13 13:24:47 -10:00
Marc Rechté
d501ffc563
Kinetis SDHC driver fixes.
2017-02-09 11:28:30 -06:00
Gregory Nutt
e803e2c3f4
Costmetic changes from review of last PR.
2017-02-07 17:16:56 -06:00
David Sidrane
a4ea49aaa2
Better granualarity and erro checking of the board's MCG settings
...
Allow for complete MCG_C2 definition from the boart.h file
Moved #ifdef out of code by setting default values for
Allow for individule bit setting in MCG_C2 for
BOARD_EXTCLOCK_MCG_C2
BOARD_MCG_C2_FCFTRIM
BOARD_MCG_C2_LOCRE0
Added range and sanity checking
2017-02-07 12:38:28 -10:00
David Sidrane
87f759172a
Support the Indexed name LOCK->LOCK0
2017-02-07 12:38:28 -10:00
David Sidrane
6022c62229
MCG defines are based on the MCG feature configuration
...
We define the bits as a common set of names. This means that
an index may be added to a name i.e. LOCK is LOCK0 as that is
the superset name.
2017-02-07 12:38:28 -10:00
David Sidrane
5bfd2fedc6
Add K66 memory map
2017-02-07 12:38:28 -10:00
David Sidrane
97ae289f99
Add Kinetis K66 to Kinetis Kconfig
2017-02-07 12:38:28 -10:00