Commit Graph

10 Commits

Author SHA1 Message Date
Ulf Magnusson 7fdb525754 kconfig: Use 'default' instead of 'def_bool' in Kconfig.defconfig files
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>
2019-04-18 12:20:49 -04:00
Maureen Helm cf94d6811a soc: nxp_imx: Default to on-chip memories at soc level
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>
2019-02-18 15:14:18 -05:00
Maureen Helm 0540b1a699 soc: nxp_imx: Move code/data location configs to soc level
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>
2019-02-13 17:52:20 -05:00
Maureen Helm 75cb3553f4 boards: Add config to mimxrt10{20,60,64}_evk boards to link into sdram
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>
2019-02-04 18:16:14 -05:00
Kumar Gala c3ba7335d9 boards: mimxrt{1020,1050,1060,1064}_evk remove CONFIG_ from dts files
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>
2019-02-01 10:16:06 -06:00
Aurelien Jarno 14e7be3e34 boards: mimxrt1020_evk: Enable mcux lpi2c driver and pins
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>
2019-01-23 04:04:39 -06:00
Aurelien Jarno 0e7a6ec9ab boards: mimxrt1020_evk: Enable mcux ethernet driver and pins
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>
2019-01-22 08:37:39 -06:00
Maureen Helm 2ec2ac16d5 boards: mimxrt1020_evk: Enable lpuart2 for bluetooth hci
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>
2019-01-16 12:32:16 -06:00
Maureen Helm b5551d0690 soc: boards: Reserve space for the imx boot header at the soc level
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>
2019-01-09 16:01:25 -06:00
Ryan QIAN d5e56036f2 board: arm: Add board support for mimxrt1020_evk
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>
2019-01-09 11:39:31 -06:00