mirror of
https://github.com/Evolution-X-Devices/device_google_wahoo
synced 2026-02-01 07:50:47 +00:00
NAK'ed OUT transfers never complete once the usb controller enters L1 LPM. The issue was rootcaused to the usb controller not performing remote wakeup when it enters L1 and a trasaction is queued. Since, this is entirely controlled by controller's hardware, disable L1 lpm to prevent transfer failure. Also, init already has the required sepolicy to write to sysfs nodes. Bug: 62038982 Test: Transfers happen with Broadwell chromebooks Change-Id: Ibb13b5b79e1aa6a5d35ddcaffece4ef4942920b7
104 lines
5.0 KiB
Plaintext
104 lines
5.0 KiB
Plaintext
#
|
|
# Copyright (C) 2016 The Android Open-Source Project
|
|
#
|
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
# you may not use this file except in compliance with the License.
|
|
# You may obtain a copy of the License at
|
|
#
|
|
# http://www.apache.org/licenses/LICENSE-2.0
|
|
#
|
|
# Unless required by applicable law or agreed to in writing, software
|
|
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
# See the License for the specific language governing permissions and
|
|
# limitations under the License.
|
|
#
|
|
|
|
on boot
|
|
mount configfs none /config
|
|
mkdir /config/usb_gadget/g1 0770 shell shell
|
|
mkdir /config/usb_gadget/g1/strings/0x409 0770 shell shell
|
|
write /config/usb_gadget/g1/bcdUSB 0x0200
|
|
write /config/usb_gadget/g1/idVendor 0x18d1
|
|
write /config/usb_gadget/g1/bcdDevice 0x0440
|
|
write /config/usb_gadget/g1/strings/0x409/serialnumber ${ro.serialno}
|
|
write /config/usb_gadget/g1/strings/0x409/manufacturer ${ro.product.manufacturer}
|
|
write /config/usb_gadget/g1/strings/0x409/product ${ro.product.model}
|
|
mkdir /config/usb_gadget/g1/functions/mass_storage.0
|
|
mkdir /config/usb_gadget/g1/functions/accessory.gs2
|
|
mkdir /config/usb_gadget/g1/functions/audio_source.gs3
|
|
mkdir /config/usb_gadget/g1/functions/midi.gs5
|
|
mkdir /config/usb_gadget/g1/functions/ffs.adb
|
|
mkdir /config/usb_gadget/g1/functions/ffs.mtp
|
|
mkdir /config/usb_gadget/g1/functions/diag.diag
|
|
mkdir /config/usb_gadget/g1/functions/cser.dun.0
|
|
mkdir /config/usb_gadget/g1/functions/cser.nmea.1
|
|
mkdir /config/usb_gadget/g1/functions/gsi.rmnet
|
|
mkdir /config/usb_gadget/g1/functions/gsi.rndis
|
|
mkdir /config/usb_gadget/g1/functions/qdss.qdss
|
|
mkdir /config/usb_gadget/g1/configs/b.1 0770 shell shell
|
|
mkdir /config/usb_gadget/g1/configs/b.1/strings/0x409 0770 shell shell
|
|
write /config/usb_gadget/g1/os_desc/b_vendor_code 0x1
|
|
mkdir /dev/usb-ffs 0775 shell shell
|
|
mkdir /dev/usb-ffs/adb 0770 shell shell
|
|
mount functionfs adb /dev/usb-ffs/adb uid=2000,gid=2000
|
|
mkdir /dev/usb-ffs/mtp 0770 mtp mtp
|
|
mount functionfs mtp /dev/usb-ffs/mtp rmode=0770,fmode=0660,uid=1024,gid=1024,no_disconnect=1
|
|
setprop sys.usb.ffs.max_write 524288
|
|
setprop sys.usb.ffs.max_read 524288
|
|
setprop sys.usb.mtp.device_type 3
|
|
setprop sys.usb.configfs 1
|
|
setprop sys.usb.controller "a800000.dwc3"
|
|
write /sys/module/libcomposite/parameters/disable_l1_for_hs "y"
|
|
|
|
on property:sys.usb.ffs.mtp.ready=1 && property:sys.usb.config=mtp && property:sys.usb.configfs=1
|
|
write /config/usb_gadget/g1/idProduct 0x4ee1
|
|
symlink /config/usb_gadget/g1/functions/ffs.mtp /config/usb_gadget/g1/configs/b.1/f1
|
|
|
|
on property:sys.usb.ffs.ready=1 && property:sys.usb.ffs.mtp.ready=1 && property:sys.usb.config=mtp,adb && property:sys.usb.configfs=1
|
|
write /config/usb_gadget/g1/idProduct 0x4ee2
|
|
symlink /config/usb_gadget/g1/functions/ffs.mtp /config/usb_gadget/g1/configs/b.1/f1
|
|
|
|
on property:sys.usb.config=rndis && property:sys.usb.configfs=1
|
|
write /config/usb_gadget/g1/idProduct 0x4ee3
|
|
symlink /config/usb_gadget/g1/functions/gsi.rndis /config/usb_gadget/g1/configs/b.1/f1
|
|
|
|
on property:sys.usb.ffs.ready=1 && property:sys.usb.config=rndis,adb && property:sys.usb.configfs=1
|
|
write /config/usb_gadget/g1/idProduct 0x4ee4
|
|
symlink /config/usb_gadget/g1/functions/gsi.rndis /config/usb_gadget/g1/configs/b.1/f1
|
|
|
|
on property:sys.usb.ffs.mtp.ready=1 && property:sys.usb.config=ptp && property:sys.usb.configfs=1
|
|
write /config/usb_gadget/g1/idProduct 0x4ee5
|
|
symlink /config/usb_gadget/g1/functions/ffs.mtp /config/usb_gadget/g1/configs/b.1/f1
|
|
|
|
on property:sys.usb.ffs.ready=1 && property:sys.usb.ffs.mtp.ready=1 && property:sys.usb.config=ptp,adb && property:sys.usb.configfs=1
|
|
write /config/usb_gadget/g1/idProduct 0x4ee6
|
|
symlink /config/usb_gadget/g1/functions/ffs.mtp /config/usb_gadget/g1/configs/b.1/f1
|
|
|
|
on property:sys.usb.config=adb && property:sys.usb.configfs=1
|
|
write /config/usb_gadget/g1/idProduct 0x4ee7
|
|
|
|
on property:sys.usb.config=midi && property:sys.usb.configfs=1
|
|
write /config/usb_gadget/g1/idProduct 0x4ee8
|
|
|
|
on property:sys.usb.config=midi,adb && property:sys.usb.configfs=1
|
|
write /config/usb_gadget/g1/idProduct 0x4ee9
|
|
|
|
on property:sys.usb.config=accessory && property:sys.usb.configfs=1
|
|
write /config/usb_gadget/g1/idProduct 0x2d00
|
|
|
|
on property:sys.usb.config=accessory,adb && property:sys.usb.configfs=1
|
|
write /config/usb_gadget/g1/idProduct 0x2d01
|
|
|
|
on property:sys.usb.config=audio_source && property:sys.usb.configfs=1
|
|
write /config/usb_gadget/g1/idProduct 0x2d02
|
|
|
|
on property:sys.usb.config=audio_source,adb && property:sys.usb.configfs=1
|
|
write /config/usb_gadget/g1/idProduct 0x2d03
|
|
|
|
on property:sys.usb.config=accessory,audio_source && property:sys.usb.configfs=1
|
|
write /config/usb_gadget/g1/idProduct 0x2d04
|
|
|
|
on property:sys.usb.config=accessory,audio_source,adb && property:sys.usb.configfs=1
|
|
write /config/usb_gadget/g1/idProduct 0x2d05
|