Merge b2a661781298f2816d6e984ba1eda9ca4c02ef5e on remote branch
Change-Id: I8f47a522bfcfb026f69a4f3b6c4c111985829b54
diff --git a/etc/init.qcom.usb.rc b/etc/init.qcom.usb.rc
index 98cdf67..ce1b1c4 100644
--- a/etc/init.qcom.usb.rc
+++ b/etc/init.qcom.usb.rc
@@ -1804,3 +1804,48 @@
write /sys/kernel/debug/pmic-votable/USB_ICL/force_val 0
write /config/usb_gadget/g1/configs/b.1/MaxPower 0
write /sys/module/eud/parameters/enable 0
+
+on property:vendor.usb.uvc.function.init=1
+ write /config/usb_gadget/g1/functions/uvc.0/streaming_maxpacket 3072
+ write /config/usb_gadget/g1/functions/uvc.0/streaming_maxburst 1
+ mkdir /config/usb_gadget/g1/functions/uvc.0/control/header/h
+ symlink /config/usb_gadget/g1/functions/uvc.0/control/header/h /config/usb_gadget/g1/functions/uvc.0/control/class/fs/h
+ symlink /config/usb_gadget/g1/functions/uvc.0/control/header/h /config/usb_gadget/g1/functions/uvc.0/control/class/ss/h
+ mkdir /config/usb_gadget/g1/functions/uvc.0/streaming/uncompressed/u
+ mkdir /config/usb_gadget/g1/functions/uvc.0/streaming/uncompressed/u/360p
+ write /config/usb_gadget/g1/functions/uvc.0/streaming/uncompressed/u/360p/dwFrameInterval "666666\n1000000\n5000000\n"
+ mkdir /config/usb_gadget/g1/functions/uvc.0/streaming/uncompressed/u/720p
+ write /config/usb_gadget/g1/functions/uvc.0/streaming/uncompressed/u/720p/wWidth 1280
+ write /config/usb_gadget/g1/functions/uvc.0/streaming/uncompressed/u/720p/wHeight 720
+ write /config/usb_gadget/g1/functions/uvc.0/streaming/uncompressed/u/720p/dwMinBitRate 29491200
+ write /config/usb_gadget/g1/functions/uvc.0/streaming/uncompressed/u/720p/dwMaxBitRate 29491200
+ write /config/usb_gadget/g1/functions/uvc.0/streaming/uncompressed/u/720p/dwMaxVideoFrameBufferSize 1843200
+ write /config/usb_gadget/g1/functions/uvc.0/streaming/uncompressed/u/720p/dwDefaultFrameInterval 5000000
+ write /config/usb_gadget/g1/functions/uvc.0/streaming/uncompressed/u/720p/dwFrameInterval "5000000\n"
+ mkdir /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m
+ mkdir /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/360p
+ write /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/360p/dwFrameInterval "666666\n1000000\n5000000\n"
+ mkdir /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/720p
+ write /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/720p/wWidth 1280
+ write /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/720p/wHeight 720
+ write /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/720p/dwMinBitRate 29491200
+ write /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/720p/dwMaxBitRate 29491200
+ write /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/720p/dwMaxVideoFrameBufferSize 1843200
+ write /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/720p/dwDefaultFrameInterval 5000000
+ write /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/720p/dwFrameInterval "5000000\n"
+ write /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/bmaControls 0x04
+ mkdir /config/usb_gadget/g1/functions/uvc.0/streaming/h264/h
+ mkdir /config/usb_gadget/g1/functions/uvc.0/streaming/h264/h/960p
+ write /config/usb_gadget/g1/functions/uvc.0/streaming/h264/h/960p/wWidth 1920
+ write /config/usb_gadget/g1/functions/uvc.0/streaming/h264/h/960p/wHeight 960
+ write /config/usb_gadget/g1/functions/uvc.0/streaming/h264/h/960p/bLevelIDC 40
+ write /config/usb_gadget/g1/functions/uvc.0/streaming/h264/h/960p/dwFrameInterval "333667\n"
+ mkdir /config/usb_gadget/g1/functions/uvc.0/streaming/h264/h/1920p
+ write /config/usb_gadget/g1/functions/uvc.0/streaming/h264/h/1920p/dwFrameInterval "333667\n"
+ mkdir /config/usb_gadget/g1/functions/uvc.0/streaming/header/h
+ symlink /config/usb_gadget/g1/functions/uvc.0/streaming/uncompressed/u /config/usb_gadget/g1/functions/uvc.0/streaming/header/h/u
+ symlink /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m /config/usb_gadget/g1/functions/uvc.0/streaming/header/h/m
+ symlink /config/usb_gadget/g1/functions/uvc.0/streaming/h264/h /config/usb_gadget/g1/functions/uvc.0/streaming/header/h
+ symlink /config/usb_gadget/g1/functions/uvc.0/streaming/header/h /config/usb_gadget/g1/functions/uvc.0/streaming/class/fs/h
+ symlink /config/usb_gadget/g1/functions/uvc.0/streaming/header/h /config/usb_gadget/g1/functions/uvc.0/streaming/class/hs/h
+ symlink /config/usb_gadget/g1/functions/uvc.0/streaming/header/h /config/usb_gadget/g1/functions/uvc.0/streaming/class/ss/h
diff --git a/etc/init.qcom.usb.sh b/etc/init.qcom.usb.sh
index a5ceb48..0121f1b 100644
--- a/etc/init.qcom.usb.sh
+++ b/etc/init.qcom.usb.sh
@@ -186,54 +186,5 @@
# Initialize UVC conifguration.
#
if [ -d /config/usb_gadget/g1/functions/uvc.0 ]; then
- cd /config/usb_gadget/g1/functions/uvc.0
-
- echo 3072 > streaming_maxpacket
- echo 1 > streaming_maxburst
- mkdir control/header/h
- ln -s control/header/h control/class/fs/
- ln -s control/header/h control/class/ss
-
- mkdir -p streaming/uncompressed/u/360p
- echo "666666\n1000000\n5000000\n" > streaming/uncompressed/u/360p/dwFrameInterval
-
- mkdir -p streaming/uncompressed/u/720p
- echo 1280 > streaming/uncompressed/u/720p/wWidth
- echo 720 > streaming/uncompressed/u/720p/wWidth
- echo 29491200 > streaming/uncompressed/u/720p/dwMinBitRate
- echo 29491200 > streaming/uncompressed/u/720p/dwMaxBitRate
- echo 1843200 > streaming/uncompressed/u/720p/dwMaxVideoFrameBufferSize
- echo 5000000 > streaming/uncompressed/u/720p/dwDefaultFrameInterval
- echo "5000000\n" > streaming/uncompressed/u/720p/dwFrameInterval
-
- mkdir -p streaming/mjpeg/m/360p
- echo "666666\n1000000\n5000000\n" > streaming/mjpeg/m/360p/dwFrameInterval
-
- mkdir -p streaming/mjpeg/m/720p
- echo 1280 > streaming/mjpeg/m/720p/wWidth
- echo 720 > streaming/mjpeg/m/720p/wWidth
- echo 29491200 > streaming/mjpeg/m/720p/dwMinBitRate
- echo 29491200 > streaming/mjpeg/m/720p/dwMaxBitRate
- echo 1843200 > streaming/mjpeg/m/720p/dwMaxVideoFrameBufferSize
- echo 5000000 > streaming/mjpeg/m/720p/dwDefaultFrameInterval
- echo "5000000\n" > streaming/mjpeg/m/720p/dwFrameInterval
-
- echo 0x04 > /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/bmaControls
-
- mkdir -p streaming/h264/h/960p
- echo 1920 > streaming/h264/h/960p/wWidth
- echo 960 > streaming/h264/h/960p/wWidth
- echo 40 > streaming/h264/h/960p/bLevelIDC
- echo "333667\n" > streaming/h264/h/960p/dwFrameInterval
-
- mkdir -p streaming/h264/h/1920p
- echo "333667\n" > streaming/h264/h/1920p/dwFrameInterval
-
- mkdir streaming/header/h
- ln -s streaming/uncompressed/u streaming/header/h
- ln -s streaming/mjpeg/m streaming/header/h
- ln -s streaming/h264/h streaming/header/h
- ln -s streaming/header/h streaming/class/fs/
- ln -s streaming/header/h streaming/class/hs/
- ln -s streaming/header/h streaming/class/ss/
+ setprop vendor.usb.uvc.function.init 1
fi
diff --git a/etc/init.qti.usb.debug.sh b/etc/init.qti.usb.debug.sh
index ebce628..c341490 100644
--- a/etc/init.qti.usb.debug.sh
+++ b/etc/init.qti.usb.debug.sh
@@ -99,6 +99,9 @@
echo 1 > events/dwc3/dwc3_gadget_giveback/enable
echo 1 > events/dwc3/dwc3_prepare_trb/enable
echo 1 > events/dwc3/dwc3_event/enable
+ echo 1 > events/dwc3/dwc3_alloc_request/enable
+ echo 1 > events/dwc3/dwc3_free_request/enable
+ echo 1 > events/dwc3/dwc3_gadget_generic_cmd/enable
# ucsi
echo 1 > events/ucsi/ucsi_connector_change/enable
@@ -125,4 +128,9 @@
echo 1 > $tracefs/instances/usb_xhci/tracing_on
echo 1 > tracing_on
+
+ #dwc3_readl_writel
+ mkdir $tracefs/instances/dwc3_rw_traces
+ echo 1 > $tracefs/instances/dwc3_rw_traces/events/dwc3/dwc3_readl/enable
+ echo 1 > $tracefs/instances/dwc3_rw_traces/events/dwc3/dwc3_writel/enable
fi