Skip to content

Commit

Permalink
dtsi: add pinctrl
Browse files Browse the repository at this point in the history
  • Loading branch information
wonderfulShrineMaidenOfParadise committed Aug 18, 2023
1 parent 51fa5c3 commit 295d795
Showing 1 changed file with 41 additions and 0 deletions.
41 changes: 41 additions & 0 deletions dtsi.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,9 @@
from generator import Options, GpioFlag
from panel import Panel, BacklightControl

def has_gpio_backlight(options):
return 'backlight' in options.gpios


def generate_backlight(p: Panel):
if p.backlight == BacklightControl.DCS:
Expand All @@ -22,6 +25,12 @@ def generate_gpios(options: Options):
for name, flags in options.gpios.items():
flags = "GPIO_ACTIVE_LOW" if flags & GpioFlag.ACTIVE_LOW else "GPIO_ACTIVE_HIGH"
s += f"\t\t{name}-gpios = <&tlmm XY {flags}>;\n"

if has_gpio_backlight(options):
s += '''
pinctrl-0 = <&lcd_bl_en_default>;
pinctrl-names = "default";
'''
return s


Expand All @@ -35,6 +44,10 @@ def generate_panel_dtsi(p: Panel, options: Options) -> None:
''')
f.write(f'''\
&mdss_dsi0 {{
pinctrl-0 = <&mdss_default>;
pinctrl-1 = <&mdss_sleep>;
pinctrl-names = "default", "sleep";
panel@0 {{
compatible = "{options.compatible}";
reg = <0>;
Expand Down Expand Up @@ -68,4 +81,32 @@ def generate_panel_dtsi(p: Panel, options: Options) -> None:
&mdss_dsi0_phy {
phy-type = <PHY_TYPE_CPHY>;
};
''')

f.write('''
&tlmm {''')
if has_gpio_backlight(options):
f.write('''
lcd_bl_en_default: lcd-bl-en-default-state {
pins = "gpioXY";
function = "gpio";
drive-strength = <2>;
bias-disable;
};
''')
f.write('''
mdss_default: mdss-default-state {
pins = "gpioXY";
function = "gpio";
drive-strength = <8>;
bias-disable;
};
mdss_sleep: mdss-sleep-state {
pins = "gpioXY";
function = "gpio";
drive-strength = <2>;
bias-pull-down;
};
};
''')

0 comments on commit 295d795

Please sign in to comment.