Linux preempt-rt

Check our new training course

Real-Time Linux with PREEMPT_RT

Check our new training course
with Creative Commons CC-BY-SA
lecture and lab materials

Bootlin logo

Elixir Cross Referencer

/*
 * Copyright 2018 Foundries.io Ltd
 * SPDX-License-Identifier: Apache-2.0
 */

/ {
	aliases {
		led0 = &green_led;
		led1 = &blue_led;
		led2 = &red_led;
		led3 = &sts_led;
		pwm-led0 = &blue_pwm_led;
		pwm-led1 = &green_pwm_led;
		pwm-led2 = &red_pwm_led;
		blue-pwm-led = &blue_pwm_led;
		green-pwm-led = &green_pwm_led;
		red-pwm-led = &red_pwm_led;
		sw0 = &user_button_2;
		sw1 = &user_button_3;
		sw2 = &user_button_4;
		sw3 = &user_button_5;
	};

	leds {
		compatible = "gpio-leds";
		blue_led: led_0 {
			gpios = <&gpioa 22 GPIO_ACTIVE_HIGH>;
			label = "User LD1";
		};
		green_led: led_1 {
			gpios = <&gpioa 23 GPIO_ACTIVE_HIGH>;
			label = "User LD2";
		};
		red_led: led_2 {
			gpios = <&gpioa 24 GPIO_ACTIVE_HIGH>;
			label = "User LD3";
		};
		sts_led: led_3 {
			gpios = <&gpioe 0 GPIO_ACTIVE_HIGH>;
			label = "User LD4";
		};
	};

	pwmleds {
		compatible = "pwm-leds";
		blue_pwm_led: pwm_led_0 {
			pwms = <&pwm2 2 0 0>;
			label = "User PWM LD1";
		};
		green_pwm_led: pwm_led_1 {
			pwms = <&pwm2 1 0 0>;
			label = "User PWM LD2";
		};
		red_pwm_led: pwm_led_2 {
			pwms = <&pwm2 0 0 0>;
			label = "User PWM LD3";
		};
	};

	gpio_keys {
		compatible = "gpio-keys";
		user_button_2: button_0 {
			label = "User SW2";
			gpios = <&gpioa 0 GPIO_ACTIVE_LOW>;
		};
		user_button_3: button_1 {
			label = "User SW3";
			gpios = <&gpioe 8 GPIO_ACTIVE_LOW>;
		};
		user_button_4: button_2 {
			label = "User SW4";
			gpios = <&gpioe 9 GPIO_ACTIVE_LOW>;
		};
		user_button_5: button_3 {
			label = "User SW5";
			gpios = <&gpioe 12 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 &gpioc 11 0>,	/* A0 */
			   <1 0 &gpioc 12 0>,	/* A1 */
			   <2 0 &gpiob 9 0>,	/* A2 */
			   <3 0 &gpioe 4 0>,	/* A3 */
			   <4 0 &gpioe 10 0>,	/* A4 */
			   <5 0 &gpioe 11 0>,	/* A5 */
			   <6 0 &gpioa 25 0>,	/* D0 */
			   <7 0 &gpioa 26 0>,	/* D1 */
			   <8 0 &gpioa 27 0>,	/* D2 */
			   <9 0 &gpiob 13 0>,	/* D3 */
			   <10 0 &gpiob 14 0>,	/* D4 */
			   <11 0 &gpioa 30 0>,	/* D5 */
			   <12 0 &gpioa 31 0>,	/* D6 */
			   <13 0 &gpiob 1 0>,	/* D7 */
			   <14 0 &gpiob 2 0>,	/* D8 */
			   <15 0 &gpiob 3 0>,	/* D9 */
			   <16 0 &gpiob 6 0>,	/* D10 */
			   <17 0 &gpiob 5 0>,	/* D11 */
			   <18 0 &gpiob 7 0>,	/* D12 */
			   <19 0 &gpiob 4 0>,	/* D13 */
			   <20 0 &gpioc 9 0>,	/* D14 */
			   <21 0 &gpioc 10 0>;	/* D15 */
	};
};

arduino_serial: &uart1 {};

&uart0 {
	current-speed = <115200>;
	status = "okay";
};

arduino_i2c: &i2c0 {
	status = "okay";
};

&i2c3 {
	status = "okay";

	fxos8700@1e {
		compatible = "nxp,fxos8700";
		reg = <0x1e>;
		label = "FXOS8700";
		reset-gpios = <&gpioe 27 GPIO_ACTIVE_HIGH>;
		int1-gpios = <&gpioe 1 GPIO_ACTIVE_LOW>;
		int2-gpios = <&gpioe 22 GPIO_ACTIVE_LOW>;
	};
};

arduino_spi: &spi0 {
	status = "okay";
};

&spi1 {
	status = "okay";
	cs-gpios = <&gpiob 22 0>;
	mx25r32: mx25r3235f@0 {
		compatible = "jedec,spi-nor";
		reg = <0>;
		spi-max-frequency = <80000000>;
		label = "MX25R32";
		jedec-id = [c2 28 16];
		size = <33554432>;
		has-be32k;
	};
};

&pwm2 {
	status = "okay";
};