diff options
Diffstat (limited to 'meta-oe/recipes-devtools/android-tools')
5 files changed, 105 insertions, 0 deletions
diff --git a/meta-oe/recipes-devtools/android-tools/android-tools-conf-configfs/10-adbd-configfs.conf b/meta-oe/recipes-devtools/android-tools/android-tools-conf-configfs/10-adbd-configfs.conf new file mode 100644 index 0000000000..ddf155a907 --- /dev/null +++ b/meta-oe/recipes-devtools/android-tools/android-tools-conf-configfs/10-adbd-configfs.conf | |||
| @@ -0,0 +1,4 @@ | |||
| 1 | [Service] | ||
| 2 | ExecStartPre=/usr/bin/android-gadget-setup | ||
| 3 | ExecStartPost=/usr/bin/android-gadget-start | ||
| 4 | ExecStopPost=/usr/bin/android-gadget-cleanup | ||
diff --git a/meta-oe/recipes-devtools/android-tools/android-tools-conf-configfs/android-gadget-cleanup b/meta-oe/recipes-devtools/android-tools/android-tools-conf-configfs/android-gadget-cleanup new file mode 100644 index 0000000000..517227d4a6 --- /dev/null +++ b/meta-oe/recipes-devtools/android-tools/android-tools-conf-configfs/android-gadget-cleanup | |||
| @@ -0,0 +1,24 @@ | |||
| 1 | #!/bin/sh | ||
| 2 | |||
| 3 | [ -d /sys/kernel/config/usb_gadget ] || exit 0 | ||
| 4 | |||
| 5 | cd /sys/kernel/config/usb_gadget | ||
| 6 | |||
| 7 | cd adb | ||
| 8 | |||
| 9 | echo "" > UDC || true | ||
| 10 | |||
| 11 | killall adbd || true | ||
| 12 | |||
| 13 | umount /dev/usb-ffs/adb | ||
| 14 | |||
| 15 | rm configs/c.1/ffs.usb0 | ||
| 16 | |||
| 17 | rmdir configs/c.1/strings/0x409 | ||
| 18 | rmdir configs/c.1 | ||
| 19 | |||
| 20 | rmdir functions/ffs.usb0 | ||
| 21 | rmdir strings/0x409 | ||
| 22 | |||
| 23 | cd .. | ||
| 24 | rmdir adb | ||
diff --git a/meta-oe/recipes-devtools/android-tools/android-tools-conf-configfs/android-gadget-setup b/meta-oe/recipes-devtools/android-tools/android-tools-conf-configfs/android-gadget-setup new file mode 100644 index 0000000000..e44d1bacbe --- /dev/null +++ b/meta-oe/recipes-devtools/android-tools/android-tools-conf-configfs/android-gadget-setup | |||
| @@ -0,0 +1,35 @@ | |||
| 1 | #!/bin/sh | ||
| 2 | |||
| 3 | set -e | ||
| 4 | |||
| 5 | manufacturer=RPB | ||
| 6 | model="Android device" | ||
| 7 | serial=0123456789ABCDEF | ||
| 8 | |||
| 9 | if [ -r /etc/android-gadget-setup.machine ] ; then | ||
| 10 | . /etc/android-gadget-setup.machine | ||
| 11 | fi | ||
| 12 | |||
| 13 | [ -d /sys/kernel/config/usb_gadget ] || modprobe libcomposite | ||
| 14 | |||
| 15 | cd /sys/kernel/config/usb_gadget | ||
| 16 | |||
| 17 | [ -d adb ] && /usr/bin/android-gadget-cleanup || true | ||
| 18 | |||
| 19 | mkdir adb | ||
| 20 | cd adb | ||
| 21 | |||
| 22 | mkdir configs/c.1 | ||
| 23 | mkdir functions/ffs.usb0 | ||
| 24 | mkdir strings/0x409 | ||
| 25 | mkdir configs/c.1/strings/0x409 | ||
| 26 | echo 0x18d1 > idVendor | ||
| 27 | echo 0xd002 > idProduct | ||
| 28 | echo "$serial" > strings/0x409/serialnumber | ||
| 29 | echo "$manufacturer" > strings/0x409/manufacturer | ||
| 30 | echo "$model" > strings/0x409/product | ||
| 31 | echo "Conf 1" > configs/c.1/strings/0x409/configuration | ||
| 32 | ln -s functions/ffs.usb0 configs/c.1 | ||
| 33 | |||
| 34 | mkdir -p /dev/usb-ffs/adb | ||
| 35 | mount -t functionfs usb0 /dev/usb-ffs/adb | ||
diff --git a/meta-oe/recipes-devtools/android-tools/android-tools-conf-configfs/android-gadget-start b/meta-oe/recipes-devtools/android-tools/android-tools-conf-configfs/android-gadget-start new file mode 100644 index 0000000000..ca6c3df275 --- /dev/null +++ b/meta-oe/recipes-devtools/android-tools/android-tools-conf-configfs/android-gadget-start | |||
| @@ -0,0 +1,7 @@ | |||
| 1 | #!/bin/sh | ||
| 2 | |||
| 3 | set -e | ||
| 4 | |||
| 5 | sleep 3 | ||
| 6 | |||
| 7 | ls /sys/class/udc/ > /sys/kernel/config/usb_gadget/adb/UDC | ||
diff --git a/meta-oe/recipes-devtools/android-tools/android-tools-conf-configfs_1.0.bb b/meta-oe/recipes-devtools/android-tools/android-tools-conf-configfs_1.0.bb new file mode 100644 index 0000000000..01dc1bea98 --- /dev/null +++ b/meta-oe/recipes-devtools/android-tools/android-tools-conf-configfs_1.0.bb | |||
| @@ -0,0 +1,35 @@ | |||
| 1 | DESCRIPTION = "Different utilities from Android - corressponding configuration files for using ConfigFS" | ||
| 2 | SECTION = "console/utils" | ||
| 3 | LICENSE = "MIT" | ||
| 4 | LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302" | ||
| 5 | |||
| 6 | SRC_URI = " \ | ||
| 7 | file://android-gadget-setup \ | ||
| 8 | file://android-gadget-start \ | ||
| 9 | file://android-gadget-cleanup \ | ||
| 10 | file://10-adbd-configfs.conf \ | ||
| 11 | " | ||
| 12 | |||
| 13 | PACKAGE_ARCH = "${MACHINE_ARCH}" | ||
| 14 | |||
| 15 | do_install() { | ||
| 16 | install -d ${D}${bindir} | ||
| 17 | install -m 0755 ${WORKDIR}/android-gadget-setup ${D}${bindir} | ||
| 18 | install -m 0755 ${WORKDIR}/android-gadget-start ${D}${bindir} | ||
| 19 | install -m 0755 ${WORKDIR}/android-gadget-cleanup ${D}${bindir} | ||
| 20 | |||
| 21 | if [ -r ${WORKDIR}/android-gadget-setup.machine ] ; then | ||
| 22 | install -d ${D}${sysconfdir} | ||
| 23 | install -m 0644 ${WORKDIR}/android-gadget-setup.machine ${D}${sysconfdir} | ||
| 24 | fi | ||
| 25 | |||
| 26 | install -d ${D}${systemd_unitdir}/system/android-tools-adbd.service.d | ||
| 27 | install -m 0644 ${WORKDIR}/10-adbd-configfs.conf ${D}${systemd_unitdir}/system/android-tools-adbd.service.d | ||
| 28 | } | ||
| 29 | |||
| 30 | FILES_${PN} += " \ | ||
| 31 | ${systemd_unitdir}/system/ \ | ||
| 32 | " | ||
| 33 | |||
| 34 | PROVIDES += "android-tools-conf" | ||
| 35 | RPROVIDES_${PN} = "android-tools-conf" | ||
