// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2012 Texas Instruments Incorporated - https://www.ti.com/ */ /dts-v1/; /plugin/; #include #include #include /* * Helper to show loaded overlays under: /proc/device-tree/chosen/overlays/ */ &{/chosen} { overlays { BB-BONE-4D7N-01-00A1.bb.org-overlays = __TIMESTAMP__; }; }; / { /* * Free up the pins used by the cape from the pinmux helpers. */ fragment@1 { target = <&ocp>; __overlay__ { P8_45_pinmux { status = "disabled"; }; /* lcd: lcd_data0 */ P8_46_pinmux { status = "disabled"; }; /* lcd: lcd_data1 */ P8_43_pinmux { status = "disabled"; }; /* lcd: lcd_data2 */ P8_44_pinmux { status = "disabled"; }; /* lcd: lcd_data3 */ P8_41_pinmux { status = "disabled"; }; /* lcd: lcd_data4 */ P8_42_pinmux { status = "disabled"; }; /* lcd: lcd_data5 */ P8_39_pinmux { status = "disabled"; }; /* lcd: lcd_data6 */ P8_40_pinmux { status = "disabled"; }; /* lcd: lcd_data7 */ P8_37_pinmux { status = "disabled"; }; /* lcd: lcd_data8 */ P8_38_pinmux { status = "disabled"; }; /* lcd: lcd_data9 */ P8_36_pinmux { status = "disabled"; }; /* lcd: lcd_data10 */ P8_34_pinmux { status = "disabled"; }; /* lcd: lcd_data11 */ P8_35_pinmux { status = "disabled"; }; /* lcd: lcd_data12 */ P8_33_pinmux { status = "disabled"; }; /* lcd: lcd_data13 */ P8_31_pinmux { status = "disabled"; }; /* lcd: lcd_data14 */ P8_32_pinmux { status = "disabled"; }; /* lcd: lcd_data15 */ P8_27_pinmux { status = "disabled"; }; /* lcd: lcd_vsync */ P8_29_pinmux { status = "disabled"; }; /* lcd: lcd_hsync */ P8_28_pinmux { status = "disabled"; }; /* lcd: lcd_pclk */ P8_30_pinmux { status = "disabled"; }; /* lcd: lcd_ac_bias_en */ P9_27_pinmux { status = "disabled"; }; /* lcd: gpio3_19 DISPEN */ P9_14_pinmux { status = "disabled"; }; /* pwm: ehrpwm1a PWM_BL */ }; }; fragment@2 { target = <&am33xx_pinmux>; __overlay__ { bb_lcd_pwm_backlight_pins: pinmux_bb_lcd_pwm_backlight_pins { pinctrl-single,pins = < BONE_P9_14 0x06 /* gpmc_a2.ehrpwm1a, OMAP_MUX_MODE6 | AM33XX_PIN_OUTPUT */ >; }; bb_lcd_lcd_pins: pinmux_bb_lcd_lcd_pins { pinctrl-single,pins = < BONE_P8_45 (PIN_OUTPUT | MUX_MODE0) /* lcd: lcd_data0.lcd_data0 */ BONE_P8_46 (PIN_OUTPUT | MUX_MODE0) /* lcd: lcd_data1.lcd_data1 */ BONE_P8_43 (PIN_OUTPUT | MUX_MODE0) /* lcd: lcd_data2.lcd_data2 */ BONE_P8_44 (PIN_OUTPUT | MUX_MODE0) /* lcd: lcd_data3.lcd_data3 */ BONE_P8_41 (PIN_OUTPUT | MUX_MODE0) /* lcd: lcd_data4.lcd_data4 */ BONE_P8_42 (PIN_OUTPUT | MUX_MODE0) /* lcd: lcd_data5.lcd_data5 */ BONE_P8_39 (PIN_OUTPUT | MUX_MODE0) /* lcd: lcd_data6.lcd_data6 */ BONE_P8_40 (PIN_OUTPUT | MUX_MODE0) /* lcd: lcd_data7.lcd_data7 */ BONE_P8_37 (PIN_OUTPUT | MUX_MODE0) /* lcd: lcd_data8.lcd_data8 */ BONE_P8_38 (PIN_OUTPUT | MUX_MODE0) /* lcd: lcd_data9.lcd_data9 */ BONE_P8_36 (PIN_OUTPUT | MUX_MODE0) /* lcd: lcd_data10.lcd_data10 */ BONE_P8_34 (PIN_OUTPUT | MUX_MODE0) /* lcd: lcd_data11.lcd_data11 */ BONE_P8_35 (PIN_OUTPUT | MUX_MODE0) /* lcd: lcd_data12.lcd_data12 */ BONE_P8_33 (PIN_OUTPUT | MUX_MODE0) /* lcd: lcd_data13.lcd_data13 */ BONE_P8_31 (PIN_OUTPUT | MUX_MODE0) /* lcd: lcd_data14.lcd_data14 */ BONE_P8_32 (PIN_OUTPUT | MUX_MODE0) /* lcd: lcd_data15.lcd_data15 */ BONE_P8_27 (PIN_OUTPUT | MUX_MODE0) /* lcd: lcd_vsync.lcd_vsync */ BONE_P8_29 (PIN_OUTPUT | MUX_MODE0) /* lcd: lcd_hsync.lcd_hsync */ BONE_P8_28 (PIN_OUTPUT | MUX_MODE0) /* lcd: lcd_pclk.lcd_pclk */ BONE_P8_30 (PIN_OUTPUT | MUX_MODE0) /* lcd: lcd_ac_bias_en.lcd_ac_bias_en */ 0x1a4 0x17 /* mcasp0_fsr.gpio3_19, OUTPUT | MODE7 LCD DISEN */ >; }; }; }; fragment@3 { target = <&epwmss1>; __overlay__ { status = "okay"; }; }; fragment@4 { target = <&ehrpwm1>; __overlay__ { pinctrl-names = "default"; pinctrl-0 = <&bb_lcd_pwm_backlight_pins>; status = "okay"; }; }; fragment@6 { target = <&lcdc>; __overlay__ { status = "okay"; }; }; fragment@7 { target-path="/"; __overlay__ { /* avoid stupid warning */ #address-cells = <1>; #size-cells = <1>; backlight { status = "okay"; compatible = "pwm-backlight"; pwms = <&ehrpwm1 0 500000 0>; brightness-levels = < 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 >; default-brightness-level = <100>; }; panel { status = "okay"; compatible = "ti,tilcdc,panel"; pinctrl-names = "default"; pinctrl-0 = <&bb_lcd_lcd_pins>; panel-info { ac-bias = <255>; ac-bias-intrpt = <0>; dma-burst-sz = <16>; bpp = <16>; fdd = <0x80>; sync-edge = <0>; sync-ctrl = <1>; raster-order = <0>; fifo-th = <0>; }; display-timings { native-mode = <&timing0>; /* Settings for ThreeFive S9700RTWV35TR / LCD7 cape: */ timing0: 800x480 { clock-frequency = <30000000>; hactive = <800>; vactive = <480>; hfront-porch = <40>; hback-porch = <40>; hsync-len = <48>; vback-porch = <30>; vfront-porch = <13>; vsync-len = <3>; hsync-active = <0>; vsync-active = <0>; de-active = <1>; pixelclk-active = <0>; }; }; }; fb { compatible = "ti,am33xx-tilcdc"; reg = <0x4830e000 0x1000>; interrupt-parent = <&intc>; interrupts = <36>; ti,hwmods = "lcdc"; }; }; }; };