Skip to content

Instantly share code, notes, and snippets.

@Froosh
Last active February 7, 2017 08:53
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save Froosh/5dbd60438b723773fb147745b625a572 to your computer and use it in GitHub Desktop.
Save Froosh/5dbd60438b723773fb147745b625a572 to your computer and use it in GitHub Desktop.
Patch demonstrating the differences from the original imx32-olinuxino.dts source
--- arch/arm/boot/dts/imx23-olinuxino.dts 2017-02-06 17:27:01.054966200 +1100
+++ arch/arm/boot/dts/imx23-holiday.dts 2017-02-06 17:38:01.791999700 +1100
@@ -7,18 +7,21 @@
* License. You may obtain a copy of the GNU General Public License
* Version 2 or later at the following locations:
*
* http://www.opensource.org/licenses/gpl-license.html
* http://www.gnu.org/copyleft/gpl.html
+ *
+ * Adjusted for MooresCloud Holiday lights, based on the OLinuXino open hardware
+ * Edits by Robin Frousheger
*/
/dts-v1/;
#include <dt-bindings/gpio/gpio.h>
#include "imx23.dtsi"
/ {
- model = "i.MX23 Olinuxino Low Cost Board";
+ model = "MooresCloud Holiday Lights";
compatible = "olimex,imx23-olinuxino", "fsl,imx23";
memory {
reg = <0x40000000 0x04000000>;
};
@@ -46,28 +49,36 @@
fsl,drive-strength = <MXS_DRIVE_4mA>;
fsl,voltage = <MXS_VOLTAGE_HIGH>;
fsl,pull-up = <MXS_PULL_DISABLE>;
};
- led_pin_gpio2_1: led_gpio2_1@0 {
+ spi2_pins_holiday: spi2@0 {
reg = <0>;
fsl,pinmux-ids = <
- MX23_PAD_SSP1_DETECT__GPIO_2_1
+ MX23_PAD_GPMI_WRN__SSP2_SCK
+ MX23_PAD_GPMI_RDY1__SSP2_CMD
+ MX23_PAD_GPMI_D00__SSP2_DATA0
>;
- fsl,drive-strength = <MXS_DRIVE_4mA>;
+ fsl,drive-strength = <MXS_DRIVE_8mA>;
fsl,voltage = <MXS_VOLTAGE_HIGH>;
- fsl,pull-up = <MXS_PULL_DISABLE>;
+ fsl,pull-up = <MXS_PULL_ENABLE>;
};
};
ssp1: ssp@80034000 {
#address-cells = <1>;
#size-cells = <0>;
compatible = "fsl,imx23-spi";
pinctrl-names = "default";
- pinctrl-0 = <&spi2_pins_a>;
+ pinctrl-0 = <&spi2_pins_holiday>;
status = "okay";
+
+ spidev: spidev@0 {
+ compatible = "spidev";
+ spi-max-frequency = <5000000>;
+ reg = <0>;
+ };
};
};
apbx@80040000 {
lradc@80050000 {
@@ -76,10 +87,18 @@
i2c: i2c@80058000 {
pinctrl-names = "default";
pinctrl-0 = <&i2c_pins_b>;
status = "okay";
+
+ eeprom@50 {
+ compatible = "atmel,24c64";
+ reg = <0x50>;
+ pagesize = <32>;
+ read-only;
+ status = "okay";
+ };
};
duart: serial@80070000 {
pinctrl-names = "default";
pinctrl-0 = <&duart_pins_a>;
@@ -120,17 +139,6 @@
enable-active-high;
startup-delay-us = <300>; /* LAN9215 requires a POR of 200us minimum */
gpio = <&gpio0 17 0>;
};
};
-
- leds {
- compatible = "gpio-leds";
- pinctrl-names = "default";
- pinctrl-0 = <&led_pin_gpio2_1>;
-
- user {
- label = "green";
- gpios = <&gpio2 1 GPIO_ACTIVE_HIGH>;
- };
- };
};
@Froosh
Copy link
Author

Froosh commented Feb 6, 2017

Some notes:

  • The on-board LED was not placed during construction of the Holiday, so leaving the devicetree segments in could get confusing for folk finding an entry for it in /sys/class/leds/
  • No SS pin is defined for the SPI interface as the Holiday does not use it at all
  • SPI interface pins are defined with pull-ups enabled, mainly because that's how they're defined for the OLinuXino
  • EEPROM is defined as read-only so folk don't accidentally interfere with the Arduino portion of the Holiday

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment