Same deal as in commit 4638652214 ("Kconfig: Use 'default' instead of
'def_bool' in Kconfig.defconfig files"), fixing new stuff that got
introduced since then.
Some symbols, like ALTERA_AVALON_PIO, are only defined in
Kconfig.defconfig files, and so need the def_bool.
Motivation (from the note at the end of
guides/kconfig/index.html#common-shorthands):
For a symbol defined in multiple locations (e.g., in a Kconfig.defconfig
file in Zephyr), it is best to only give the symbol type for the "base"
definition of the symbol, and to use 'default' (instead of 'def_<type>'
value) for the remaining definitions. That way, if the base definition
of the symbol is removed, the symbol ends up without a type, which
generates a warning that points to the other definitions. That makes the
extra definitions easier to discover and remove.
Signed-off-by: Ulf Magnusson <Ulf.Magnusson@nordicsemi.no>
Refactor the imx rt code/data location config defaults such that we
default to on-chip memories at the soc level and override to external
memories at the board level. This means that we frequently override soc
defaults for evk boards, but it removes the assumption that all imx rt
boards (particularly non-evk boards) will have the same external
memories as evk boards.
The end result is that imx rt evk boards still have the same defaults as
before, but the way we get there is different.
Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
The imx rt family of socs has several options for linking code and data
into internal or external memories, and up until now we have handled
these options at the board level. This has resulted in several Kconfig
symbols being defined in multiple places and triggering warnings in
documentation builds:
warning: the default selection CODE_ITCM (defined at boards/arm/mimxrt1050_evk/Kconfig:13, boards/arm/mimxrt1060_evk/Kconfig:13) of <choice> (defined at boards/arm/mimxrt1050_evk/Kconfig:9) is not contained in the choice
warning: the choice symbol CODE_ITCM (defined at boards/arm/mimxrt1050_evk/Kconfig:13, boards/arm/mimxrt1060_evk/Kconfig:13) is defined with a prompt outside the choice
warning: the choice symbol CODE_HYPERFLASH (defined at boards/arm/mimxrt1050_evk/Kconfig:16, boards/arm/mimxrt1060_evk/Kconfig:16) is defined with a prompt outside the choice
warning: the choice symbol CODE_QSPI (defined at boards/arm/mimxrt1050_evk/Kconfig:19, boards/arm/mimxrt1060_evk/Kconfig:19) is defined with a prompt outside the choice
warning: the choice symbol CODE_ITCM (defined at boards/arm/mimxrt1050_evk/Kconfig:13, boards/arm/mimxrt1060_evk/Kconfig:13) is defined with a prompt outside the choice
warning: the choice symbol CODE_HYPERFLASH (defined at boards/arm/mimxrt1050_evk/Kconfig:16, boards/arm/mimxrt1060_evk/Kconfig:16) is defined with a prompt outside the choice
warning: the choice symbol CODE_QSPI (defined at boards/arm/mimxrt1050_evk/Kconfig:19, boards/arm/mimxrt1060_evk/Kconfig:19) is defined with a prompt outside the choice
The number of warnings increased as we added more imx rt boards. Fix the
warnings by moving code and data location configs from the board level
to the soc level.
The default memories for all imx rt boards are unchanged. The
mimxrt10{20,50,60}_evk boards still default to hyperflash/qspi for code
and sdram for data. The mimxrt1064_evk board still defaults to ITCM for
code and DTCM for data because jlink does not yet support programming
internal flash.
Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
Adds a new configuration option to mimxrt10{20,60,64}_evk boards to link
data into external sdram. The default remains to link data into internal
data tightly coupled memory (DTCM).
Note that mimxrt1050_evk is not included because it already has support
for linking data into sdram.
Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
The dts files on these boards had some CONFIG_ defines related to which
memory should be used to hold code. We move this choice out of DTS and
back into Kconfig.
As such, we removed the default setting of 'zephyr,flash' and just
map
CONFIG_CODE_ITCM to:
DT_NXP_IMX_RT_ITCM_0_SIZE
DT_NXP_IMX_RT_ITCM_0_BASE_ADDRESS
CONFIG_CODE_{QSPI,HYPERFLASH} to:
DT_NXP_IMX_FLEXSPI_402A8000_SIZE_1
DT_NXP_IMX_FLEXSPI_402A8000_BASE_ADDDRESS_1
for the mimxrt1050_evk, we remove the default setting of 'zephyr,sram'
and just map:
CONFIG_DATA_DTCM to:
DT_NXP_IMX_DTCM_0_SIZE
DT_NXP_IMX_DTCM_0_BASE_ADDRESS
CONFIG_DATA_SDRAM to:
DT_MMIO_SRAM_80000000_SIZE
DT_MMIO_SRAM_80000000_BASE_ADDRESS
Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
Enables the mcux lpi2c shim driver and pin muxes on the mimxrt1020_evk
board for LPI2C1 and LPI2C4. LPI2C1 is shared between the Arduino
connector J18 and the WM8960 codec. LPI2C4 is shared between the Arduino
connector J19 and the FXOS8700CQ sensor (non-populated by default).
Updates the board documentation and yaml supported list accordingly.
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
Enables the mcux ethernet driver and pin muxes on the mimxrt1020_evk
board, the same way it is done on the mimxrt1050_evk board. Updates the
board documentation and yaml supported list accordingly.
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
Enables instance 2 of the lpuart driver and configures pinmuxes to use
bluetooth hci on the mimxrt1020_evk board. Updates board documentation
accordingly.
Tested with samples/bluetooth/peripheral_hr, with frdm_kw41z attached as
an arduino shield running the nxp hci controller application.
Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
Moves the default TEXT_SECTION_OFFSET from the board level to the soc
level for the imx rt series. This offset is used to reserve space for
the imx boot header for external xip flash images.
Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
Add board support files for mimxrt1020_evk, the development board for
i.MXRT1021 (CM7) SoC.
- Add pinmux, dts, doc.
- Code can be loaded to SRAM.
- Tested samples: hello_world, philosophers, synchronization,
basic/blinky, and basic/button.
Signed-off-by: Ryan QIAN <jianghao.qian@nxp.com>