nuttx/arch/arm/include/imxrt/chip.h

115 lines
4.8 KiB
C
Raw Normal View History

/****************************************************************************
This commit brings in basic support fo the i.MX RT 1050 'crossover' SoC. The basic support is complete and compiles without error, but is still untested. This port was the joing effort of Janne Rosberg, Ivan Ucherdzhiev, and myself. I give credit to Ivan for the kill because he is the one to held on to the end. Squashed commit of the following: Author: Gregory Nutt <gnutt@nuttx.org> configs/imxrt1050-evk/scripts: Add section to linker script to handle the case where RAMFUNCs are enabled. RAMFUNCs appear to be enabled in the default configuration ... they probably should not be enabled. Author: Ivan Ucherdzhiev <ivanucherdjiev@gmail.com> arch/arm/src/imxrt: imxrt_lowputc.c is finished. Now everything needed for the initial port is done and ready for testing. arch/arm/src/imxrt: Add logic to imxrt_lowputc.c. Still incomplete. Author: Ivan Ucherdzhiev <ivanucherdjiev@gmail.com> arch/arm/src/imxrt: Add serial support. configs/imxrt1050-evk: Add linker script. Author: Gregory Nutt <gnutt@nuttx.org> arch/arm/src/imxrt: Add initial cut at imxrt_allocateheap.c Author: Ivan Ucherdzhiev <ivanucherdjiev@gmail.com> arm/arm/src/imxrt: Completes all definitions for PADMUX, CTLMUX, and IOMUX_INPUT and mapping tables on imxrt_gpio.c and imxr_iomuxc.c. arch/arm/src/imxrt/chip: Add definitions for IMXRT_PADCTL and IMXRT_PADMUX registers. Only the IMXRT_INPUT definitions in this commit. arch/arm/src/imxrt/chip: Add more IOMUXC register definitions. Author: Gregory Nutt <gnutt@nuttx.org> configs/imxrt1050-evk: Add STRIP definition to Make.defs. arch/arm/src/imxrt: Bring in i.MX6 memory configuration settings. arch/arm/src/imxrt: Remove call to non-existent imxrt_gpioinit() from imxrt_start.c. arch/arm/src/imxrt: Bring in incomplete imxrt_iomuxc.c file from i.mx6. arch/arm/src/imxrt: Add first cut at GPIO interrupt logic. arch/arm/include: Add definitions to support a second level of GPIO pin interrupts. Author: Janne Rosberg <janne.rosberg@offcode.fi> arch/arm/src/imxrt: Add imxrt_wdog.c/.h Author: Gregory Nutt <gnutt@nuttx.org> arch/arm/src/imxrt: Port SAMv7 interrupt logic to imxrt_irq.c. arch/arm/src/imxrt: More clarification of the start-up memory map. arch/arm/src/imxrt: Some mostly cosmetic clean-up to the imxrt_start.c file that was so rudely taken from the SAMv7. arch/arm/src/imxrt: Add imxrt_start.c. Initial commit is the the SAMv7 startup logic with name changes. Author: Ivan Ucherdzhiev <ivanucherdjiev@gmail.com> arch/arm/src/imxrt: Adds a few IOMUXC register definitions. Author: Janne Rosberg <janne.rosberg@offcode.fi> arch/arm/src/imxrt: Add imxrt_clockconfig.c/.h configs/imxrt1050-evk: Add clock configuration definitions to board.h arch/arm/src/imxrt: Fix CCM register name; Fix doubly defined in LPUART bit field. arch/arm/src/imxrt: Add analog defines to CCM register definition header file. Author: Gregory Nutt <gnutt@nuttx.org> arch/arm/src/imxrt: Bring in GPIO C files from i.MX6. Things are in disarray now because that GPIO logic depends on IOMUXC logic which is not yet in place. arch/arm/src/imxrt: Add a few more GPIO definitions to make the header file compatible with i.MX6 arch/arm/src/imxrt/chip: Add GPIO register definition file. Author: Janne Rosberg <janne.rosberg@offcode.fi> arch/arm/src/imxrt: Add DCDC register definitions. arch/arm/srch/imxrt: Add CCM register bit definitions Author: Gregory Nutt <gnutt@nuttx.org> Purely cosmetic arch/arm/src/imxrt: Add system reset controller register definition header file. Embarassingly trivial change left in compiler. arch/arm/src/imxrt: Finishes i.MX RT1050 LPUART register definition header file. arch/arm/src/imxrt: Beginning of an i.MX RT1050 LPUART register definition header file. Some trivial things Author: Janne Rosberg <janne.rosberg@offcode.fi> arch/arm/src/imxrt: Add imxrt_wdog.h arch/arm/src/imxrt: Add initial imxrt_ccm.h Author: Gregory Nutt <gnutt@nuttx.org> Trivial update to README. arch/arm/src/imxrt: The i.MX Rt implements 4 bits of interrupt priority, not two. Thanks, Janne. arch/arm/src/imxrt: Fix some initial compile issues. Still a long way from complete, but there is a buildable environment now for the imxrt1050-evk. configs/imxrt1050-evk: Add an initial NSH configuration for testing. configs/Kconfig: Hook the i.MX RT 1050 board configuration into the NuttX configuration system. configs/imxrt_evk: Add the framework for i.MX RT 1050 board support. arch/arm/src/imxrt: Bring in a few more files from LPC54xxx. arch/arm/src/imxrt: Bring in imxrt_clrpend() from the LPC54xxx. arch/arm/src/imxrt: Bring in Cortex-M7 SysTick setup from the SAMv7. arch/arm/src/imxrt: Add a few easy files. arch/arm/src/imxrt/chip: Add memory map header files. arch/arm/src/imxrt: A few basic files to start the port to the i.MX RT 1050.
2018-04-12 17:31:09 +02:00
* arch/arm/include/imxrt/chip.h
*
* Licensed to the Apache Software Foundation (ASF) under one or more
* contributor license agreements. See the NOTICE file distributed with
* this work for additional information regarding copyright ownership. The
* ASF licenses this file to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance with the
* License. You may obtain a copy of the License at
This commit brings in basic support fo the i.MX RT 1050 'crossover' SoC. The basic support is complete and compiles without error, but is still untested. This port was the joing effort of Janne Rosberg, Ivan Ucherdzhiev, and myself. I give credit to Ivan for the kill because he is the one to held on to the end. Squashed commit of the following: Author: Gregory Nutt <gnutt@nuttx.org> configs/imxrt1050-evk/scripts: Add section to linker script to handle the case where RAMFUNCs are enabled. RAMFUNCs appear to be enabled in the default configuration ... they probably should not be enabled. Author: Ivan Ucherdzhiev <ivanucherdjiev@gmail.com> arch/arm/src/imxrt: imxrt_lowputc.c is finished. Now everything needed for the initial port is done and ready for testing. arch/arm/src/imxrt: Add logic to imxrt_lowputc.c. Still incomplete. Author: Ivan Ucherdzhiev <ivanucherdjiev@gmail.com> arch/arm/src/imxrt: Add serial support. configs/imxrt1050-evk: Add linker script. Author: Gregory Nutt <gnutt@nuttx.org> arch/arm/src/imxrt: Add initial cut at imxrt_allocateheap.c Author: Ivan Ucherdzhiev <ivanucherdjiev@gmail.com> arm/arm/src/imxrt: Completes all definitions for PADMUX, CTLMUX, and IOMUX_INPUT and mapping tables on imxrt_gpio.c and imxr_iomuxc.c. arch/arm/src/imxrt/chip: Add definitions for IMXRT_PADCTL and IMXRT_PADMUX registers. Only the IMXRT_INPUT definitions in this commit. arch/arm/src/imxrt/chip: Add more IOMUXC register definitions. Author: Gregory Nutt <gnutt@nuttx.org> configs/imxrt1050-evk: Add STRIP definition to Make.defs. arch/arm/src/imxrt: Bring in i.MX6 memory configuration settings. arch/arm/src/imxrt: Remove call to non-existent imxrt_gpioinit() from imxrt_start.c. arch/arm/src/imxrt: Bring in incomplete imxrt_iomuxc.c file from i.mx6. arch/arm/src/imxrt: Add first cut at GPIO interrupt logic. arch/arm/include: Add definitions to support a second level of GPIO pin interrupts. Author: Janne Rosberg <janne.rosberg@offcode.fi> arch/arm/src/imxrt: Add imxrt_wdog.c/.h Author: Gregory Nutt <gnutt@nuttx.org> arch/arm/src/imxrt: Port SAMv7 interrupt logic to imxrt_irq.c. arch/arm/src/imxrt: More clarification of the start-up memory map. arch/arm/src/imxrt: Some mostly cosmetic clean-up to the imxrt_start.c file that was so rudely taken from the SAMv7. arch/arm/src/imxrt: Add imxrt_start.c. Initial commit is the the SAMv7 startup logic with name changes. Author: Ivan Ucherdzhiev <ivanucherdjiev@gmail.com> arch/arm/src/imxrt: Adds a few IOMUXC register definitions. Author: Janne Rosberg <janne.rosberg@offcode.fi> arch/arm/src/imxrt: Add imxrt_clockconfig.c/.h configs/imxrt1050-evk: Add clock configuration definitions to board.h arch/arm/src/imxrt: Fix CCM register name; Fix doubly defined in LPUART bit field. arch/arm/src/imxrt: Add analog defines to CCM register definition header file. Author: Gregory Nutt <gnutt@nuttx.org> arch/arm/src/imxrt: Bring in GPIO C files from i.MX6. Things are in disarray now because that GPIO logic depends on IOMUXC logic which is not yet in place. arch/arm/src/imxrt: Add a few more GPIO definitions to make the header file compatible with i.MX6 arch/arm/src/imxrt/chip: Add GPIO register definition file. Author: Janne Rosberg <janne.rosberg@offcode.fi> arch/arm/src/imxrt: Add DCDC register definitions. arch/arm/srch/imxrt: Add CCM register bit definitions Author: Gregory Nutt <gnutt@nuttx.org> Purely cosmetic arch/arm/src/imxrt: Add system reset controller register definition header file. Embarassingly trivial change left in compiler. arch/arm/src/imxrt: Finishes i.MX RT1050 LPUART register definition header file. arch/arm/src/imxrt: Beginning of an i.MX RT1050 LPUART register definition header file. Some trivial things Author: Janne Rosberg <janne.rosberg@offcode.fi> arch/arm/src/imxrt: Add imxrt_wdog.h arch/arm/src/imxrt: Add initial imxrt_ccm.h Author: Gregory Nutt <gnutt@nuttx.org> Trivial update to README. arch/arm/src/imxrt: The i.MX Rt implements 4 bits of interrupt priority, not two. Thanks, Janne. arch/arm/src/imxrt: Fix some initial compile issues. Still a long way from complete, but there is a buildable environment now for the imxrt1050-evk. configs/imxrt1050-evk: Add an initial NSH configuration for testing. configs/Kconfig: Hook the i.MX RT 1050 board configuration into the NuttX configuration system. configs/imxrt_evk: Add the framework for i.MX RT 1050 board support. arch/arm/src/imxrt: Bring in a few more files from LPC54xxx. arch/arm/src/imxrt: Bring in imxrt_clrpend() from the LPC54xxx. arch/arm/src/imxrt: Bring in Cortex-M7 SysTick setup from the SAMv7. arch/arm/src/imxrt: Add a few easy files. arch/arm/src/imxrt/chip: Add memory map header files. arch/arm/src/imxrt: A few basic files to start the port to the i.MX RT 1050.
2018-04-12 17:31:09 +02:00
*
* http://www.apache.org/licenses/LICENSE-2.0
This commit brings in basic support fo the i.MX RT 1050 'crossover' SoC. The basic support is complete and compiles without error, but is still untested. This port was the joing effort of Janne Rosberg, Ivan Ucherdzhiev, and myself. I give credit to Ivan for the kill because he is the one to held on to the end. Squashed commit of the following: Author: Gregory Nutt <gnutt@nuttx.org> configs/imxrt1050-evk/scripts: Add section to linker script to handle the case where RAMFUNCs are enabled. RAMFUNCs appear to be enabled in the default configuration ... they probably should not be enabled. Author: Ivan Ucherdzhiev <ivanucherdjiev@gmail.com> arch/arm/src/imxrt: imxrt_lowputc.c is finished. Now everything needed for the initial port is done and ready for testing. arch/arm/src/imxrt: Add logic to imxrt_lowputc.c. Still incomplete. Author: Ivan Ucherdzhiev <ivanucherdjiev@gmail.com> arch/arm/src/imxrt: Add serial support. configs/imxrt1050-evk: Add linker script. Author: Gregory Nutt <gnutt@nuttx.org> arch/arm/src/imxrt: Add initial cut at imxrt_allocateheap.c Author: Ivan Ucherdzhiev <ivanucherdjiev@gmail.com> arm/arm/src/imxrt: Completes all definitions for PADMUX, CTLMUX, and IOMUX_INPUT and mapping tables on imxrt_gpio.c and imxr_iomuxc.c. arch/arm/src/imxrt/chip: Add definitions for IMXRT_PADCTL and IMXRT_PADMUX registers. Only the IMXRT_INPUT definitions in this commit. arch/arm/src/imxrt/chip: Add more IOMUXC register definitions. Author: Gregory Nutt <gnutt@nuttx.org> configs/imxrt1050-evk: Add STRIP definition to Make.defs. arch/arm/src/imxrt: Bring in i.MX6 memory configuration settings. arch/arm/src/imxrt: Remove call to non-existent imxrt_gpioinit() from imxrt_start.c. arch/arm/src/imxrt: Bring in incomplete imxrt_iomuxc.c file from i.mx6. arch/arm/src/imxrt: Add first cut at GPIO interrupt logic. arch/arm/include: Add definitions to support a second level of GPIO pin interrupts. Author: Janne Rosberg <janne.rosberg@offcode.fi> arch/arm/src/imxrt: Add imxrt_wdog.c/.h Author: Gregory Nutt <gnutt@nuttx.org> arch/arm/src/imxrt: Port SAMv7 interrupt logic to imxrt_irq.c. arch/arm/src/imxrt: More clarification of the start-up memory map. arch/arm/src/imxrt: Some mostly cosmetic clean-up to the imxrt_start.c file that was so rudely taken from the SAMv7. arch/arm/src/imxrt: Add imxrt_start.c. Initial commit is the the SAMv7 startup logic with name changes. Author: Ivan Ucherdzhiev <ivanucherdjiev@gmail.com> arch/arm/src/imxrt: Adds a few IOMUXC register definitions. Author: Janne Rosberg <janne.rosberg@offcode.fi> arch/arm/src/imxrt: Add imxrt_clockconfig.c/.h configs/imxrt1050-evk: Add clock configuration definitions to board.h arch/arm/src/imxrt: Fix CCM register name; Fix doubly defined in LPUART bit field. arch/arm/src/imxrt: Add analog defines to CCM register definition header file. Author: Gregory Nutt <gnutt@nuttx.org> arch/arm/src/imxrt: Bring in GPIO C files from i.MX6. Things are in disarray now because that GPIO logic depends on IOMUXC logic which is not yet in place. arch/arm/src/imxrt: Add a few more GPIO definitions to make the header file compatible with i.MX6 arch/arm/src/imxrt/chip: Add GPIO register definition file. Author: Janne Rosberg <janne.rosberg@offcode.fi> arch/arm/src/imxrt: Add DCDC register definitions. arch/arm/srch/imxrt: Add CCM register bit definitions Author: Gregory Nutt <gnutt@nuttx.org> Purely cosmetic arch/arm/src/imxrt: Add system reset controller register definition header file. Embarassingly trivial change left in compiler. arch/arm/src/imxrt: Finishes i.MX RT1050 LPUART register definition header file. arch/arm/src/imxrt: Beginning of an i.MX RT1050 LPUART register definition header file. Some trivial things Author: Janne Rosberg <janne.rosberg@offcode.fi> arch/arm/src/imxrt: Add imxrt_wdog.h arch/arm/src/imxrt: Add initial imxrt_ccm.h Author: Gregory Nutt <gnutt@nuttx.org> Trivial update to README. arch/arm/src/imxrt: The i.MX Rt implements 4 bits of interrupt priority, not two. Thanks, Janne. arch/arm/src/imxrt: Fix some initial compile issues. Still a long way from complete, but there is a buildable environment now for the imxrt1050-evk. configs/imxrt1050-evk: Add an initial NSH configuration for testing. configs/Kconfig: Hook the i.MX RT 1050 board configuration into the NuttX configuration system. configs/imxrt_evk: Add the framework for i.MX RT 1050 board support. arch/arm/src/imxrt: Bring in a few more files from LPC54xxx. arch/arm/src/imxrt: Bring in imxrt_clrpend() from the LPC54xxx. arch/arm/src/imxrt: Bring in Cortex-M7 SysTick setup from the SAMv7. arch/arm/src/imxrt: Add a few easy files. arch/arm/src/imxrt/chip: Add memory map header files. arch/arm/src/imxrt: A few basic files to start the port to the i.MX RT 1050.
2018-04-12 17:31:09 +02:00
*
* 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.
This commit brings in basic support fo the i.MX RT 1050 'crossover' SoC. The basic support is complete and compiles without error, but is still untested. This port was the joing effort of Janne Rosberg, Ivan Ucherdzhiev, and myself. I give credit to Ivan for the kill because he is the one to held on to the end. Squashed commit of the following: Author: Gregory Nutt <gnutt@nuttx.org> configs/imxrt1050-evk/scripts: Add section to linker script to handle the case where RAMFUNCs are enabled. RAMFUNCs appear to be enabled in the default configuration ... they probably should not be enabled. Author: Ivan Ucherdzhiev <ivanucherdjiev@gmail.com> arch/arm/src/imxrt: imxrt_lowputc.c is finished. Now everything needed for the initial port is done and ready for testing. arch/arm/src/imxrt: Add logic to imxrt_lowputc.c. Still incomplete. Author: Ivan Ucherdzhiev <ivanucherdjiev@gmail.com> arch/arm/src/imxrt: Add serial support. configs/imxrt1050-evk: Add linker script. Author: Gregory Nutt <gnutt@nuttx.org> arch/arm/src/imxrt: Add initial cut at imxrt_allocateheap.c Author: Ivan Ucherdzhiev <ivanucherdjiev@gmail.com> arm/arm/src/imxrt: Completes all definitions for PADMUX, CTLMUX, and IOMUX_INPUT and mapping tables on imxrt_gpio.c and imxr_iomuxc.c. arch/arm/src/imxrt/chip: Add definitions for IMXRT_PADCTL and IMXRT_PADMUX registers. Only the IMXRT_INPUT definitions in this commit. arch/arm/src/imxrt/chip: Add more IOMUXC register definitions. Author: Gregory Nutt <gnutt@nuttx.org> configs/imxrt1050-evk: Add STRIP definition to Make.defs. arch/arm/src/imxrt: Bring in i.MX6 memory configuration settings. arch/arm/src/imxrt: Remove call to non-existent imxrt_gpioinit() from imxrt_start.c. arch/arm/src/imxrt: Bring in incomplete imxrt_iomuxc.c file from i.mx6. arch/arm/src/imxrt: Add first cut at GPIO interrupt logic. arch/arm/include: Add definitions to support a second level of GPIO pin interrupts. Author: Janne Rosberg <janne.rosberg@offcode.fi> arch/arm/src/imxrt: Add imxrt_wdog.c/.h Author: Gregory Nutt <gnutt@nuttx.org> arch/arm/src/imxrt: Port SAMv7 interrupt logic to imxrt_irq.c. arch/arm/src/imxrt: More clarification of the start-up memory map. arch/arm/src/imxrt: Some mostly cosmetic clean-up to the imxrt_start.c file that was so rudely taken from the SAMv7. arch/arm/src/imxrt: Add imxrt_start.c. Initial commit is the the SAMv7 startup logic with name changes. Author: Ivan Ucherdzhiev <ivanucherdjiev@gmail.com> arch/arm/src/imxrt: Adds a few IOMUXC register definitions. Author: Janne Rosberg <janne.rosberg@offcode.fi> arch/arm/src/imxrt: Add imxrt_clockconfig.c/.h configs/imxrt1050-evk: Add clock configuration definitions to board.h arch/arm/src/imxrt: Fix CCM register name; Fix doubly defined in LPUART bit field. arch/arm/src/imxrt: Add analog defines to CCM register definition header file. Author: Gregory Nutt <gnutt@nuttx.org> arch/arm/src/imxrt: Bring in GPIO C files from i.MX6. Things are in disarray now because that GPIO logic depends on IOMUXC logic which is not yet in place. arch/arm/src/imxrt: Add a few more GPIO definitions to make the header file compatible with i.MX6 arch/arm/src/imxrt/chip: Add GPIO register definition file. Author: Janne Rosberg <janne.rosberg@offcode.fi> arch/arm/src/imxrt: Add DCDC register definitions. arch/arm/srch/imxrt: Add CCM register bit definitions Author: Gregory Nutt <gnutt@nuttx.org> Purely cosmetic arch/arm/src/imxrt: Add system reset controller register definition header file. Embarassingly trivial change left in compiler. arch/arm/src/imxrt: Finishes i.MX RT1050 LPUART register definition header file. arch/arm/src/imxrt: Beginning of an i.MX RT1050 LPUART register definition header file. Some trivial things Author: Janne Rosberg <janne.rosberg@offcode.fi> arch/arm/src/imxrt: Add imxrt_wdog.h arch/arm/src/imxrt: Add initial imxrt_ccm.h Author: Gregory Nutt <gnutt@nuttx.org> Trivial update to README. arch/arm/src/imxrt: The i.MX Rt implements 4 bits of interrupt priority, not two. Thanks, Janne. arch/arm/src/imxrt: Fix some initial compile issues. Still a long way from complete, but there is a buildable environment now for the imxrt1050-evk. configs/imxrt1050-evk: Add an initial NSH configuration for testing. configs/Kconfig: Hook the i.MX RT 1050 board configuration into the NuttX configuration system. configs/imxrt_evk: Add the framework for i.MX RT 1050 board support. arch/arm/src/imxrt: Bring in a few more files from LPC54xxx. arch/arm/src/imxrt: Bring in imxrt_clrpend() from the LPC54xxx. arch/arm/src/imxrt: Bring in Cortex-M7 SysTick setup from the SAMv7. arch/arm/src/imxrt: Add a few easy files. arch/arm/src/imxrt/chip: Add memory map header files. arch/arm/src/imxrt: A few basic files to start the port to the i.MX RT 1050.
2018-04-12 17:31:09 +02:00
*
****************************************************************************/
This commit brings in basic support fo the i.MX RT 1050 'crossover' SoC. The basic support is complete and compiles without error, but is still untested. This port was the joing effort of Janne Rosberg, Ivan Ucherdzhiev, and myself. I give credit to Ivan for the kill because he is the one to held on to the end. Squashed commit of the following: Author: Gregory Nutt <gnutt@nuttx.org> configs/imxrt1050-evk/scripts: Add section to linker script to handle the case where RAMFUNCs are enabled. RAMFUNCs appear to be enabled in the default configuration ... they probably should not be enabled. Author: Ivan Ucherdzhiev <ivanucherdjiev@gmail.com> arch/arm/src/imxrt: imxrt_lowputc.c is finished. Now everything needed for the initial port is done and ready for testing. arch/arm/src/imxrt: Add logic to imxrt_lowputc.c. Still incomplete. Author: Ivan Ucherdzhiev <ivanucherdjiev@gmail.com> arch/arm/src/imxrt: Add serial support. configs/imxrt1050-evk: Add linker script. Author: Gregory Nutt <gnutt@nuttx.org> arch/arm/src/imxrt: Add initial cut at imxrt_allocateheap.c Author: Ivan Ucherdzhiev <ivanucherdjiev@gmail.com> arm/arm/src/imxrt: Completes all definitions for PADMUX, CTLMUX, and IOMUX_INPUT and mapping tables on imxrt_gpio.c and imxr_iomuxc.c. arch/arm/src/imxrt/chip: Add definitions for IMXRT_PADCTL and IMXRT_PADMUX registers. Only the IMXRT_INPUT definitions in this commit. arch/arm/src/imxrt/chip: Add more IOMUXC register definitions. Author: Gregory Nutt <gnutt@nuttx.org> configs/imxrt1050-evk: Add STRIP definition to Make.defs. arch/arm/src/imxrt: Bring in i.MX6 memory configuration settings. arch/arm/src/imxrt: Remove call to non-existent imxrt_gpioinit() from imxrt_start.c. arch/arm/src/imxrt: Bring in incomplete imxrt_iomuxc.c file from i.mx6. arch/arm/src/imxrt: Add first cut at GPIO interrupt logic. arch/arm/include: Add definitions to support a second level of GPIO pin interrupts. Author: Janne Rosberg <janne.rosberg@offcode.fi> arch/arm/src/imxrt: Add imxrt_wdog.c/.h Author: Gregory Nutt <gnutt@nuttx.org> arch/arm/src/imxrt: Port SAMv7 interrupt logic to imxrt_irq.c. arch/arm/src/imxrt: More clarification of the start-up memory map. arch/arm/src/imxrt: Some mostly cosmetic clean-up to the imxrt_start.c file that was so rudely taken from the SAMv7. arch/arm/src/imxrt: Add imxrt_start.c. Initial commit is the the SAMv7 startup logic with name changes. Author: Ivan Ucherdzhiev <ivanucherdjiev@gmail.com> arch/arm/src/imxrt: Adds a few IOMUXC register definitions. Author: Janne Rosberg <janne.rosberg@offcode.fi> arch/arm/src/imxrt: Add imxrt_clockconfig.c/.h configs/imxrt1050-evk: Add clock configuration definitions to board.h arch/arm/src/imxrt: Fix CCM register name; Fix doubly defined in LPUART bit field. arch/arm/src/imxrt: Add analog defines to CCM register definition header file. Author: Gregory Nutt <gnutt@nuttx.org> arch/arm/src/imxrt: Bring in GPIO C files from i.MX6. Things are in disarray now because that GPIO logic depends on IOMUXC logic which is not yet in place. arch/arm/src/imxrt: Add a few more GPIO definitions to make the header file compatible with i.MX6 arch/arm/src/imxrt/chip: Add GPIO register definition file. Author: Janne Rosberg <janne.rosberg@offcode.fi> arch/arm/src/imxrt: Add DCDC register definitions. arch/arm/srch/imxrt: Add CCM register bit definitions Author: Gregory Nutt <gnutt@nuttx.org> Purely cosmetic arch/arm/src/imxrt: Add system reset controller register definition header file. Embarassingly trivial change left in compiler. arch/arm/src/imxrt: Finishes i.MX RT1050 LPUART register definition header file. arch/arm/src/imxrt: Beginning of an i.MX RT1050 LPUART register definition header file. Some trivial things Author: Janne Rosberg <janne.rosberg@offcode.fi> arch/arm/src/imxrt: Add imxrt_wdog.h arch/arm/src/imxrt: Add initial imxrt_ccm.h Author: Gregory Nutt <gnutt@nuttx.org> Trivial update to README. arch/arm/src/imxrt: The i.MX Rt implements 4 bits of interrupt priority, not two. Thanks, Janne. arch/arm/src/imxrt: Fix some initial compile issues. Still a long way from complete, but there is a buildable environment now for the imxrt1050-evk. configs/imxrt1050-evk: Add an initial NSH configuration for testing. configs/Kconfig: Hook the i.MX RT 1050 board configuration into the NuttX configuration system. configs/imxrt_evk: Add the framework for i.MX RT 1050 board support. arch/arm/src/imxrt: Bring in a few more files from LPC54xxx. arch/arm/src/imxrt: Bring in imxrt_clrpend() from the LPC54xxx. arch/arm/src/imxrt: Bring in Cortex-M7 SysTick setup from the SAMv7. arch/arm/src/imxrt: Add a few easy files. arch/arm/src/imxrt/chip: Add memory map header files. arch/arm/src/imxrt: A few basic files to start the port to the i.MX RT 1050.
2018-04-12 17:31:09 +02:00
#ifndef __ARCH_ARM_INCLUDE_IMXRT_CHIP_H
#define __ARCH_ARM_INCLUDE_IMXRT_CHIP_H
/****************************************************************************
This commit brings in basic support fo the i.MX RT 1050 'crossover' SoC. The basic support is complete and compiles without error, but is still untested. This port was the joing effort of Janne Rosberg, Ivan Ucherdzhiev, and myself. I give credit to Ivan for the kill because he is the one to held on to the end. Squashed commit of the following: Author: Gregory Nutt <gnutt@nuttx.org> configs/imxrt1050-evk/scripts: Add section to linker script to handle the case where RAMFUNCs are enabled. RAMFUNCs appear to be enabled in the default configuration ... they probably should not be enabled. Author: Ivan Ucherdzhiev <ivanucherdjiev@gmail.com> arch/arm/src/imxrt: imxrt_lowputc.c is finished. Now everything needed for the initial port is done and ready for testing. arch/arm/src/imxrt: Add logic to imxrt_lowputc.c. Still incomplete. Author: Ivan Ucherdzhiev <ivanucherdjiev@gmail.com> arch/arm/src/imxrt: Add serial support. configs/imxrt1050-evk: Add linker script. Author: Gregory Nutt <gnutt@nuttx.org> arch/arm/src/imxrt: Add initial cut at imxrt_allocateheap.c Author: Ivan Ucherdzhiev <ivanucherdjiev@gmail.com> arm/arm/src/imxrt: Completes all definitions for PADMUX, CTLMUX, and IOMUX_INPUT and mapping tables on imxrt_gpio.c and imxr_iomuxc.c. arch/arm/src/imxrt/chip: Add definitions for IMXRT_PADCTL and IMXRT_PADMUX registers. Only the IMXRT_INPUT definitions in this commit. arch/arm/src/imxrt/chip: Add more IOMUXC register definitions. Author: Gregory Nutt <gnutt@nuttx.org> configs/imxrt1050-evk: Add STRIP definition to Make.defs. arch/arm/src/imxrt: Bring in i.MX6 memory configuration settings. arch/arm/src/imxrt: Remove call to non-existent imxrt_gpioinit() from imxrt_start.c. arch/arm/src/imxrt: Bring in incomplete imxrt_iomuxc.c file from i.mx6. arch/arm/src/imxrt: Add first cut at GPIO interrupt logic. arch/arm/include: Add definitions to support a second level of GPIO pin interrupts. Author: Janne Rosberg <janne.rosberg@offcode.fi> arch/arm/src/imxrt: Add imxrt_wdog.c/.h Author: Gregory Nutt <gnutt@nuttx.org> arch/arm/src/imxrt: Port SAMv7 interrupt logic to imxrt_irq.c. arch/arm/src/imxrt: More clarification of the start-up memory map. arch/arm/src/imxrt: Some mostly cosmetic clean-up to the imxrt_start.c file that was so rudely taken from the SAMv7. arch/arm/src/imxrt: Add imxrt_start.c. Initial commit is the the SAMv7 startup logic with name changes. Author: Ivan Ucherdzhiev <ivanucherdjiev@gmail.com> arch/arm/src/imxrt: Adds a few IOMUXC register definitions. Author: Janne Rosberg <janne.rosberg@offcode.fi> arch/arm/src/imxrt: Add imxrt_clockconfig.c/.h configs/imxrt1050-evk: Add clock configuration definitions to board.h arch/arm/src/imxrt: Fix CCM register name; Fix doubly defined in LPUART bit field. arch/arm/src/imxrt: Add analog defines to CCM register definition header file. Author: Gregory Nutt <gnutt@nuttx.org> arch/arm/src/imxrt: Bring in GPIO C files from i.MX6. Things are in disarray now because that GPIO logic depends on IOMUXC logic which is not yet in place. arch/arm/src/imxrt: Add a few more GPIO definitions to make the header file compatible with i.MX6 arch/arm/src/imxrt/chip: Add GPIO register definition file. Author: Janne Rosberg <janne.rosberg@offcode.fi> arch/arm/src/imxrt: Add DCDC register definitions. arch/arm/srch/imxrt: Add CCM register bit definitions Author: Gregory Nutt <gnutt@nuttx.org> Purely cosmetic arch/arm/src/imxrt: Add system reset controller register definition header file. Embarassingly trivial change left in compiler. arch/arm/src/imxrt: Finishes i.MX RT1050 LPUART register definition header file. arch/arm/src/imxrt: Beginning of an i.MX RT1050 LPUART register definition header file. Some trivial things Author: Janne Rosberg <janne.rosberg@offcode.fi> arch/arm/src/imxrt: Add imxrt_wdog.h arch/arm/src/imxrt: Add initial imxrt_ccm.h Author: Gregory Nutt <gnutt@nuttx.org> Trivial update to README. arch/arm/src/imxrt: The i.MX Rt implements 4 bits of interrupt priority, not two. Thanks, Janne. arch/arm/src/imxrt: Fix some initial compile issues. Still a long way from complete, but there is a buildable environment now for the imxrt1050-evk. configs/imxrt1050-evk: Add an initial NSH configuration for testing. configs/Kconfig: Hook the i.MX RT 1050 board configuration into the NuttX configuration system. configs/imxrt_evk: Add the framework for i.MX RT 1050 board support. arch/arm/src/imxrt: Bring in a few more files from LPC54xxx. arch/arm/src/imxrt: Bring in imxrt_clrpend() from the LPC54xxx. arch/arm/src/imxrt: Bring in Cortex-M7 SysTick setup from the SAMv7. arch/arm/src/imxrt: Add a few easy files. arch/arm/src/imxrt/chip: Add memory map header files. arch/arm/src/imxrt: A few basic files to start the port to the i.MX RT 1050.
2018-04-12 17:31:09 +02:00
* Included Files
****************************************************************************/
This commit brings in basic support fo the i.MX RT 1050 'crossover' SoC. The basic support is complete and compiles without error, but is still untested. This port was the joing effort of Janne Rosberg, Ivan Ucherdzhiev, and myself. I give credit to Ivan for the kill because he is the one to held on to the end. Squashed commit of the following: Author: Gregory Nutt <gnutt@nuttx.org> configs/imxrt1050-evk/scripts: Add section to linker script to handle the case where RAMFUNCs are enabled. RAMFUNCs appear to be enabled in the default configuration ... they probably should not be enabled. Author: Ivan Ucherdzhiev <ivanucherdjiev@gmail.com> arch/arm/src/imxrt: imxrt_lowputc.c is finished. Now everything needed for the initial port is done and ready for testing. arch/arm/src/imxrt: Add logic to imxrt_lowputc.c. Still incomplete. Author: Ivan Ucherdzhiev <ivanucherdjiev@gmail.com> arch/arm/src/imxrt: Add serial support. configs/imxrt1050-evk: Add linker script. Author: Gregory Nutt <gnutt@nuttx.org> arch/arm/src/imxrt: Add initial cut at imxrt_allocateheap.c Author: Ivan Ucherdzhiev <ivanucherdjiev@gmail.com> arm/arm/src/imxrt: Completes all definitions for PADMUX, CTLMUX, and IOMUX_INPUT and mapping tables on imxrt_gpio.c and imxr_iomuxc.c. arch/arm/src/imxrt/chip: Add definitions for IMXRT_PADCTL and IMXRT_PADMUX registers. Only the IMXRT_INPUT definitions in this commit. arch/arm/src/imxrt/chip: Add more IOMUXC register definitions. Author: Gregory Nutt <gnutt@nuttx.org> configs/imxrt1050-evk: Add STRIP definition to Make.defs. arch/arm/src/imxrt: Bring in i.MX6 memory configuration settings. arch/arm/src/imxrt: Remove call to non-existent imxrt_gpioinit() from imxrt_start.c. arch/arm/src/imxrt: Bring in incomplete imxrt_iomuxc.c file from i.mx6. arch/arm/src/imxrt: Add first cut at GPIO interrupt logic. arch/arm/include: Add definitions to support a second level of GPIO pin interrupts. Author: Janne Rosberg <janne.rosberg@offcode.fi> arch/arm/src/imxrt: Add imxrt_wdog.c/.h Author: Gregory Nutt <gnutt@nuttx.org> arch/arm/src/imxrt: Port SAMv7 interrupt logic to imxrt_irq.c. arch/arm/src/imxrt: More clarification of the start-up memory map. arch/arm/src/imxrt: Some mostly cosmetic clean-up to the imxrt_start.c file that was so rudely taken from the SAMv7. arch/arm/src/imxrt: Add imxrt_start.c. Initial commit is the the SAMv7 startup logic with name changes. Author: Ivan Ucherdzhiev <ivanucherdjiev@gmail.com> arch/arm/src/imxrt: Adds a few IOMUXC register definitions. Author: Janne Rosberg <janne.rosberg@offcode.fi> arch/arm/src/imxrt: Add imxrt_clockconfig.c/.h configs/imxrt1050-evk: Add clock configuration definitions to board.h arch/arm/src/imxrt: Fix CCM register name; Fix doubly defined in LPUART bit field. arch/arm/src/imxrt: Add analog defines to CCM register definition header file. Author: Gregory Nutt <gnutt@nuttx.org> arch/arm/src/imxrt: Bring in GPIO C files from i.MX6. Things are in disarray now because that GPIO logic depends on IOMUXC logic which is not yet in place. arch/arm/src/imxrt: Add a few more GPIO definitions to make the header file compatible with i.MX6 arch/arm/src/imxrt/chip: Add GPIO register definition file. Author: Janne Rosberg <janne.rosberg@offcode.fi> arch/arm/src/imxrt: Add DCDC register definitions. arch/arm/srch/imxrt: Add CCM register bit definitions Author: Gregory Nutt <gnutt@nuttx.org> Purely cosmetic arch/arm/src/imxrt: Add system reset controller register definition header file. Embarassingly trivial change left in compiler. arch/arm/src/imxrt: Finishes i.MX RT1050 LPUART register definition header file. arch/arm/src/imxrt: Beginning of an i.MX RT1050 LPUART register definition header file. Some trivial things Author: Janne Rosberg <janne.rosberg@offcode.fi> arch/arm/src/imxrt: Add imxrt_wdog.h arch/arm/src/imxrt: Add initial imxrt_ccm.h Author: Gregory Nutt <gnutt@nuttx.org> Trivial update to README. arch/arm/src/imxrt: The i.MX Rt implements 4 bits of interrupt priority, not two. Thanks, Janne. arch/arm/src/imxrt: Fix some initial compile issues. Still a long way from complete, but there is a buildable environment now for the imxrt1050-evk. configs/imxrt1050-evk: Add an initial NSH configuration for testing. configs/Kconfig: Hook the i.MX RT 1050 board configuration into the NuttX configuration system. configs/imxrt_evk: Add the framework for i.MX RT 1050 board support. arch/arm/src/imxrt: Bring in a few more files from LPC54xxx. arch/arm/src/imxrt: Bring in imxrt_clrpend() from the LPC54xxx. arch/arm/src/imxrt: Bring in Cortex-M7 SysTick setup from the SAMv7. arch/arm/src/imxrt: Add a few easy files. arch/arm/src/imxrt/chip: Add memory map header files. arch/arm/src/imxrt: A few basic files to start the port to the i.MX RT 1050.
2018-04-12 17:31:09 +02:00
#include <nuttx/config.h>
/****************************************************************************
* Pre-processor Prototypes
****************************************************************************/
This commit brings in basic support fo the i.MX RT 1050 'crossover' SoC. The basic support is complete and compiles without error, but is still untested. This port was the joing effort of Janne Rosberg, Ivan Ucherdzhiev, and myself. I give credit to Ivan for the kill because he is the one to held on to the end. Squashed commit of the following: Author: Gregory Nutt <gnutt@nuttx.org> configs/imxrt1050-evk/scripts: Add section to linker script to handle the case where RAMFUNCs are enabled. RAMFUNCs appear to be enabled in the default configuration ... they probably should not be enabled. Author: Ivan Ucherdzhiev <ivanucherdjiev@gmail.com> arch/arm/src/imxrt: imxrt_lowputc.c is finished. Now everything needed for the initial port is done and ready for testing. arch/arm/src/imxrt: Add logic to imxrt_lowputc.c. Still incomplete. Author: Ivan Ucherdzhiev <ivanucherdjiev@gmail.com> arch/arm/src/imxrt: Add serial support. configs/imxrt1050-evk: Add linker script. Author: Gregory Nutt <gnutt@nuttx.org> arch/arm/src/imxrt: Add initial cut at imxrt_allocateheap.c Author: Ivan Ucherdzhiev <ivanucherdjiev@gmail.com> arm/arm/src/imxrt: Completes all definitions for PADMUX, CTLMUX, and IOMUX_INPUT and mapping tables on imxrt_gpio.c and imxr_iomuxc.c. arch/arm/src/imxrt/chip: Add definitions for IMXRT_PADCTL and IMXRT_PADMUX registers. Only the IMXRT_INPUT definitions in this commit. arch/arm/src/imxrt/chip: Add more IOMUXC register definitions. Author: Gregory Nutt <gnutt@nuttx.org> configs/imxrt1050-evk: Add STRIP definition to Make.defs. arch/arm/src/imxrt: Bring in i.MX6 memory configuration settings. arch/arm/src/imxrt: Remove call to non-existent imxrt_gpioinit() from imxrt_start.c. arch/arm/src/imxrt: Bring in incomplete imxrt_iomuxc.c file from i.mx6. arch/arm/src/imxrt: Add first cut at GPIO interrupt logic. arch/arm/include: Add definitions to support a second level of GPIO pin interrupts. Author: Janne Rosberg <janne.rosberg@offcode.fi> arch/arm/src/imxrt: Add imxrt_wdog.c/.h Author: Gregory Nutt <gnutt@nuttx.org> arch/arm/src/imxrt: Port SAMv7 interrupt logic to imxrt_irq.c. arch/arm/src/imxrt: More clarification of the start-up memory map. arch/arm/src/imxrt: Some mostly cosmetic clean-up to the imxrt_start.c file that was so rudely taken from the SAMv7. arch/arm/src/imxrt: Add imxrt_start.c. Initial commit is the the SAMv7 startup logic with name changes. Author: Ivan Ucherdzhiev <ivanucherdjiev@gmail.com> arch/arm/src/imxrt: Adds a few IOMUXC register definitions. Author: Janne Rosberg <janne.rosberg@offcode.fi> arch/arm/src/imxrt: Add imxrt_clockconfig.c/.h configs/imxrt1050-evk: Add clock configuration definitions to board.h arch/arm/src/imxrt: Fix CCM register name; Fix doubly defined in LPUART bit field. arch/arm/src/imxrt: Add analog defines to CCM register definition header file. Author: Gregory Nutt <gnutt@nuttx.org> arch/arm/src/imxrt: Bring in GPIO C files from i.MX6. Things are in disarray now because that GPIO logic depends on IOMUXC logic which is not yet in place. arch/arm/src/imxrt: Add a few more GPIO definitions to make the header file compatible with i.MX6 arch/arm/src/imxrt/chip: Add GPIO register definition file. Author: Janne Rosberg <janne.rosberg@offcode.fi> arch/arm/src/imxrt: Add DCDC register definitions. arch/arm/srch/imxrt: Add CCM register bit definitions Author: Gregory Nutt <gnutt@nuttx.org> Purely cosmetic arch/arm/src/imxrt: Add system reset controller register definition header file. Embarassingly trivial change left in compiler. arch/arm/src/imxrt: Finishes i.MX RT1050 LPUART register definition header file. arch/arm/src/imxrt: Beginning of an i.MX RT1050 LPUART register definition header file. Some trivial things Author: Janne Rosberg <janne.rosberg@offcode.fi> arch/arm/src/imxrt: Add imxrt_wdog.h arch/arm/src/imxrt: Add initial imxrt_ccm.h Author: Gregory Nutt <gnutt@nuttx.org> Trivial update to README. arch/arm/src/imxrt: The i.MX Rt implements 4 bits of interrupt priority, not two. Thanks, Janne. arch/arm/src/imxrt: Fix some initial compile issues. Still a long way from complete, but there is a buildable environment now for the imxrt1050-evk. configs/imxrt1050-evk: Add an initial NSH configuration for testing. configs/Kconfig: Hook the i.MX RT 1050 board configuration into the NuttX configuration system. configs/imxrt_evk: Add the framework for i.MX RT 1050 board support. arch/arm/src/imxrt: Bring in a few more files from LPC54xxx. arch/arm/src/imxrt: Bring in imxrt_clrpend() from the LPC54xxx. arch/arm/src/imxrt: Bring in Cortex-M7 SysTick setup from the SAMv7. arch/arm/src/imxrt: Add a few easy files. arch/arm/src/imxrt/chip: Add memory map header files. arch/arm/src/imxrt: A few basic files to start the port to the i.MX RT 1050.
2018-04-12 17:31:09 +02:00
/* Get customizations for each supported chip */
2019-05-01 00:08:46 +02:00
#if defined(CONFIG_ARCH_CHIP_MIMXRT1021CAG4A) || \
defined(CONFIG_ARCH_CHIP_MIMXRT1021CAF4A) || \
defined(CONFIG_ARCH_CHIP_MIMXRT1021DAF5A) || \
defined(CONFIG_ARCH_CHIP_MIMXRT1021DAG5A)
/* MIMXRT1021CAG4A - 144 pin, 400MHz Industrial
* MIMXRT1021CAF4A - 100 pin, 400MHz Industrial
* MIMXRT1021DAF5A - 100 pin, 500MHz Consumer
* MIMXRT1021DAG5A - 144 pin, 500MHz Consumer
*/
# define IMXRT_OCRAM_SIZE (256 * 1024) /* 256Kb OCRAM */
# define IMXRT_GPIO_NPORTS 5 /* Five total ports */
/* but 4 doesn't exist */
#elif defined(CONFIG_ARCH_CHIP_MIMXRT1051DVL6A) || \
defined(CONFIG_ARCH_CHIP_MIMXRT1051CVL5A) || \
defined(CONFIG_ARCH_CHIP_MIMXRT1052DVL6A) || \
defined(CONFIG_ARCH_CHIP_MIMXRT1052CVL5A)
/* MIMXRT1051CVL5A - Industrial, Reduced Features, 528MHz
* MIMXRT1051DVL6A - Consumer, Reduced Features, 600MHz
* MIMXRT1052CVL5A - Industrial, Full Feature, 528MHz
* MIMXRT1052DVL6A - Consumer, Full Feature, 600MHz
*/
This commit brings in basic support fo the i.MX RT 1050 'crossover' SoC. The basic support is complete and compiles without error, but is still untested. This port was the joing effort of Janne Rosberg, Ivan Ucherdzhiev, and myself. I give credit to Ivan for the kill because he is the one to held on to the end. Squashed commit of the following: Author: Gregory Nutt <gnutt@nuttx.org> configs/imxrt1050-evk/scripts: Add section to linker script to handle the case where RAMFUNCs are enabled. RAMFUNCs appear to be enabled in the default configuration ... they probably should not be enabled. Author: Ivan Ucherdzhiev <ivanucherdjiev@gmail.com> arch/arm/src/imxrt: imxrt_lowputc.c is finished. Now everything needed for the initial port is done and ready for testing. arch/arm/src/imxrt: Add logic to imxrt_lowputc.c. Still incomplete. Author: Ivan Ucherdzhiev <ivanucherdjiev@gmail.com> arch/arm/src/imxrt: Add serial support. configs/imxrt1050-evk: Add linker script. Author: Gregory Nutt <gnutt@nuttx.org> arch/arm/src/imxrt: Add initial cut at imxrt_allocateheap.c Author: Ivan Ucherdzhiev <ivanucherdjiev@gmail.com> arm/arm/src/imxrt: Completes all definitions for PADMUX, CTLMUX, and IOMUX_INPUT and mapping tables on imxrt_gpio.c and imxr_iomuxc.c. arch/arm/src/imxrt/chip: Add definitions for IMXRT_PADCTL and IMXRT_PADMUX registers. Only the IMXRT_INPUT definitions in this commit. arch/arm/src/imxrt/chip: Add more IOMUXC register definitions. Author: Gregory Nutt <gnutt@nuttx.org> configs/imxrt1050-evk: Add STRIP definition to Make.defs. arch/arm/src/imxrt: Bring in i.MX6 memory configuration settings. arch/arm/src/imxrt: Remove call to non-existent imxrt_gpioinit() from imxrt_start.c. arch/arm/src/imxrt: Bring in incomplete imxrt_iomuxc.c file from i.mx6. arch/arm/src/imxrt: Add first cut at GPIO interrupt logic. arch/arm/include: Add definitions to support a second level of GPIO pin interrupts. Author: Janne Rosberg <janne.rosberg@offcode.fi> arch/arm/src/imxrt: Add imxrt_wdog.c/.h Author: Gregory Nutt <gnutt@nuttx.org> arch/arm/src/imxrt: Port SAMv7 interrupt logic to imxrt_irq.c. arch/arm/src/imxrt: More clarification of the start-up memory map. arch/arm/src/imxrt: Some mostly cosmetic clean-up to the imxrt_start.c file that was so rudely taken from the SAMv7. arch/arm/src/imxrt: Add imxrt_start.c. Initial commit is the the SAMv7 startup logic with name changes. Author: Ivan Ucherdzhiev <ivanucherdjiev@gmail.com> arch/arm/src/imxrt: Adds a few IOMUXC register definitions. Author: Janne Rosberg <janne.rosberg@offcode.fi> arch/arm/src/imxrt: Add imxrt_clockconfig.c/.h configs/imxrt1050-evk: Add clock configuration definitions to board.h arch/arm/src/imxrt: Fix CCM register name; Fix doubly defined in LPUART bit field. arch/arm/src/imxrt: Add analog defines to CCM register definition header file. Author: Gregory Nutt <gnutt@nuttx.org> arch/arm/src/imxrt: Bring in GPIO C files from i.MX6. Things are in disarray now because that GPIO logic depends on IOMUXC logic which is not yet in place. arch/arm/src/imxrt: Add a few more GPIO definitions to make the header file compatible with i.MX6 arch/arm/src/imxrt/chip: Add GPIO register definition file. Author: Janne Rosberg <janne.rosberg@offcode.fi> arch/arm/src/imxrt: Add DCDC register definitions. arch/arm/srch/imxrt: Add CCM register bit definitions Author: Gregory Nutt <gnutt@nuttx.org> Purely cosmetic arch/arm/src/imxrt: Add system reset controller register definition header file. Embarassingly trivial change left in compiler. arch/arm/src/imxrt: Finishes i.MX RT1050 LPUART register definition header file. arch/arm/src/imxrt: Beginning of an i.MX RT1050 LPUART register definition header file. Some trivial things Author: Janne Rosberg <janne.rosberg@offcode.fi> arch/arm/src/imxrt: Add imxrt_wdog.h arch/arm/src/imxrt: Add initial imxrt_ccm.h Author: Gregory Nutt <gnutt@nuttx.org> Trivial update to README. arch/arm/src/imxrt: The i.MX Rt implements 4 bits of interrupt priority, not two. Thanks, Janne. arch/arm/src/imxrt: Fix some initial compile issues. Still a long way from complete, but there is a buildable environment now for the imxrt1050-evk. configs/imxrt1050-evk: Add an initial NSH configuration for testing. configs/Kconfig: Hook the i.MX RT 1050 board configuration into the NuttX configuration system. configs/imxrt_evk: Add the framework for i.MX RT 1050 board support. arch/arm/src/imxrt: Bring in a few more files from LPC54xxx. arch/arm/src/imxrt: Bring in imxrt_clrpend() from the LPC54xxx. arch/arm/src/imxrt: Bring in Cortex-M7 SysTick setup from the SAMv7. arch/arm/src/imxrt: Add a few easy files. arch/arm/src/imxrt/chip: Add memory map header files. arch/arm/src/imxrt: A few basic files to start the port to the i.MX RT 1050.
2018-04-12 17:31:09 +02:00
# define IMXRT_OCRAM_SIZE (512 * 1024) /* 512Kb OCRAM */
# define IMXRT_GPIO_NPORTS 5 /* Five total ports */
#elif defined(CONFIG_ARCH_CHIP_MIMXRT1061DVL6A) || \
2019-05-01 00:08:46 +02:00
defined(CONFIG_ARCH_CHIP_MIMXRT1061CVL5A) || \
defined(CONFIG_ARCH_CHIP_MIMXRT1062DVL6A) || \
2021-04-06 21:19:41 +02:00
defined(CONFIG_ARCH_CHIP_MIMXRT1062CVL5A) || \
defined(CONFIG_ARCH_CHIP_MIMXRT1064DVL6A) || \
defined(CONFIG_ARCH_CHIP_MIMXRT1064CVL5A)
/* MIMXRT1061CVL5A - Industrial, Reduced Features, 528MHz
* MIMXRT1061DVL6A - Consumer, Reduced Features, 600MHz
* MIMXRT1062CVL5A - Industrial, Full Feature, 528MHz
* MIMXRT1062DVL6A - Consumer, Full Feature, 600MHz
2021-04-06 21:19:41 +02:00
* MIMXRT1064CVL5A - Industrial, Full Feature, 528MHz
* MIMXRT1064DVL6A - Consumer, Full Feature, 600MHz
*/
# define IMXRT_OCRAM_SIZE (1024 * 1024) /* 1024Kb OCRAM */
# define IMXRT_GPIO_NPORTS 9 /* Nine total ports */
Base IMXRT1170 port Co-authored-by: Jari van Ewijk <jari.vanewijk@nxp.com> Co-authored-by: David Sidrane <david.sidrane@nscdg.com> Co-authored-by: Peter van der Perk <peter.vanderperk@nxp.com> imxrt:Kconfig fix formatting imxrt:usbphy move IMXRT_USBPHY{1|[2]}_BASE to memory map imxrt:lpspi Fix build breakage from adding 1170 imxrt:Finish 1170 iomux and clockconfig versioning imxrt:Remove duplicate imxrt_clock{off|all}_lpi2c4 imxrt:pmu remove duplicate dcd non 117x header imxrt:lpspi Fix unused var warnings imxrt:lpi2c Fix unused var warnings imxrt:lowputs Fix unused var warnings imxrt:imxrt117x_dmamux fix duplicate entries imxtr:serial Use IOMUX_PULL_{UP|DOWN} and map IOMUX V1 to them imxrt:MPU Support the 1170 imxrt:dmamux Alias IMXRT_DMAMUX0_BASE as IMXRT_DMAMUX_BASE imx1170:ccm Alias CCM_CCGR_DMA & CCM_CCGR_SNVS_LP for compatiblity Author: Peter van der Perk <peter.vanderperk@nxp.com> IMXRT7 Add LPUART 9/10/11/12 support Author: David Sidrane <david.sidrane@nscdg.com> imxrt:1170pinmux Add QTIMER pins imxrt:1170pinmux Add GPT pins imxrt:1170pinmux Add FLEXPWM pins imxrt1170:pinmap Add GPIO_ENET_1G pinning imxrt:enet Support ENET_1G imxrt:periphclks rt1170 does not have canX_serial clock imxrt:flexcan:Layer imxrt_ioctl imxrt117x:memorymap added CAN3 imxrt:ADC support ver1 and ver2 for imxrt117x imxrt:imxrt117x_ccm Align timer naming with other imxrt QTIMERn->TIMERn imxrt:imxrt117x_ccm align CCM names with rt106x imxrt:XBAR support larger number of selects needed on imxrt1170 Co-authored-by: Peter van der Perk <peter.vanderperk@nxp.com> FlexSPI AHB Region support, PIT rename for compatiblity imxrt:USB Analog add VBUS_VALID_3V FlexSPI expand prefetch registers for IMXRT117X imxrt:Support Initialization of FlexRam without Running from OCRAM imxrt: ocotp add UNIQUE_ID register definition imxrt: enet use ocotp unique_id imxrt: enet fixes for imxrt117x imxrt: ethernet pinmux sion enable imxrt:imxrt_periphclk_configure add memory sync Flush the pipeline to prevent bus faults, by insuring a peripheral is clocked before being accessed on return from this function. imxrt:Restructure gpioN to padmux mapping imxrt:Add imxrt1170 daisy imxrt: correct power modes for imxrt117x fixing hang on WFI imxrt: imxrt117x TCM MPU config imxrt: FlexRAM clocking DIV0 setup imxrt: 117x periphclocks wait for status bit imxrt: iomucx set pad settings correctly and allow reconfiguration imxrt: enet align buffers 64-byte for optimal performance Add DSC barriers for write-through cache support imxrt: imxrt1170 use FlexCAN FD/ECC features imxrt:iomuxc_ver2 (117x) SD_B1 and DISP_B1 use PULL feild not PUE/PUS imxrt:Fix 1170 SNVS addressing imxrt: enet set mii clock after ifdown so that phy keep working nxstyle fixes imxrt: preprocessor and include fixes Fix configs imxrt1170-evk clean defconfig
2023-01-25 15:40:00 +01:00
#elif defined(CONFIG_ARCH_CHIP_MIMXRT1176DVMAA)
/* MIMXRT1170DVMA TODO
*/
# define IMXRT_GPIO_NPORTS 13 /* Thirteen total ports */
This commit brings in basic support fo the i.MX RT 1050 'crossover' SoC. The basic support is complete and compiles without error, but is still untested. This port was the joing effort of Janne Rosberg, Ivan Ucherdzhiev, and myself. I give credit to Ivan for the kill because he is the one to held on to the end. Squashed commit of the following: Author: Gregory Nutt <gnutt@nuttx.org> configs/imxrt1050-evk/scripts: Add section to linker script to handle the case where RAMFUNCs are enabled. RAMFUNCs appear to be enabled in the default configuration ... they probably should not be enabled. Author: Ivan Ucherdzhiev <ivanucherdjiev@gmail.com> arch/arm/src/imxrt: imxrt_lowputc.c is finished. Now everything needed for the initial port is done and ready for testing. arch/arm/src/imxrt: Add logic to imxrt_lowputc.c. Still incomplete. Author: Ivan Ucherdzhiev <ivanucherdjiev@gmail.com> arch/arm/src/imxrt: Add serial support. configs/imxrt1050-evk: Add linker script. Author: Gregory Nutt <gnutt@nuttx.org> arch/arm/src/imxrt: Add initial cut at imxrt_allocateheap.c Author: Ivan Ucherdzhiev <ivanucherdjiev@gmail.com> arm/arm/src/imxrt: Completes all definitions for PADMUX, CTLMUX, and IOMUX_INPUT and mapping tables on imxrt_gpio.c and imxr_iomuxc.c. arch/arm/src/imxrt/chip: Add definitions for IMXRT_PADCTL and IMXRT_PADMUX registers. Only the IMXRT_INPUT definitions in this commit. arch/arm/src/imxrt/chip: Add more IOMUXC register definitions. Author: Gregory Nutt <gnutt@nuttx.org> configs/imxrt1050-evk: Add STRIP definition to Make.defs. arch/arm/src/imxrt: Bring in i.MX6 memory configuration settings. arch/arm/src/imxrt: Remove call to non-existent imxrt_gpioinit() from imxrt_start.c. arch/arm/src/imxrt: Bring in incomplete imxrt_iomuxc.c file from i.mx6. arch/arm/src/imxrt: Add first cut at GPIO interrupt logic. arch/arm/include: Add definitions to support a second level of GPIO pin interrupts. Author: Janne Rosberg <janne.rosberg@offcode.fi> arch/arm/src/imxrt: Add imxrt_wdog.c/.h Author: Gregory Nutt <gnutt@nuttx.org> arch/arm/src/imxrt: Port SAMv7 interrupt logic to imxrt_irq.c. arch/arm/src/imxrt: More clarification of the start-up memory map. arch/arm/src/imxrt: Some mostly cosmetic clean-up to the imxrt_start.c file that was so rudely taken from the SAMv7. arch/arm/src/imxrt: Add imxrt_start.c. Initial commit is the the SAMv7 startup logic with name changes. Author: Ivan Ucherdzhiev <ivanucherdjiev@gmail.com> arch/arm/src/imxrt: Adds a few IOMUXC register definitions. Author: Janne Rosberg <janne.rosberg@offcode.fi> arch/arm/src/imxrt: Add imxrt_clockconfig.c/.h configs/imxrt1050-evk: Add clock configuration definitions to board.h arch/arm/src/imxrt: Fix CCM register name; Fix doubly defined in LPUART bit field. arch/arm/src/imxrt: Add analog defines to CCM register definition header file. Author: Gregory Nutt <gnutt@nuttx.org> arch/arm/src/imxrt: Bring in GPIO C files from i.MX6. Things are in disarray now because that GPIO logic depends on IOMUXC logic which is not yet in place. arch/arm/src/imxrt: Add a few more GPIO definitions to make the header file compatible with i.MX6 arch/arm/src/imxrt/chip: Add GPIO register definition file. Author: Janne Rosberg <janne.rosberg@offcode.fi> arch/arm/src/imxrt: Add DCDC register definitions. arch/arm/srch/imxrt: Add CCM register bit definitions Author: Gregory Nutt <gnutt@nuttx.org> Purely cosmetic arch/arm/src/imxrt: Add system reset controller register definition header file. Embarassingly trivial change left in compiler. arch/arm/src/imxrt: Finishes i.MX RT1050 LPUART register definition header file. arch/arm/src/imxrt: Beginning of an i.MX RT1050 LPUART register definition header file. Some trivial things Author: Janne Rosberg <janne.rosberg@offcode.fi> arch/arm/src/imxrt: Add imxrt_wdog.h arch/arm/src/imxrt: Add initial imxrt_ccm.h Author: Gregory Nutt <gnutt@nuttx.org> Trivial update to README. arch/arm/src/imxrt: The i.MX Rt implements 4 bits of interrupt priority, not two. Thanks, Janne. arch/arm/src/imxrt: Fix some initial compile issues. Still a long way from complete, but there is a buildable environment now for the imxrt1050-evk. configs/imxrt1050-evk: Add an initial NSH configuration for testing. configs/Kconfig: Hook the i.MX RT 1050 board configuration into the NuttX configuration system. configs/imxrt_evk: Add the framework for i.MX RT 1050 board support. arch/arm/src/imxrt: Bring in a few more files from LPC54xxx. arch/arm/src/imxrt: Bring in imxrt_clrpend() from the LPC54xxx. arch/arm/src/imxrt: Bring in Cortex-M7 SysTick setup from the SAMv7. arch/arm/src/imxrt: Add a few easy files. arch/arm/src/imxrt/chip: Add memory map header files. arch/arm/src/imxrt: A few basic files to start the port to the i.MX RT 1050.
2018-04-12 17:31:09 +02:00
#else
# error "Unknown i.MX RT chip type"
#endif
/* NVIC priority levels *****************************************************/
2019-05-01 00:08:46 +02:00
/* Each priority field holds an 8-bit priority value, 0-15. The lower the
* value, the greater the priority of the corresponding interrupt. The i.MX
* RT processor implements only bits[7:4] of each field, bits[3:0] read as
* zero and ignore writes.
This commit brings in basic support fo the i.MX RT 1050 'crossover' SoC. The basic support is complete and compiles without error, but is still untested. This port was the joing effort of Janne Rosberg, Ivan Ucherdzhiev, and myself. I give credit to Ivan for the kill because he is the one to held on to the end. Squashed commit of the following: Author: Gregory Nutt <gnutt@nuttx.org> configs/imxrt1050-evk/scripts: Add section to linker script to handle the case where RAMFUNCs are enabled. RAMFUNCs appear to be enabled in the default configuration ... they probably should not be enabled. Author: Ivan Ucherdzhiev <ivanucherdjiev@gmail.com> arch/arm/src/imxrt: imxrt_lowputc.c is finished. Now everything needed for the initial port is done and ready for testing. arch/arm/src/imxrt: Add logic to imxrt_lowputc.c. Still incomplete. Author: Ivan Ucherdzhiev <ivanucherdjiev@gmail.com> arch/arm/src/imxrt: Add serial support. configs/imxrt1050-evk: Add linker script. Author: Gregory Nutt <gnutt@nuttx.org> arch/arm/src/imxrt: Add initial cut at imxrt_allocateheap.c Author: Ivan Ucherdzhiev <ivanucherdjiev@gmail.com> arm/arm/src/imxrt: Completes all definitions for PADMUX, CTLMUX, and IOMUX_INPUT and mapping tables on imxrt_gpio.c and imxr_iomuxc.c. arch/arm/src/imxrt/chip: Add definitions for IMXRT_PADCTL and IMXRT_PADMUX registers. Only the IMXRT_INPUT definitions in this commit. arch/arm/src/imxrt/chip: Add more IOMUXC register definitions. Author: Gregory Nutt <gnutt@nuttx.org> configs/imxrt1050-evk: Add STRIP definition to Make.defs. arch/arm/src/imxrt: Bring in i.MX6 memory configuration settings. arch/arm/src/imxrt: Remove call to non-existent imxrt_gpioinit() from imxrt_start.c. arch/arm/src/imxrt: Bring in incomplete imxrt_iomuxc.c file from i.mx6. arch/arm/src/imxrt: Add first cut at GPIO interrupt logic. arch/arm/include: Add definitions to support a second level of GPIO pin interrupts. Author: Janne Rosberg <janne.rosberg@offcode.fi> arch/arm/src/imxrt: Add imxrt_wdog.c/.h Author: Gregory Nutt <gnutt@nuttx.org> arch/arm/src/imxrt: Port SAMv7 interrupt logic to imxrt_irq.c. arch/arm/src/imxrt: More clarification of the start-up memory map. arch/arm/src/imxrt: Some mostly cosmetic clean-up to the imxrt_start.c file that was so rudely taken from the SAMv7. arch/arm/src/imxrt: Add imxrt_start.c. Initial commit is the the SAMv7 startup logic with name changes. Author: Ivan Ucherdzhiev <ivanucherdjiev@gmail.com> arch/arm/src/imxrt: Adds a few IOMUXC register definitions. Author: Janne Rosberg <janne.rosberg@offcode.fi> arch/arm/src/imxrt: Add imxrt_clockconfig.c/.h configs/imxrt1050-evk: Add clock configuration definitions to board.h arch/arm/src/imxrt: Fix CCM register name; Fix doubly defined in LPUART bit field. arch/arm/src/imxrt: Add analog defines to CCM register definition header file. Author: Gregory Nutt <gnutt@nuttx.org> arch/arm/src/imxrt: Bring in GPIO C files from i.MX6. Things are in disarray now because that GPIO logic depends on IOMUXC logic which is not yet in place. arch/arm/src/imxrt: Add a few more GPIO definitions to make the header file compatible with i.MX6 arch/arm/src/imxrt/chip: Add GPIO register definition file. Author: Janne Rosberg <janne.rosberg@offcode.fi> arch/arm/src/imxrt: Add DCDC register definitions. arch/arm/srch/imxrt: Add CCM register bit definitions Author: Gregory Nutt <gnutt@nuttx.org> Purely cosmetic arch/arm/src/imxrt: Add system reset controller register definition header file. Embarassingly trivial change left in compiler. arch/arm/src/imxrt: Finishes i.MX RT1050 LPUART register definition header file. arch/arm/src/imxrt: Beginning of an i.MX RT1050 LPUART register definition header file. Some trivial things Author: Janne Rosberg <janne.rosberg@offcode.fi> arch/arm/src/imxrt: Add imxrt_wdog.h arch/arm/src/imxrt: Add initial imxrt_ccm.h Author: Gregory Nutt <gnutt@nuttx.org> Trivial update to README. arch/arm/src/imxrt: The i.MX Rt implements 4 bits of interrupt priority, not two. Thanks, Janne. arch/arm/src/imxrt: Fix some initial compile issues. Still a long way from complete, but there is a buildable environment now for the imxrt1050-evk. configs/imxrt1050-evk: Add an initial NSH configuration for testing. configs/Kconfig: Hook the i.MX RT 1050 board configuration into the NuttX configuration system. configs/imxrt_evk: Add the framework for i.MX RT 1050 board support. arch/arm/src/imxrt: Bring in a few more files from LPC54xxx. arch/arm/src/imxrt: Bring in imxrt_clrpend() from the LPC54xxx. arch/arm/src/imxrt: Bring in Cortex-M7 SysTick setup from the SAMv7. arch/arm/src/imxrt: Add a few easy files. arch/arm/src/imxrt/chip: Add memory map header files. arch/arm/src/imxrt: A few basic files to start the port to the i.MX RT 1050.
2018-04-12 17:31:09 +02:00
*/
2019-05-01 00:08:46 +02:00
#define NVIC_SYSH_PRIORITY_MIN 0xf0 /* All bits[7:4] set is min pri */
This commit brings in basic support fo the i.MX RT 1050 'crossover' SoC. The basic support is complete and compiles without error, but is still untested. This port was the joing effort of Janne Rosberg, Ivan Ucherdzhiev, and myself. I give credit to Ivan for the kill because he is the one to held on to the end. Squashed commit of the following: Author: Gregory Nutt <gnutt@nuttx.org> configs/imxrt1050-evk/scripts: Add section to linker script to handle the case where RAMFUNCs are enabled. RAMFUNCs appear to be enabled in the default configuration ... they probably should not be enabled. Author: Ivan Ucherdzhiev <ivanucherdjiev@gmail.com> arch/arm/src/imxrt: imxrt_lowputc.c is finished. Now everything needed for the initial port is done and ready for testing. arch/arm/src/imxrt: Add logic to imxrt_lowputc.c. Still incomplete. Author: Ivan Ucherdzhiev <ivanucherdjiev@gmail.com> arch/arm/src/imxrt: Add serial support. configs/imxrt1050-evk: Add linker script. Author: Gregory Nutt <gnutt@nuttx.org> arch/arm/src/imxrt: Add initial cut at imxrt_allocateheap.c Author: Ivan Ucherdzhiev <ivanucherdjiev@gmail.com> arm/arm/src/imxrt: Completes all definitions for PADMUX, CTLMUX, and IOMUX_INPUT and mapping tables on imxrt_gpio.c and imxr_iomuxc.c. arch/arm/src/imxrt/chip: Add definitions for IMXRT_PADCTL and IMXRT_PADMUX registers. Only the IMXRT_INPUT definitions in this commit. arch/arm/src/imxrt/chip: Add more IOMUXC register definitions. Author: Gregory Nutt <gnutt@nuttx.org> configs/imxrt1050-evk: Add STRIP definition to Make.defs. arch/arm/src/imxrt: Bring in i.MX6 memory configuration settings. arch/arm/src/imxrt: Remove call to non-existent imxrt_gpioinit() from imxrt_start.c. arch/arm/src/imxrt: Bring in incomplete imxrt_iomuxc.c file from i.mx6. arch/arm/src/imxrt: Add first cut at GPIO interrupt logic. arch/arm/include: Add definitions to support a second level of GPIO pin interrupts. Author: Janne Rosberg <janne.rosberg@offcode.fi> arch/arm/src/imxrt: Add imxrt_wdog.c/.h Author: Gregory Nutt <gnutt@nuttx.org> arch/arm/src/imxrt: Port SAMv7 interrupt logic to imxrt_irq.c. arch/arm/src/imxrt: More clarification of the start-up memory map. arch/arm/src/imxrt: Some mostly cosmetic clean-up to the imxrt_start.c file that was so rudely taken from the SAMv7. arch/arm/src/imxrt: Add imxrt_start.c. Initial commit is the the SAMv7 startup logic with name changes. Author: Ivan Ucherdzhiev <ivanucherdjiev@gmail.com> arch/arm/src/imxrt: Adds a few IOMUXC register definitions. Author: Janne Rosberg <janne.rosberg@offcode.fi> arch/arm/src/imxrt: Add imxrt_clockconfig.c/.h configs/imxrt1050-evk: Add clock configuration definitions to board.h arch/arm/src/imxrt: Fix CCM register name; Fix doubly defined in LPUART bit field. arch/arm/src/imxrt: Add analog defines to CCM register definition header file. Author: Gregory Nutt <gnutt@nuttx.org> arch/arm/src/imxrt: Bring in GPIO C files from i.MX6. Things are in disarray now because that GPIO logic depends on IOMUXC logic which is not yet in place. arch/arm/src/imxrt: Add a few more GPIO definitions to make the header file compatible with i.MX6 arch/arm/src/imxrt/chip: Add GPIO register definition file. Author: Janne Rosberg <janne.rosberg@offcode.fi> arch/arm/src/imxrt: Add DCDC register definitions. arch/arm/srch/imxrt: Add CCM register bit definitions Author: Gregory Nutt <gnutt@nuttx.org> Purely cosmetic arch/arm/src/imxrt: Add system reset controller register definition header file. Embarassingly trivial change left in compiler. arch/arm/src/imxrt: Finishes i.MX RT1050 LPUART register definition header file. arch/arm/src/imxrt: Beginning of an i.MX RT1050 LPUART register definition header file. Some trivial things Author: Janne Rosberg <janne.rosberg@offcode.fi> arch/arm/src/imxrt: Add imxrt_wdog.h arch/arm/src/imxrt: Add initial imxrt_ccm.h Author: Gregory Nutt <gnutt@nuttx.org> Trivial update to README. arch/arm/src/imxrt: The i.MX Rt implements 4 bits of interrupt priority, not two. Thanks, Janne. arch/arm/src/imxrt: Fix some initial compile issues. Still a long way from complete, but there is a buildable environment now for the imxrt1050-evk. configs/imxrt1050-evk: Add an initial NSH configuration for testing. configs/Kconfig: Hook the i.MX RT 1050 board configuration into the NuttX configuration system. configs/imxrt_evk: Add the framework for i.MX RT 1050 board support. arch/arm/src/imxrt: Bring in a few more files from LPC54xxx. arch/arm/src/imxrt: Bring in imxrt_clrpend() from the LPC54xxx. arch/arm/src/imxrt: Bring in Cortex-M7 SysTick setup from the SAMv7. arch/arm/src/imxrt: Add a few easy files. arch/arm/src/imxrt/chip: Add memory map header files. arch/arm/src/imxrt: A few basic files to start the port to the i.MX RT 1050.
2018-04-12 17:31:09 +02:00
#define NVIC_SYSH_PRIORITY_DEFAULT 0x80 /* Midpoint is the default */
#define NVIC_SYSH_PRIORITY_MAX 0x00 /* Zero is maximum priority */
2019-05-01 00:08:46 +02:00
#define NVIC_SYSH_PRIORITY_STEP 0x40 /* Two bits of interrupt pri used */
This commit brings in basic support fo the i.MX RT 1050 'crossover' SoC. The basic support is complete and compiles without error, but is still untested. This port was the joing effort of Janne Rosberg, Ivan Ucherdzhiev, and myself. I give credit to Ivan for the kill because he is the one to held on to the end. Squashed commit of the following: Author: Gregory Nutt <gnutt@nuttx.org> configs/imxrt1050-evk/scripts: Add section to linker script to handle the case where RAMFUNCs are enabled. RAMFUNCs appear to be enabled in the default configuration ... they probably should not be enabled. Author: Ivan Ucherdzhiev <ivanucherdjiev@gmail.com> arch/arm/src/imxrt: imxrt_lowputc.c is finished. Now everything needed for the initial port is done and ready for testing. arch/arm/src/imxrt: Add logic to imxrt_lowputc.c. Still incomplete. Author: Ivan Ucherdzhiev <ivanucherdjiev@gmail.com> arch/arm/src/imxrt: Add serial support. configs/imxrt1050-evk: Add linker script. Author: Gregory Nutt <gnutt@nuttx.org> arch/arm/src/imxrt: Add initial cut at imxrt_allocateheap.c Author: Ivan Ucherdzhiev <ivanucherdjiev@gmail.com> arm/arm/src/imxrt: Completes all definitions for PADMUX, CTLMUX, and IOMUX_INPUT and mapping tables on imxrt_gpio.c and imxr_iomuxc.c. arch/arm/src/imxrt/chip: Add definitions for IMXRT_PADCTL and IMXRT_PADMUX registers. Only the IMXRT_INPUT definitions in this commit. arch/arm/src/imxrt/chip: Add more IOMUXC register definitions. Author: Gregory Nutt <gnutt@nuttx.org> configs/imxrt1050-evk: Add STRIP definition to Make.defs. arch/arm/src/imxrt: Bring in i.MX6 memory configuration settings. arch/arm/src/imxrt: Remove call to non-existent imxrt_gpioinit() from imxrt_start.c. arch/arm/src/imxrt: Bring in incomplete imxrt_iomuxc.c file from i.mx6. arch/arm/src/imxrt: Add first cut at GPIO interrupt logic. arch/arm/include: Add definitions to support a second level of GPIO pin interrupts. Author: Janne Rosberg <janne.rosberg@offcode.fi> arch/arm/src/imxrt: Add imxrt_wdog.c/.h Author: Gregory Nutt <gnutt@nuttx.org> arch/arm/src/imxrt: Port SAMv7 interrupt logic to imxrt_irq.c. arch/arm/src/imxrt: More clarification of the start-up memory map. arch/arm/src/imxrt: Some mostly cosmetic clean-up to the imxrt_start.c file that was so rudely taken from the SAMv7. arch/arm/src/imxrt: Add imxrt_start.c. Initial commit is the the SAMv7 startup logic with name changes. Author: Ivan Ucherdzhiev <ivanucherdjiev@gmail.com> arch/arm/src/imxrt: Adds a few IOMUXC register definitions. Author: Janne Rosberg <janne.rosberg@offcode.fi> arch/arm/src/imxrt: Add imxrt_clockconfig.c/.h configs/imxrt1050-evk: Add clock configuration definitions to board.h arch/arm/src/imxrt: Fix CCM register name; Fix doubly defined in LPUART bit field. arch/arm/src/imxrt: Add analog defines to CCM register definition header file. Author: Gregory Nutt <gnutt@nuttx.org> arch/arm/src/imxrt: Bring in GPIO C files from i.MX6. Things are in disarray now because that GPIO logic depends on IOMUXC logic which is not yet in place. arch/arm/src/imxrt: Add a few more GPIO definitions to make the header file compatible with i.MX6 arch/arm/src/imxrt/chip: Add GPIO register definition file. Author: Janne Rosberg <janne.rosberg@offcode.fi> arch/arm/src/imxrt: Add DCDC register definitions. arch/arm/srch/imxrt: Add CCM register bit definitions Author: Gregory Nutt <gnutt@nuttx.org> Purely cosmetic arch/arm/src/imxrt: Add system reset controller register definition header file. Embarassingly trivial change left in compiler. arch/arm/src/imxrt: Finishes i.MX RT1050 LPUART register definition header file. arch/arm/src/imxrt: Beginning of an i.MX RT1050 LPUART register definition header file. Some trivial things Author: Janne Rosberg <janne.rosberg@offcode.fi> arch/arm/src/imxrt: Add imxrt_wdog.h arch/arm/src/imxrt: Add initial imxrt_ccm.h Author: Gregory Nutt <gnutt@nuttx.org> Trivial update to README. arch/arm/src/imxrt: The i.MX Rt implements 4 bits of interrupt priority, not two. Thanks, Janne. arch/arm/src/imxrt: Fix some initial compile issues. Still a long way from complete, but there is a buildable environment now for the imxrt1050-evk. configs/imxrt1050-evk: Add an initial NSH configuration for testing. configs/Kconfig: Hook the i.MX RT 1050 board configuration into the NuttX configuration system. configs/imxrt_evk: Add the framework for i.MX RT 1050 board support. arch/arm/src/imxrt: Bring in a few more files from LPC54xxx. arch/arm/src/imxrt: Bring in imxrt_clrpend() from the LPC54xxx. arch/arm/src/imxrt: Bring in Cortex-M7 SysTick setup from the SAMv7. arch/arm/src/imxrt: Add a few easy files. arch/arm/src/imxrt/chip: Add memory map header files. arch/arm/src/imxrt: A few basic files to start the port to the i.MX RT 1050.
2018-04-12 17:31:09 +02:00
/****************************************************************************
This commit brings in basic support fo the i.MX RT 1050 'crossover' SoC. The basic support is complete and compiles without error, but is still untested. This port was the joing effort of Janne Rosberg, Ivan Ucherdzhiev, and myself. I give credit to Ivan for the kill because he is the one to held on to the end. Squashed commit of the following: Author: Gregory Nutt <gnutt@nuttx.org> configs/imxrt1050-evk/scripts: Add section to linker script to handle the case where RAMFUNCs are enabled. RAMFUNCs appear to be enabled in the default configuration ... they probably should not be enabled. Author: Ivan Ucherdzhiev <ivanucherdjiev@gmail.com> arch/arm/src/imxrt: imxrt_lowputc.c is finished. Now everything needed for the initial port is done and ready for testing. arch/arm/src/imxrt: Add logic to imxrt_lowputc.c. Still incomplete. Author: Ivan Ucherdzhiev <ivanucherdjiev@gmail.com> arch/arm/src/imxrt: Add serial support. configs/imxrt1050-evk: Add linker script. Author: Gregory Nutt <gnutt@nuttx.org> arch/arm/src/imxrt: Add initial cut at imxrt_allocateheap.c Author: Ivan Ucherdzhiev <ivanucherdjiev@gmail.com> arm/arm/src/imxrt: Completes all definitions for PADMUX, CTLMUX, and IOMUX_INPUT and mapping tables on imxrt_gpio.c and imxr_iomuxc.c. arch/arm/src/imxrt/chip: Add definitions for IMXRT_PADCTL and IMXRT_PADMUX registers. Only the IMXRT_INPUT definitions in this commit. arch/arm/src/imxrt/chip: Add more IOMUXC register definitions. Author: Gregory Nutt <gnutt@nuttx.org> configs/imxrt1050-evk: Add STRIP definition to Make.defs. arch/arm/src/imxrt: Bring in i.MX6 memory configuration settings. arch/arm/src/imxrt: Remove call to non-existent imxrt_gpioinit() from imxrt_start.c. arch/arm/src/imxrt: Bring in incomplete imxrt_iomuxc.c file from i.mx6. arch/arm/src/imxrt: Add first cut at GPIO interrupt logic. arch/arm/include: Add definitions to support a second level of GPIO pin interrupts. Author: Janne Rosberg <janne.rosberg@offcode.fi> arch/arm/src/imxrt: Add imxrt_wdog.c/.h Author: Gregory Nutt <gnutt@nuttx.org> arch/arm/src/imxrt: Port SAMv7 interrupt logic to imxrt_irq.c. arch/arm/src/imxrt: More clarification of the start-up memory map. arch/arm/src/imxrt: Some mostly cosmetic clean-up to the imxrt_start.c file that was so rudely taken from the SAMv7. arch/arm/src/imxrt: Add imxrt_start.c. Initial commit is the the SAMv7 startup logic with name changes. Author: Ivan Ucherdzhiev <ivanucherdjiev@gmail.com> arch/arm/src/imxrt: Adds a few IOMUXC register definitions. Author: Janne Rosberg <janne.rosberg@offcode.fi> arch/arm/src/imxrt: Add imxrt_clockconfig.c/.h configs/imxrt1050-evk: Add clock configuration definitions to board.h arch/arm/src/imxrt: Fix CCM register name; Fix doubly defined in LPUART bit field. arch/arm/src/imxrt: Add analog defines to CCM register definition header file. Author: Gregory Nutt <gnutt@nuttx.org> arch/arm/src/imxrt: Bring in GPIO C files from i.MX6. Things are in disarray now because that GPIO logic depends on IOMUXC logic which is not yet in place. arch/arm/src/imxrt: Add a few more GPIO definitions to make the header file compatible with i.MX6 arch/arm/src/imxrt/chip: Add GPIO register definition file. Author: Janne Rosberg <janne.rosberg@offcode.fi> arch/arm/src/imxrt: Add DCDC register definitions. arch/arm/srch/imxrt: Add CCM register bit definitions Author: Gregory Nutt <gnutt@nuttx.org> Purely cosmetic arch/arm/src/imxrt: Add system reset controller register definition header file. Embarassingly trivial change left in compiler. arch/arm/src/imxrt: Finishes i.MX RT1050 LPUART register definition header file. arch/arm/src/imxrt: Beginning of an i.MX RT1050 LPUART register definition header file. Some trivial things Author: Janne Rosberg <janne.rosberg@offcode.fi> arch/arm/src/imxrt: Add imxrt_wdog.h arch/arm/src/imxrt: Add initial imxrt_ccm.h Author: Gregory Nutt <gnutt@nuttx.org> Trivial update to README. arch/arm/src/imxrt: The i.MX Rt implements 4 bits of interrupt priority, not two. Thanks, Janne. arch/arm/src/imxrt: Fix some initial compile issues. Still a long way from complete, but there is a buildable environment now for the imxrt1050-evk. configs/imxrt1050-evk: Add an initial NSH configuration for testing. configs/Kconfig: Hook the i.MX RT 1050 board configuration into the NuttX configuration system. configs/imxrt_evk: Add the framework for i.MX RT 1050 board support. arch/arm/src/imxrt: Bring in a few more files from LPC54xxx. arch/arm/src/imxrt: Bring in imxrt_clrpend() from the LPC54xxx. arch/arm/src/imxrt: Bring in Cortex-M7 SysTick setup from the SAMv7. arch/arm/src/imxrt: Add a few easy files. arch/arm/src/imxrt/chip: Add memory map header files. arch/arm/src/imxrt: A few basic files to start the port to the i.MX RT 1050.
2018-04-12 17:31:09 +02:00
* Public Types
****************************************************************************/
This commit brings in basic support fo the i.MX RT 1050 'crossover' SoC. The basic support is complete and compiles without error, but is still untested. This port was the joing effort of Janne Rosberg, Ivan Ucherdzhiev, and myself. I give credit to Ivan for the kill because he is the one to held on to the end. Squashed commit of the following: Author: Gregory Nutt <gnutt@nuttx.org> configs/imxrt1050-evk/scripts: Add section to linker script to handle the case where RAMFUNCs are enabled. RAMFUNCs appear to be enabled in the default configuration ... they probably should not be enabled. Author: Ivan Ucherdzhiev <ivanucherdjiev@gmail.com> arch/arm/src/imxrt: imxrt_lowputc.c is finished. Now everything needed for the initial port is done and ready for testing. arch/arm/src/imxrt: Add logic to imxrt_lowputc.c. Still incomplete. Author: Ivan Ucherdzhiev <ivanucherdjiev@gmail.com> arch/arm/src/imxrt: Add serial support. configs/imxrt1050-evk: Add linker script. Author: Gregory Nutt <gnutt@nuttx.org> arch/arm/src/imxrt: Add initial cut at imxrt_allocateheap.c Author: Ivan Ucherdzhiev <ivanucherdjiev@gmail.com> arm/arm/src/imxrt: Completes all definitions for PADMUX, CTLMUX, and IOMUX_INPUT and mapping tables on imxrt_gpio.c and imxr_iomuxc.c. arch/arm/src/imxrt/chip: Add definitions for IMXRT_PADCTL and IMXRT_PADMUX registers. Only the IMXRT_INPUT definitions in this commit. arch/arm/src/imxrt/chip: Add more IOMUXC register definitions. Author: Gregory Nutt <gnutt@nuttx.org> configs/imxrt1050-evk: Add STRIP definition to Make.defs. arch/arm/src/imxrt: Bring in i.MX6 memory configuration settings. arch/arm/src/imxrt: Remove call to non-existent imxrt_gpioinit() from imxrt_start.c. arch/arm/src/imxrt: Bring in incomplete imxrt_iomuxc.c file from i.mx6. arch/arm/src/imxrt: Add first cut at GPIO interrupt logic. arch/arm/include: Add definitions to support a second level of GPIO pin interrupts. Author: Janne Rosberg <janne.rosberg@offcode.fi> arch/arm/src/imxrt: Add imxrt_wdog.c/.h Author: Gregory Nutt <gnutt@nuttx.org> arch/arm/src/imxrt: Port SAMv7 interrupt logic to imxrt_irq.c. arch/arm/src/imxrt: More clarification of the start-up memory map. arch/arm/src/imxrt: Some mostly cosmetic clean-up to the imxrt_start.c file that was so rudely taken from the SAMv7. arch/arm/src/imxrt: Add imxrt_start.c. Initial commit is the the SAMv7 startup logic with name changes. Author: Ivan Ucherdzhiev <ivanucherdjiev@gmail.com> arch/arm/src/imxrt: Adds a few IOMUXC register definitions. Author: Janne Rosberg <janne.rosberg@offcode.fi> arch/arm/src/imxrt: Add imxrt_clockconfig.c/.h configs/imxrt1050-evk: Add clock configuration definitions to board.h arch/arm/src/imxrt: Fix CCM register name; Fix doubly defined in LPUART bit field. arch/arm/src/imxrt: Add analog defines to CCM register definition header file. Author: Gregory Nutt <gnutt@nuttx.org> arch/arm/src/imxrt: Bring in GPIO C files from i.MX6. Things are in disarray now because that GPIO logic depends on IOMUXC logic which is not yet in place. arch/arm/src/imxrt: Add a few more GPIO definitions to make the header file compatible with i.MX6 arch/arm/src/imxrt/chip: Add GPIO register definition file. Author: Janne Rosberg <janne.rosberg@offcode.fi> arch/arm/src/imxrt: Add DCDC register definitions. arch/arm/srch/imxrt: Add CCM register bit definitions Author: Gregory Nutt <gnutt@nuttx.org> Purely cosmetic arch/arm/src/imxrt: Add system reset controller register definition header file. Embarassingly trivial change left in compiler. arch/arm/src/imxrt: Finishes i.MX RT1050 LPUART register definition header file. arch/arm/src/imxrt: Beginning of an i.MX RT1050 LPUART register definition header file. Some trivial things Author: Janne Rosberg <janne.rosberg@offcode.fi> arch/arm/src/imxrt: Add imxrt_wdog.h arch/arm/src/imxrt: Add initial imxrt_ccm.h Author: Gregory Nutt <gnutt@nuttx.org> Trivial update to README. arch/arm/src/imxrt: The i.MX Rt implements 4 bits of interrupt priority, not two. Thanks, Janne. arch/arm/src/imxrt: Fix some initial compile issues. Still a long way from complete, but there is a buildable environment now for the imxrt1050-evk. configs/imxrt1050-evk: Add an initial NSH configuration for testing. configs/Kconfig: Hook the i.MX RT 1050 board configuration into the NuttX configuration system. configs/imxrt_evk: Add the framework for i.MX RT 1050 board support. arch/arm/src/imxrt: Bring in a few more files from LPC54xxx. arch/arm/src/imxrt: Bring in imxrt_clrpend() from the LPC54xxx. arch/arm/src/imxrt: Bring in Cortex-M7 SysTick setup from the SAMv7. arch/arm/src/imxrt: Add a few easy files. arch/arm/src/imxrt/chip: Add memory map header files. arch/arm/src/imxrt: A few basic files to start the port to the i.MX RT 1050.
2018-04-12 17:31:09 +02:00
/****************************************************************************
This commit brings in basic support fo the i.MX RT 1050 'crossover' SoC. The basic support is complete and compiles without error, but is still untested. This port was the joing effort of Janne Rosberg, Ivan Ucherdzhiev, and myself. I give credit to Ivan for the kill because he is the one to held on to the end. Squashed commit of the following: Author: Gregory Nutt <gnutt@nuttx.org> configs/imxrt1050-evk/scripts: Add section to linker script to handle the case where RAMFUNCs are enabled. RAMFUNCs appear to be enabled in the default configuration ... they probably should not be enabled. Author: Ivan Ucherdzhiev <ivanucherdjiev@gmail.com> arch/arm/src/imxrt: imxrt_lowputc.c is finished. Now everything needed for the initial port is done and ready for testing. arch/arm/src/imxrt: Add logic to imxrt_lowputc.c. Still incomplete. Author: Ivan Ucherdzhiev <ivanucherdjiev@gmail.com> arch/arm/src/imxrt: Add serial support. configs/imxrt1050-evk: Add linker script. Author: Gregory Nutt <gnutt@nuttx.org> arch/arm/src/imxrt: Add initial cut at imxrt_allocateheap.c Author: Ivan Ucherdzhiev <ivanucherdjiev@gmail.com> arm/arm/src/imxrt: Completes all definitions for PADMUX, CTLMUX, and IOMUX_INPUT and mapping tables on imxrt_gpio.c and imxr_iomuxc.c. arch/arm/src/imxrt/chip: Add definitions for IMXRT_PADCTL and IMXRT_PADMUX registers. Only the IMXRT_INPUT definitions in this commit. arch/arm/src/imxrt/chip: Add more IOMUXC register definitions. Author: Gregory Nutt <gnutt@nuttx.org> configs/imxrt1050-evk: Add STRIP definition to Make.defs. arch/arm/src/imxrt: Bring in i.MX6 memory configuration settings. arch/arm/src/imxrt: Remove call to non-existent imxrt_gpioinit() from imxrt_start.c. arch/arm/src/imxrt: Bring in incomplete imxrt_iomuxc.c file from i.mx6. arch/arm/src/imxrt: Add first cut at GPIO interrupt logic. arch/arm/include: Add definitions to support a second level of GPIO pin interrupts. Author: Janne Rosberg <janne.rosberg@offcode.fi> arch/arm/src/imxrt: Add imxrt_wdog.c/.h Author: Gregory Nutt <gnutt@nuttx.org> arch/arm/src/imxrt: Port SAMv7 interrupt logic to imxrt_irq.c. arch/arm/src/imxrt: More clarification of the start-up memory map. arch/arm/src/imxrt: Some mostly cosmetic clean-up to the imxrt_start.c file that was so rudely taken from the SAMv7. arch/arm/src/imxrt: Add imxrt_start.c. Initial commit is the the SAMv7 startup logic with name changes. Author: Ivan Ucherdzhiev <ivanucherdjiev@gmail.com> arch/arm/src/imxrt: Adds a few IOMUXC register definitions. Author: Janne Rosberg <janne.rosberg@offcode.fi> arch/arm/src/imxrt: Add imxrt_clockconfig.c/.h configs/imxrt1050-evk: Add clock configuration definitions to board.h arch/arm/src/imxrt: Fix CCM register name; Fix doubly defined in LPUART bit field. arch/arm/src/imxrt: Add analog defines to CCM register definition header file. Author: Gregory Nutt <gnutt@nuttx.org> arch/arm/src/imxrt: Bring in GPIO C files from i.MX6. Things are in disarray now because that GPIO logic depends on IOMUXC logic which is not yet in place. arch/arm/src/imxrt: Add a few more GPIO definitions to make the header file compatible with i.MX6 arch/arm/src/imxrt/chip: Add GPIO register definition file. Author: Janne Rosberg <janne.rosberg@offcode.fi> arch/arm/src/imxrt: Add DCDC register definitions. arch/arm/srch/imxrt: Add CCM register bit definitions Author: Gregory Nutt <gnutt@nuttx.org> Purely cosmetic arch/arm/src/imxrt: Add system reset controller register definition header file. Embarassingly trivial change left in compiler. arch/arm/src/imxrt: Finishes i.MX RT1050 LPUART register definition header file. arch/arm/src/imxrt: Beginning of an i.MX RT1050 LPUART register definition header file. Some trivial things Author: Janne Rosberg <janne.rosberg@offcode.fi> arch/arm/src/imxrt: Add imxrt_wdog.h arch/arm/src/imxrt: Add initial imxrt_ccm.h Author: Gregory Nutt <gnutt@nuttx.org> Trivial update to README. arch/arm/src/imxrt: The i.MX Rt implements 4 bits of interrupt priority, not two. Thanks, Janne. arch/arm/src/imxrt: Fix some initial compile issues. Still a long way from complete, but there is a buildable environment now for the imxrt1050-evk. configs/imxrt1050-evk: Add an initial NSH configuration for testing. configs/Kconfig: Hook the i.MX RT 1050 board configuration into the NuttX configuration system. configs/imxrt_evk: Add the framework for i.MX RT 1050 board support. arch/arm/src/imxrt: Bring in a few more files from LPC54xxx. arch/arm/src/imxrt: Bring in imxrt_clrpend() from the LPC54xxx. arch/arm/src/imxrt: Bring in Cortex-M7 SysTick setup from the SAMv7. arch/arm/src/imxrt: Add a few easy files. arch/arm/src/imxrt/chip: Add memory map header files. arch/arm/src/imxrt: A few basic files to start the port to the i.MX RT 1050.
2018-04-12 17:31:09 +02:00
* Public Data
****************************************************************************/
This commit brings in basic support fo the i.MX RT 1050 'crossover' SoC. The basic support is complete and compiles without error, but is still untested. This port was the joing effort of Janne Rosberg, Ivan Ucherdzhiev, and myself. I give credit to Ivan for the kill because he is the one to held on to the end. Squashed commit of the following: Author: Gregory Nutt <gnutt@nuttx.org> configs/imxrt1050-evk/scripts: Add section to linker script to handle the case where RAMFUNCs are enabled. RAMFUNCs appear to be enabled in the default configuration ... they probably should not be enabled. Author: Ivan Ucherdzhiev <ivanucherdjiev@gmail.com> arch/arm/src/imxrt: imxrt_lowputc.c is finished. Now everything needed for the initial port is done and ready for testing. arch/arm/src/imxrt: Add logic to imxrt_lowputc.c. Still incomplete. Author: Ivan Ucherdzhiev <ivanucherdjiev@gmail.com> arch/arm/src/imxrt: Add serial support. configs/imxrt1050-evk: Add linker script. Author: Gregory Nutt <gnutt@nuttx.org> arch/arm/src/imxrt: Add initial cut at imxrt_allocateheap.c Author: Ivan Ucherdzhiev <ivanucherdjiev@gmail.com> arm/arm/src/imxrt: Completes all definitions for PADMUX, CTLMUX, and IOMUX_INPUT and mapping tables on imxrt_gpio.c and imxr_iomuxc.c. arch/arm/src/imxrt/chip: Add definitions for IMXRT_PADCTL and IMXRT_PADMUX registers. Only the IMXRT_INPUT definitions in this commit. arch/arm/src/imxrt/chip: Add more IOMUXC register definitions. Author: Gregory Nutt <gnutt@nuttx.org> configs/imxrt1050-evk: Add STRIP definition to Make.defs. arch/arm/src/imxrt: Bring in i.MX6 memory configuration settings. arch/arm/src/imxrt: Remove call to non-existent imxrt_gpioinit() from imxrt_start.c. arch/arm/src/imxrt: Bring in incomplete imxrt_iomuxc.c file from i.mx6. arch/arm/src/imxrt: Add first cut at GPIO interrupt logic. arch/arm/include: Add definitions to support a second level of GPIO pin interrupts. Author: Janne Rosberg <janne.rosberg@offcode.fi> arch/arm/src/imxrt: Add imxrt_wdog.c/.h Author: Gregory Nutt <gnutt@nuttx.org> arch/arm/src/imxrt: Port SAMv7 interrupt logic to imxrt_irq.c. arch/arm/src/imxrt: More clarification of the start-up memory map. arch/arm/src/imxrt: Some mostly cosmetic clean-up to the imxrt_start.c file that was so rudely taken from the SAMv7. arch/arm/src/imxrt: Add imxrt_start.c. Initial commit is the the SAMv7 startup logic with name changes. Author: Ivan Ucherdzhiev <ivanucherdjiev@gmail.com> arch/arm/src/imxrt: Adds a few IOMUXC register definitions. Author: Janne Rosberg <janne.rosberg@offcode.fi> arch/arm/src/imxrt: Add imxrt_clockconfig.c/.h configs/imxrt1050-evk: Add clock configuration definitions to board.h arch/arm/src/imxrt: Fix CCM register name; Fix doubly defined in LPUART bit field. arch/arm/src/imxrt: Add analog defines to CCM register definition header file. Author: Gregory Nutt <gnutt@nuttx.org> arch/arm/src/imxrt: Bring in GPIO C files from i.MX6. Things are in disarray now because that GPIO logic depends on IOMUXC logic which is not yet in place. arch/arm/src/imxrt: Add a few more GPIO definitions to make the header file compatible with i.MX6 arch/arm/src/imxrt/chip: Add GPIO register definition file. Author: Janne Rosberg <janne.rosberg@offcode.fi> arch/arm/src/imxrt: Add DCDC register definitions. arch/arm/srch/imxrt: Add CCM register bit definitions Author: Gregory Nutt <gnutt@nuttx.org> Purely cosmetic arch/arm/src/imxrt: Add system reset controller register definition header file. Embarassingly trivial change left in compiler. arch/arm/src/imxrt: Finishes i.MX RT1050 LPUART register definition header file. arch/arm/src/imxrt: Beginning of an i.MX RT1050 LPUART register definition header file. Some trivial things Author: Janne Rosberg <janne.rosberg@offcode.fi> arch/arm/src/imxrt: Add imxrt_wdog.h arch/arm/src/imxrt: Add initial imxrt_ccm.h Author: Gregory Nutt <gnutt@nuttx.org> Trivial update to README. arch/arm/src/imxrt: The i.MX Rt implements 4 bits of interrupt priority, not two. Thanks, Janne. arch/arm/src/imxrt: Fix some initial compile issues. Still a long way from complete, but there is a buildable environment now for the imxrt1050-evk. configs/imxrt1050-evk: Add an initial NSH configuration for testing. configs/Kconfig: Hook the i.MX RT 1050 board configuration into the NuttX configuration system. configs/imxrt_evk: Add the framework for i.MX RT 1050 board support. arch/arm/src/imxrt: Bring in a few more files from LPC54xxx. arch/arm/src/imxrt: Bring in imxrt_clrpend() from the LPC54xxx. arch/arm/src/imxrt: Bring in Cortex-M7 SysTick setup from the SAMv7. arch/arm/src/imxrt: Add a few easy files. arch/arm/src/imxrt/chip: Add memory map header files. arch/arm/src/imxrt: A few basic files to start the port to the i.MX RT 1050.
2018-04-12 17:31:09 +02:00
/****************************************************************************
* Public Functions Prototypes
****************************************************************************/
This commit brings in basic support fo the i.MX RT 1050 'crossover' SoC. The basic support is complete and compiles without error, but is still untested. This port was the joing effort of Janne Rosberg, Ivan Ucherdzhiev, and myself. I give credit to Ivan for the kill because he is the one to held on to the end. Squashed commit of the following: Author: Gregory Nutt <gnutt@nuttx.org> configs/imxrt1050-evk/scripts: Add section to linker script to handle the case where RAMFUNCs are enabled. RAMFUNCs appear to be enabled in the default configuration ... they probably should not be enabled. Author: Ivan Ucherdzhiev <ivanucherdjiev@gmail.com> arch/arm/src/imxrt: imxrt_lowputc.c is finished. Now everything needed for the initial port is done and ready for testing. arch/arm/src/imxrt: Add logic to imxrt_lowputc.c. Still incomplete. Author: Ivan Ucherdzhiev <ivanucherdjiev@gmail.com> arch/arm/src/imxrt: Add serial support. configs/imxrt1050-evk: Add linker script. Author: Gregory Nutt <gnutt@nuttx.org> arch/arm/src/imxrt: Add initial cut at imxrt_allocateheap.c Author: Ivan Ucherdzhiev <ivanucherdjiev@gmail.com> arm/arm/src/imxrt: Completes all definitions for PADMUX, CTLMUX, and IOMUX_INPUT and mapping tables on imxrt_gpio.c and imxr_iomuxc.c. arch/arm/src/imxrt/chip: Add definitions for IMXRT_PADCTL and IMXRT_PADMUX registers. Only the IMXRT_INPUT definitions in this commit. arch/arm/src/imxrt/chip: Add more IOMUXC register definitions. Author: Gregory Nutt <gnutt@nuttx.org> configs/imxrt1050-evk: Add STRIP definition to Make.defs. arch/arm/src/imxrt: Bring in i.MX6 memory configuration settings. arch/arm/src/imxrt: Remove call to non-existent imxrt_gpioinit() from imxrt_start.c. arch/arm/src/imxrt: Bring in incomplete imxrt_iomuxc.c file from i.mx6. arch/arm/src/imxrt: Add first cut at GPIO interrupt logic. arch/arm/include: Add definitions to support a second level of GPIO pin interrupts. Author: Janne Rosberg <janne.rosberg@offcode.fi> arch/arm/src/imxrt: Add imxrt_wdog.c/.h Author: Gregory Nutt <gnutt@nuttx.org> arch/arm/src/imxrt: Port SAMv7 interrupt logic to imxrt_irq.c. arch/arm/src/imxrt: More clarification of the start-up memory map. arch/arm/src/imxrt: Some mostly cosmetic clean-up to the imxrt_start.c file that was so rudely taken from the SAMv7. arch/arm/src/imxrt: Add imxrt_start.c. Initial commit is the the SAMv7 startup logic with name changes. Author: Ivan Ucherdzhiev <ivanucherdjiev@gmail.com> arch/arm/src/imxrt: Adds a few IOMUXC register definitions. Author: Janne Rosberg <janne.rosberg@offcode.fi> arch/arm/src/imxrt: Add imxrt_clockconfig.c/.h configs/imxrt1050-evk: Add clock configuration definitions to board.h arch/arm/src/imxrt: Fix CCM register name; Fix doubly defined in LPUART bit field. arch/arm/src/imxrt: Add analog defines to CCM register definition header file. Author: Gregory Nutt <gnutt@nuttx.org> arch/arm/src/imxrt: Bring in GPIO C files from i.MX6. Things are in disarray now because that GPIO logic depends on IOMUXC logic which is not yet in place. arch/arm/src/imxrt: Add a few more GPIO definitions to make the header file compatible with i.MX6 arch/arm/src/imxrt/chip: Add GPIO register definition file. Author: Janne Rosberg <janne.rosberg@offcode.fi> arch/arm/src/imxrt: Add DCDC register definitions. arch/arm/srch/imxrt: Add CCM register bit definitions Author: Gregory Nutt <gnutt@nuttx.org> Purely cosmetic arch/arm/src/imxrt: Add system reset controller register definition header file. Embarassingly trivial change left in compiler. arch/arm/src/imxrt: Finishes i.MX RT1050 LPUART register definition header file. arch/arm/src/imxrt: Beginning of an i.MX RT1050 LPUART register definition header file. Some trivial things Author: Janne Rosberg <janne.rosberg@offcode.fi> arch/arm/src/imxrt: Add imxrt_wdog.h arch/arm/src/imxrt: Add initial imxrt_ccm.h Author: Gregory Nutt <gnutt@nuttx.org> Trivial update to README. arch/arm/src/imxrt: The i.MX Rt implements 4 bits of interrupt priority, not two. Thanks, Janne. arch/arm/src/imxrt: Fix some initial compile issues. Still a long way from complete, but there is a buildable environment now for the imxrt1050-evk. configs/imxrt1050-evk: Add an initial NSH configuration for testing. configs/Kconfig: Hook the i.MX RT 1050 board configuration into the NuttX configuration system. configs/imxrt_evk: Add the framework for i.MX RT 1050 board support. arch/arm/src/imxrt: Bring in a few more files from LPC54xxx. arch/arm/src/imxrt: Bring in imxrt_clrpend() from the LPC54xxx. arch/arm/src/imxrt: Bring in Cortex-M7 SysTick setup from the SAMv7. arch/arm/src/imxrt: Add a few easy files. arch/arm/src/imxrt/chip: Add memory map header files. arch/arm/src/imxrt: A few basic files to start the port to the i.MX RT 1050.
2018-04-12 17:31:09 +02:00
#endif /* __ARCH_ARM_INCLUDE_IMXRT_CHIP_H */