Skip to content

Instantly share code, notes, and snippets.

@jvranish
Created April 9, 2015 15:08
Show Gist options
  • Save jvranish/9d87d1e993613bd3cc68 to your computer and use it in GitHub Desktop.
Save jvranish/9d87d1e993613bd3cc68 to your computer and use it in GitHub Desktop.
Raspberry PI B+ DeviceTree for 24-bit DPI LCD interface over GPIOs
/dts-v1/;
/ {
videocore {
clock_routing {
vco@PLLD { freq = <2000000000>; };
chan@DPER { div = <8>; }; // APER will be 500MHz
}; // clock routing
pins_bplus {
pin_config {
pin@default {
polarity = "active_high";
termination = "pull_down";
startup_state = "inactive";
function = "input";
}; // default
pin@p0 { function = "dpi"; termination = "no_pulling"; drive_strength_mA = < 8 >;}; // CLK
pin@p1 { function = "dpi"; termination = "no_pulling";}; // DEN
pin@p2 { function = "dpi"; termination = "no_pulling"; drive_strength_mA = < 8 >;}; // VSYN
pin@p3 { function = "dpi"; termination = "no_pulling";}; // HSYN
pin@p4 { function = "dpi"; termination = "no_pulling";}; // BL0
pin@p5 { function = "dpi"; termination = "no_pulling";}; // BL1
pin@p6 { function = "dpi"; termination = "no_pulling";}; // BL2
pin@p7 { function = "dpi"; termination = "no_pulling";}; // BL3
pin@p8 { function = "dpi"; termination = "no_pulling";}; // BL4
pin@p9 { function = "dpi"; termination = "no_pulling";}; // BL5
pin@p10 { function = "dpi"; termination = "no_pulling";}; // BL6
pin@p11 { function = "dpi"; termination = "no_pulling";}; // BL7
pin@p12 { function = "dpi"; termination = "no_pulling";}; // GR0
pin@p13 { function = "dpi"; termination = "no_pulling";}; // GR1
pin@p14 { function = "dpi"; termination = "no_pulling";}; // GR2
pin@p15 { function = "dpi"; termination = "no_pulling";}; // GR3
pin@p16 { function = "dpi"; termination = "no_pulling";}; // GR4
pin@p17 { function = "dpi"; termination = "no_pulling";}; // GR5
pin@p18 { function = "dpi"; termination = "no_pulling";}; // GR6
pin@p19 { function = "dpi"; termination = "no_pulling";}; // GR7
pin@p20 { function = "dpi"; termination = "no_pulling";}; // RD0
pin@p21 { function = "dpi"; termination = "no_pulling";}; // RD1
pin@p22 { function = "dpi"; termination = "no_pulling";}; // RD2
pin@p23 { function = "dpi"; termination = "no_pulling";}; // RD3
pin@p24 { function = "dpi"; termination = "no_pulling";}; // RD4
pin@p25 { function = "dpi"; termination = "no_pulling";}; // RD5
pin@p26 { function = "dpi"; termination = "no_pulling";}; // RD6
pin@p27 { function = "dpi"; termination = "no_pulling";}; // RD7
pin@p28 { function = "i2c0"; termination = "pull_up";}; // I2C 0 SDA
pin@p29 { function = "i2c0"; termination = "pull_up";}; // I2C 0 SCL
pin@p31 { function = "output"; termination = "pull_down";}; // LAN NRESET
pin@p32 { function = "output"; termination = "pull_down";}; // Camera LED
pin@p35 { function = "input"; termination = "no_pulling"; polarity = "active_low";}; // Power low
pin@p38 { function = "output"; termination = "no_pulling";}; // USB current limit (0=600mA, 1=1200mA)
pin@p40 { function = "pwm"; termination = "no_pulling"; drive_strength_mA = < 16 >;}; // Left audio
pin@p41 { function = "output"; termination = "no_pulling";}; // Camera enable
pin@p44 { function = "gp_clk"; termination = "pull_down";}; // Ethernet 25MHz output
pin@p45 { function = "pwm"; termination = "no_pulling"; drive_strength_mA = < 16 >;}; // Right audio
pin@p46 { function = "input"; termination = "no_pulling"; polarity = "active_low"; }; // Hotplug
pin@p47 { function = "output"; termination = "pull_down";}; // activity LED
pin@p48 { function = "sdcard"; termination = "pull_up"; drive_strength_mA = < 8 >; }; // SD CLK
pin@p49 { function = "sdcard"; termination = "pull_up"; drive_strength_mA = < 8 >; }; // SD CMD
pin@p50 { function = "sdcard"; termination = "pull_up"; drive_strength_mA = < 8 >; }; // SD D0
pin@p51 { function = "sdcard"; termination = "pull_up"; drive_strength_mA = < 8 >; }; // SD D1
pin@p52 { function = "sdcard"; termination = "pull_up"; drive_strength_mA = < 8 >; }; // SD D2
pin@p53 { function = "sdcard"; termination = "pull_up"; drive_strength_mA = < 8 >; }; // SD D3
}; // pin_config
pin_defines {
pin_define@HDMI_CONTROL_ATTACHED {
type = "internal";
number = <46>;
};
pin_define@NUM_CAMERAS {
type = "internal";
number = <1>;
};
pin_define@CAMERA_0_I2C_PORT {
type = "internal";
number = <0>;
};
pin_define@CAMERA_0_SDA_PIN {
type = "internal";
number = <28>;
};
pin_define@CAMERA_0_SCL_PIN {
type = "internal";
number = <29>;
};
pin_define@CAMERA_0_SHUTDOWN {
type = "internal";
number = <41>;
};
pin_define@CAMERA_0_UNICAM_PORT {
type = "internal";
number = <1>;
};
pin_define@CAMERA_0_LED {
type = "internal";
number = <32>;
};
pin_define@FLASH_0_ENABLE {
type = "absent";
};
pin_define@FLASH_0_INDICATOR {
type = "absent";
};
pin_define@FLASH_1_ENABLE {
type = "absent";
};
pin_define@FLASH_1_INDICATOR {
type = "absent";
};
pin_define@POWER_LOW {
type = "internal";
number = <35>;
};
pin_define@LEDS_DISK_ACTIVITY {
type = "internal";
number = <47>;
};
pin_define@LAN_RESET {
type = "internal";
number = <31>;
};
}; // pin_defines
}; // pins_bplus
}; // videocore
}; // dts-v1
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment