Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 8c12fdf4 authored by Tim Kilbourn's avatar Tim Kilbourn
Browse files

Use init to write usb typec props

The sysfs nodes are owned by root, so use init to write role changes.

Bug: 21615151
Change-Id: I39ad03a23af0be9ac859d4fb79a46edc27e30f4e
parent fe1b4627
Loading
Loading
Loading
Loading
+31 −0
Original line number Original line Diff line number Diff line
@@ -89,3 +89,34 @@ on property:sys.usb.config=accessory,audio_source,adb
# when changing the default configuration
# when changing the default configuration
on property:persist.sys.usb.config=*
on property:persist.sys.usb.config=*
    setprop sys.usb.config ${persist.sys.usb.config}
    setprop sys.usb.config ${persist.sys.usb.config}

#
# USB type C
#

# USB mode changes
on property:sys.usb.typec.mode=dfp
    write /sys/class/dual_role_usb/otg_default/mode ${sys.usb.typec.mode}
    setprop sys.usb.typec.state ${sys.usb.typec.mode}

on property:sys.usb.typec.mode=ufp
    write /sys/class/dual_role_usb/otg_default/mode ${sys.usb.typec.mode}
    setprop sys.usb.typec.state ${sys.usb.typec.mode}

# USB data role changes
on property:sys.usb.typec.data_role=device
    write /sys/class/dual_role_usb/otg_default/data_role ${sys.usb.typec.data}
    setprop sys.usb.typec.state ${sys.usb.typec.data_role}

on property:sys.usb.typec.data_role=host
    write /sys/class/dual_role_usb/otg_default/data_role ${sys.usb.typec.data}
    setprop sys.usb.typec.state ${sys.usb.typec.data_role}

# USB power role changes
on property:sys.usb.typec.power_role=source
    write /sys/class/dual_role_usb/otg_default/power_role ${sys.usb.typec.power}
    setprop sys.usb.typec.state ${sys.usb.typec.power_role}

on property:sys.usb.typec.power_role=sink
    write /sys/class/dual_role_usb/otg_default/power_role ${sys.usb.typec.power}
    setprop sys.usb.typec.state ${sys.usb.typec.power_role}