RT1050 has multiple LPSPI peripherals. The simplest to access is LPSPI1,
which can be connected by bridging solder jumpers on the board. Enable
this SPI peripheral, and set it as default for SPI tests.
Signed-off-by: Daniel DeGrasse <daniel.degrasse@nxp.com>
The mimxrt10xx evaluation boards that support the NXP USDHC IP
communicate unreliably with SD cards at 1.8V using the USDHC driver.
This commit temporarily disables 1.8V communication for all rt10xx
boards that currently support the USDHC driver.
Fixes#32289
Signed-off-by: Daniel DeGrasse <daniel.degrasse@nxp.com>
USB devicetree nodes in Zephyr have different names,
mostly derived from the designations in data sheets.
Add zephyr_udc0 (USB device controller) nodelabel to
specific USB node to allow generic USB sample to be build.
Follow up on commit b4242a8 ("boards: add USB node aliases")
Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
USB devicetree nodes in Zephyr have different names,
mostly derived from the designations in data sheets.
We also have an USB audio sample which has a kind of
experimental approach to configure audio devices, that
are not real hardware, via devicetree.
Sample itself is generic and can be run on any board with
USB device controller and isochronous endpoints support.
Add usbd0 alias to specific USB node to allow generic
USB audio sample to be build on nRF and i.MX RT boards.
Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
Reworks the NXP FlexSPI device tree bindings to configure controller and
device properties needed for an upcoming FlexSPI flash driver.
Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
Cleans up the HyperFlash device tree nodes on the mimxrt1050_evk and
mimxrt1060_evk_hyperflash boards to be more consistent with other
FlexSPI child nodes.
Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
Sets the device tree chosen node for instruction tightly coupled memory
(ITCM) on all i.MX RT boards. Leverages the common Cortex-M linker
section instead of the SoC-specific one.
Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
Refactors nxp i.mx, kinetis, and lpc board-level device trees to use
DT_SIZE_K and DT_SIZE_M macros to define external memory sizes. This is
self documenting and easier to read.
Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
Sets the device tree chosen node for data tightly coupled memory (DTCM)
on i.mx rt boards that aren't already using DTCM as the chosen SRAM.
Leverages the common cortex-m linker section instead of the soc-specific
one.
Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
Removes the DATA_LOCATION Kconfig symbol from the i.mx rt soc series and
refactors corresponding boards to use a device tree chosen node instead.
The external SDRAM is chosen on all boards that can support it;
otherwise the internal DTCM is chosen.
Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
Changes dependency for I2C so that it's enabled if kscan is enabled.
This is to allow the kscan_ft5336 sample to run.
Note: LVGL has KSCAN as a dependency.
Applies to the mimxrt10{50,60,64}_evk boards.
Signed-off-by: Mark Olsson <mark@markolsson.se>
Have nodelabels match the SoC docs so when a nodelabel reference is
made in the code its easier to relate to the SoC.
Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
Converts the fxos8700 sensor driver to the new gpio api. Updates device
trees for all boards with this sensor to active low gpio interrupts by
default.
Tested on frdm_k64f and rv32m1_vega_ri5cy boards. The latter verifies
that the reset output works correctly.
Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
Converts the usdhc driver to the new gpio api. Updates the
device tree for the mimxrt1050_evk board to set appropriate active
high/low polarity for the power and card detect pins.
Note that the driver doesn't actually support interrupts yet. It
initializes a gpio callback for the card detect pin, but never actually
enables the gpio interrupt. This incomplete behavior is left as-is,
since the purpose of this patch is only to convert the driver to the new
gpio api, not to add new features.
Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
Updates the mcux igpio driver and all associated boards to use new
device tree compatible gpio configuration flags. Implements new port
get/set/clear/toggle and pin_interrupt_configure functions recently
added to the gpio api.
Assumes the gpio api layer handles translating logical flags to physical
flags.
Removes port configuration support since that feature is deprecated in
the new gpio api.
Tested with:
- samples/basic/blinky
- samples/basic/button
- tests/drivers/gpio/gpio_api_1pin
On boards:
- mimxrt1015_evk
- mimxrt1020_evk
- mimxrt1050_evk
- mimxrt1060_evk
- mimxrt1064_evk
Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
Adds device tree nodes and configures Kconfig defaults for the ft5336
touch panel driver on mimxrt10{50,60,64}_evk boards.
Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
Defines device tree aliases for on-chip peripherals at the soc level
instead of the board level for all i.mx rt socs. The eliminates some
duplicate code in the board level device trees, and will allow drivers
to use device-tree generated macros directly instead of through dts
fixups.
Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
Adds a device tree nexus node to define which gpio pins are mapped from
the soc to the arduino header.
Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
1) dts/bindings/mmc/mmc.yaml: specifies common mmc.
2) dts/bindings/mmc/nxp,imx-usdhc.yaml: specifies
nxp usdhc module which inherits mmc.
3) dts/arm/nxp/nxp_rt.dtsi: usdhc support on RT chip.
4) boards/arm/mimxrt1050_evk/mimxrt1050_evk.dts:
usdhc slot support on mimxrt1050_evk board.
Signed-off-by: Jun Yang <jun.yang@nxp.com>
The DT spec. only has "okay" and not "ok". The Linux kernel has around
12k "okay"s and 300 "ok"s.
The scripts/dts scripts only check for "disabled", so should be safe re.
those at least.
The replacement was done with
git ls-files | xargs sed -i 's/status\s*=\s*"ok"/status = "okay"/'
Signed-off-by: Ulf Magnusson <Ulf.Magnusson@nordicsemi.no>
Adds device tree bindings and nodes for the rocktech lcd module used on
imx rt boards. The use of port, endpoint, and remote-endpoint properties
follow what is currently done in linux, but they are not yet used in
zephyr because some additional plumbing is needed in the
extract_dts_includes.py script.
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>
Adds an fxos8700 device tree node to the mimxrt1050_evk. The sensor
interrupt gpios require a board modification to be used and conflict
with Ethernet and LCD signals, therefore their pinmuxes are not
configured.
Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
Enables the mcux lpi2c shim driver and pin muxes on the mimxrt1050_evk
board. Updates the board documentation and yaml supported list
accordingly.
Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
Fix the QSPI and hyperflash nodes to be proper SPI children and expose
the address range for direct access as part of the controller's reg
region.
Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
To enable the QSPI you have to physically modify the board and this
disables the hyperflash. Since we plan on removing Kconfig from device
trees, its easier to treat the QSPI flash as a seperate board config and
thus it will get a dts to match.
Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
Removed Console dependencies from shell uart backend.
Generated define: CONFIG_UART_SHELL_ON_DEV_NAME for each board.
Fixes#10191
Signed-off-by: Jakub Rzeszutko <jakub.rzeszutko@nordicsemi.no>
Enables Networking hardware on i.MX-RT 1050-EVKB board.
Pinout enabled board specific etherenet connection, also pin
initialization was moved later to PRE_KERNEL_2 in order to have
sysclock initialized before.
Signed-off-by: Andrei Gansari <andrei.gansari@nxp.com>
The frdm_k64f and mimxrt1050_evk boards do not have native bluetooth
support, but rather require an arduino shield to supply a ble controller
over serial hci. Convert the dts to use the newly introduced frdm_kw41z
ble controller shield.
Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
This patch is equivalent to 7b0ce85242,
but applied to buttons. As stated in the previous commit message:
This change aims at fixing 'unit_address_vs_reg' warning in arm based
boards. This warning pops up when a node name is made up with an
address (node_name@xx) but does not contain a reg property. This case
was encountered for led nodes for instance, where a reg property has
no meaning. Fix this by changing node_name@xx to node_name_xx which
removes the guilty '@XX' syntax but preserves node_name uniqueness.
Signed-off-by: Sebastian Bøe <sebastian.boe@nordicsemi.no>
This patch is equivalent to 7b0ce85242,
but applied to more boards. As stated in the previous commit message:
This change aims at fixing 'unit_address_vs_reg' warning in arm based
boards. This warning pops up when a node name is made up with an
address (node_name@xx) but does not contain a reg property. This case
was encountered for led nodes for instance, where a reg property has
no meaning. Fix this by changing node_name@xx to node_name_xx which
removes the guilty '@XX' syntax but preserves node_name uniqueness.
Signed-off-by: Sebastian Bøe <sebastian.boe@nordicsemi.no>
Enables instance 3 of the lpuart driver, adds dts fixups, and configures
pinmuxes to use bluetooth hci on the mimxrt1050_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>
Enables an instance of the lpspi peripheral, configures the pinmuxes,
and updates the board documentation accordingly.
Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
Adds a board-level config option to select whether the code gets linked
into internal instruction tightly coupled memory (ITCM), external
hyperflash, or external qspi flash. The default is ITCM.
Note that we are not yet building an image vector table (IVT) into the
image, therefore the zephyr binary is not bootable by the SoC ROM as-is.
However, the DAPLink firmware prepends an IVT to the image when you use
its drag-and-drop feature to program flash, and this results in a
bootable zephyr application.
Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
Adds flexspi and semc memory controllers to the i.MX RT SoC. Adds
hyperflash, qspi, and sdram external memories to the mimxrt1050_evk
board.
Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
Underscore ('_') isn't a valid char for alias names based on the device
tree spec. Newer dtc compilers flag this as a warning so lets clean it
up. Replaced '_' with '-' to keep things simple.
Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
Adds support for the NXP MIMXRT1050-EVK board, an entry-level
development board for the new mimxrt1052 Cortex-M7 SoC.
Adds pinmuxing, dts, documentation, and jlink debug support for the new
board. Note that pinmuxing uses the mcux pinmux driver directly rather
than the Zephyr pinmux interface. The mimxrt1052 SoC has complicated
pinmuxing that may require changing the Zephyr pinmux interface to
support, so for now let's use the mcux driver directly.
We are also not yet configuring the external flash, therefore a debugger
is required to load code to the internal sram. The on-board OpenSDA
circuit with jlink firmware is sufficient, and the 'make debug' build
target is supported.
Samples tested include: hello_world, philosophers, synchronization,
basic/blinky, and basic/button.
Signed-off-by: Maureen Helm <maureen.helm@nxp.com>