zephyr/boards/arm/frdm_k82f/frdm_k82f.dts
Henrik Brix Andersen 9ceb29ac56 dts: introduce shared binding for the NXP FlexTimer
Do not assume in the SoC level device trees that NXP Kinetis FlexTimer
nodes will always be configured as PWM. Instead, configure FlexTimer
nodes for PWM at the board level for NXP Kinetis boards.

Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
2020-04-30 08:28:48 -05:00

203 lines
3.9 KiB
Plaintext

/*
* Copyright (c) 2019 SEAL AG
*
* SPDX-License-Identifier: Apache-2.0
*/
/dts-v1/;
#include <mem.h>
#include <nxp/nxp_k82fn256vxx15.dtsi>
#include <dt-bindings/pwm/pwm.h>
/ {
model = "NXP Kinetis K82 Freedom Board";
compatible = "nxp,mk82f25615", "nxp,k82f", "nxp,k8x";
aliases {
led0 = &red_led;
led1 = &green_led;
led2 = &blue_led;
pwm-led0 = &red_pwm_led;
pwm-led1 = &green_pwm_led;
pwm-led2 = &blue_pwm_led;
sw0 = &user_button_0;
sw1 = &user_button_1;
};
chosen {
zephyr,sram = &sram0;
zephyr,flash = &flash0;
zephyr,code-partition = &slot0_partition;
zephyr,console = &lpuart4;
zephyr,shell-uart = &lpuart4;
zephyr,uart-pipe = &lpuart4;
};
leds {
compatible = "gpio-leds";
red_led: led_0 {
gpios = <&gpioc 8 0>;
label = "User LED D3 Red";
};
green_led: led_1 {
gpios = <&gpioc 9 0>;
label = "User LED D3 Green";
};
blue_led: led_2 {
gpios = <&gpioc 10 0>;
label = "User LED D3 Blue";
};
};
pwmleds {
compatible = "pwm-leds";
red_pwm_led: red_pwm_led {
pwms = <&ftm3 4 15625000 PWM_POLARITY_INVERTED>;
};
green_pwm_led: green_pwm_led {
pwms = <&ftm3 5 15625000 PWM_POLARITY_INVERTED>;
};
blue_pwm_led: blue_pwm_led {
pwms = <&ftm3 6 15625000 PWM_POLARITY_INVERTED>;
};
};
gpio_keys {
compatible = "gpio-keys";
user_button_0: button_0 {
label = "User SW2";
gpios = <&gpioa 4 GPIO_ACTIVE_LOW>;
};
user_button_1: button_1 {
label = "User SW3";
gpios = <&gpioc 6 GPIO_ACTIVE_LOW>;
};
};
arduino_header: connector {
compatible = "arduino-header-r3";
#gpio-cells = <2>;
gpio-map-mask = <0xffffffff 0xffffffc0>;
gpio-map-pass-thru = <0 0x3f>;
gpio-map = <0 0 &gpiob 0 0>, /* A0 */
<1 0 &gpiob 1 0>, /* A1 */
<2 0 &gpioc 1 0>, /* A2 */
<3 0 &gpioc 2 0>, /* A3 */
<4 0 &gpiob 3 0>, /* A4 */
<5 0 &gpiob 2 0>, /* A5 */
<6 0 &gpiob 16 0>, /* D0 */
<7 0 &gpiob 17 0>, /* D1 */
<8 0 &gpioc 12 0>, /* D2 */
<9 0 &gpiod 0 0>, /* D3 */
<10 0 &gpioc 11 0>, /* D4 */
<11 0 &gpioc 10 0>, /* D5 */
<12 0 &gpioc 8 0>, /* D6 */
<13 0 &gpioc 9 0>, /* D7 */
<14 0 &gpioc 3 0>, /* D8 */
<15 0 &gpioc 5 0>, /* D9 */
<16 0 &gpiod 4 0>, /* D10 */
<17 0 &gpiod 2 0>, /* D11 */
<18 0 &gpiod 3 0>, /* D12 */
<19 0 &gpiod 1 0>, /* D13 */
<20 0 &gpioa 1 0>, /* D14 */
<21 0 &gpioa 2 0>; /* D15 */
};
};
&gpioa {
status = "okay";
};
&gpiob {
status = "okay";
};
&gpioc {
status = "okay";
};
&gpiod {
status = "okay";
};
&gpioe {
status = "okay";
};
&flash0 {
/*
* For more information, see:
* http://docs.zephyrproject.org/latest/guides/dts/index.html#flash-partitions
*/
partitions {
compatible = "fixed-partitions";
#address-cells = <1>;
#size-cells = <1>;
boot_partition: partition@0 {
label = "mcuboot";
reg = <0x0 DT_SIZE_K(48)>;
};
storage_partition: partition@c000 {
label = "storage";
reg = <0xc000 DT_SIZE_K(32)>;
};
slot0_partition: partition@14000 {
label = "image-0";
reg = <0x14000 DT_SIZE_K(80)>;
};
slot1_partition: partition@28000 {
label = "image-1";
reg = <0x28000 DT_SIZE_K(80)>;
};
scratch_partition: partition@3c000 {
label = "image-scratch";
reg = <0x3c000 DT_SIZE_K(16)>;
};
};
};
&i2c3 {
status = "okay";
fxos8700@1c {
compatible = "nxp,fxos8700";
reg = <0x1c>;
label = "FXOS8700";
int1-gpios = <&gpioc 13 GPIO_ACTIVE_LOW>;
};
};
&lpuart4 {
status = "okay";
current-speed = <115200>;
};
&ftm3 {
status = "okay";
compatible = "nxp,kinetis-ftm-pwm";
#pwm-cells = <3>;
};
&spi1 {
status = "okay";
mx25u32: mx25u3235f@0 {
compatible = "jedec,spi-nor";
label = "MX25U3235F";
reg = <0>;
spi-max-frequency = <104000000>;
wp-gpios = <&gpioe 3 0>;
reset-gpios = <&gpioe 0 0>;
size = <0x2000000>;
has-be32k;
jedec-id = [c2 25 36];
};
};
&usbotg {
status = "okay";
};