* [meta-oe][PATCH 1/2] android-tools-conf-configfs: add an alternative to anrdoid-tools-conf
@ 2020-12-23 3:10 Dmitry Baryshkov
2020-12-23 3:10 ` [meta-oe][PATCH 2/2] android-tools-conf: fix android-tools build-deps warning Dmitry Baryshkov
2020-12-24 6:34 ` [oe] [meta-oe][PATCH 1/2] android-tools-conf-configfs: add an alternative to anrdoid-tools-conf Khem Raj
0 siblings, 2 replies; 5+ messages in thread
From: Dmitry Baryshkov @ 2020-12-23 3:10 UTC (permalink / raw)
To: openembedded-devel
The package android-tools-conf depends on presence of
/sys/class/android_usb, which is not present in default (mainline)
kernels. Add a set of scripts that will use ConfigFS to configure USB
gadget rather than using non-standard device class.
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
---
.../10-adbd-configfs.conf | 4 +++
.../android-gadget-cleanup | 24 +++++++++++++
.../android-gadget-setup | 35 ++++++++++++++++++
.../android-gadget-start | 7 ++++
.../android-tools-conf-configfs_1.0.bb | 36 +++++++++++++++++++
5 files changed, 106 insertions(+)
create mode 100644 meta-oe/recipes-devtools/android-tools/android-tools-conf-configfs/10-adbd-configfs.conf
create mode 100644 meta-oe/recipes-devtools/android-tools/android-tools-conf-configfs/android-gadget-cleanup
create mode 100644 meta-oe/recipes-devtools/android-tools/android-tools-conf-configfs/android-gadget-setup
create mode 100644 meta-oe/recipes-devtools/android-tools/android-tools-conf-configfs/android-gadget-start
create mode 100644 meta-oe/recipes-devtools/android-tools/android-tools-conf-configfs_1.0.bb
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 000000000000..ddf155a907bc
--- /dev/null
+++ b/meta-oe/recipes-devtools/android-tools/android-tools-conf-configfs/10-adbd-configfs.conf
@@ -0,0 +1,4 @@
+[Service]
+ExecStartPre=/usr/bin/android-gadget-setup
+ExecStartPost=/usr/bin/android-gadget-start
+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 000000000000..517227d4a636
--- /dev/null
+++ b/meta-oe/recipes-devtools/android-tools/android-tools-conf-configfs/android-gadget-cleanup
@@ -0,0 +1,24 @@
+#!/bin/sh
+
+[ -d /sys/kernel/config/usb_gadget ] || exit 0
+
+cd /sys/kernel/config/usb_gadget
+
+cd adb
+
+echo "" > UDC || true
+
+killall adbd || true
+
+umount /dev/usb-ffs/adb
+
+rm configs/c.1/ffs.usb0
+
+rmdir configs/c.1/strings/0x409
+rmdir configs/c.1
+
+rmdir functions/ffs.usb0
+rmdir strings/0x409
+
+cd ..
+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 000000000000..e44d1bacbe3a
--- /dev/null
+++ b/meta-oe/recipes-devtools/android-tools/android-tools-conf-configfs/android-gadget-setup
@@ -0,0 +1,35 @@
+#!/bin/sh
+
+set -e
+
+manufacturer=RPB
+model="Android device"
+serial=0123456789ABCDEF
+
+if [ -r /etc/android-gadget-setup.machine ] ; then
+ . /etc/android-gadget-setup.machine
+fi
+
+[ -d /sys/kernel/config/usb_gadget ] || modprobe libcomposite
+
+cd /sys/kernel/config/usb_gadget
+
+[ -d adb ] && /usr/bin/android-gadget-cleanup || true
+
+mkdir adb
+cd adb
+
+mkdir configs/c.1
+mkdir functions/ffs.usb0
+mkdir strings/0x409
+mkdir configs/c.1/strings/0x409
+echo 0x18d1 > idVendor
+echo 0xd002 > idProduct
+echo "$serial" > strings/0x409/serialnumber
+echo "$manufacturer" > strings/0x409/manufacturer
+echo "$model" > strings/0x409/product
+echo "Conf 1" > configs/c.1/strings/0x409/configuration
+ln -s functions/ffs.usb0 configs/c.1
+
+mkdir -p /dev/usb-ffs/adb
+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 000000000000..ca6c3df27536
--- /dev/null
+++ b/meta-oe/recipes-devtools/android-tools/android-tools-conf-configfs/android-gadget-start
@@ -0,0 +1,7 @@
+#!/bin/sh
+
+set -e
+
+sleep 3
+
+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 000000000000..a38a8ce90226
--- /dev/null
+++ b/meta-oe/recipes-devtools/android-tools/android-tools-conf-configfs_1.0.bb
@@ -0,0 +1,36 @@
+DESCRIPTION = "Different utilities from Android - corressponding configuration files for using ConfigFS"
+SECTION = "console/utils"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302"
+
+SRC_URI = " \
+ file://android-gadget-setup \
+ file://android-gadget-start \
+ file://android-gadget-cleanup \
+ file://android-gadget-setup.machine \
+ file://10-adbd-configfs.conf \
+"
+
+PACKAGE_ARCH = "${MACHINE_ARCH}"
+
+do_install() {
+ install -d ${D}${bindir}
+ install -m 0755 ${WORKDIR}/android-gadget-setup ${D}${bindir}
+ install -m 0755 ${WORKDIR}/android-gadget-start ${D}${bindir}
+ install -m 0755 ${WORKDIR}/android-gadget-cleanup ${D}${bindir}
+
+ if [ -r ${WORKDIR}/android-gadget-setup.machine ] ; then
+ install -d ${D}${sysconfdir}
+ install -m 0644 ${WORKDIR}/android-gadget-setup.machine ${D}${sysconfdir}
+ fi
+
+ install -d ${D}${systemd_unitdir}/system/android-tools-adbd.service.d
+ install -m 0644 ${WORKDIR}/10-adbd-configfs.conf ${D}${systemd_unitdir}/system/android-tools-adbd.service.d
+}
+
+FILES_${PN} += " \
+ ${systemd_unitdir}/system/ \
+"
+
+PROVIDES += "android-tools-conf"
+RPROVIDES_${PN} = "android-tools-conf"
--
2.29.2
^ permalink raw reply related [flat|nested] 5+ messages in thread
* [meta-oe][PATCH 2/2] android-tools-conf: fix android-tools build-deps warning
2020-12-23 3:10 [meta-oe][PATCH 1/2] android-tools-conf-configfs: add an alternative to anrdoid-tools-conf Dmitry Baryshkov
@ 2020-12-23 3:10 ` Dmitry Baryshkov
2020-12-24 6:34 ` [oe] [meta-oe][PATCH 1/2] android-tools-conf-configfs: add an alternative to anrdoid-tools-conf Khem Raj
1 sibling, 0 replies; 5+ messages in thread
From: Dmitry Baryshkov @ 2020-12-23 3:10 UTC (permalink / raw)
To: openembedded-devel
If PREFERRED_PROVIDER_android-tool-conf is set, build-deps checker will
incorrectly resolve android-tools-conf runtime dependency to
android-tools-conf recipe rather than the selected recipe. To fix the
following warning, make android-tools-conf recipe raise SkipRecipe if it
is not the preferred android-tools-conf provider.
WARNING: android-tools-5.1.1.r37-r0 do_package_qa: QA Issue: android-tools-adbd rdepends on android-tools-conf, but it isn't a build dependency, missing android-tools-conf in DEPENDS or PACKAGECONFIG? [build-deps]
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
---
.../android-tools/android-tools-conf_1.0.bb | 7 +++++++
1 file changed, 7 insertions(+)
diff --git a/meta-oe/recipes-devtools/android-tools/android-tools-conf_1.0.bb b/meta-oe/recipes-devtools/android-tools/android-tools-conf_1.0.bb
index af98f92f05e2..34b1a9bdd289 100644
--- a/meta-oe/recipes-devtools/android-tools/android-tools-conf_1.0.bb
+++ b/meta-oe/recipes-devtools/android-tools/android-tools-conf_1.0.bb
@@ -11,3 +11,10 @@ do_install() {
install -d ${D}${bindir}
install -m 0755 ${WORKDIR}/android-gadget-setup ${D}${bindir}
}
+
+python () {
+ pn = d.getVar('PN')
+ profprov = d.getVar("PREFERRED_PROVIDER_" + pn)
+ if profprov and pn != profprov:
+ raise bb.parse.SkipRecipe("PREFERRED_PROVIDER_%s set to %s, not %s" % (pn, profprov, pn))
+}
--
2.29.2
^ permalink raw reply related [flat|nested] 5+ messages in thread
* Re: [oe] [meta-oe][PATCH 1/2] android-tools-conf-configfs: add an alternative to anrdoid-tools-conf
2020-12-23 3:10 [meta-oe][PATCH 1/2] android-tools-conf-configfs: add an alternative to anrdoid-tools-conf Dmitry Baryshkov
2020-12-23 3:10 ` [meta-oe][PATCH 2/2] android-tools-conf: fix android-tools build-deps warning Dmitry Baryshkov
@ 2020-12-24 6:34 ` Khem Raj
2020-12-24 10:45 ` Dmitry Baryshkov
1 sibling, 1 reply; 5+ messages in thread
From: Khem Raj @ 2020-12-24 6:34 UTC (permalink / raw)
To: Dmitry Baryshkov; +Cc: openembeded-devel
I am seeing this warning
WARNING: /mnt/b/yoe/master/sources/meta-openembedded/meta-oe/recipes-devtools/android-tools/android-to
ols-conf-configfs_1.0.bb: Unable to get checksum for
android-tools-conf-configfs SRC_URI entry android
-gadget-setup.machine: file could not be found
while building for qemuriscv32
On Tue, Dec 22, 2020 at 7:11 PM Dmitry Baryshkov <dbaryshkov@gmail.com> wrote:
>
> The package android-tools-conf depends on presence of
> /sys/class/android_usb, which is not present in default (mainline)
> kernels. Add a set of scripts that will use ConfigFS to configure USB
> gadget rather than using non-standard device class.
>
> Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
> ---
> .../10-adbd-configfs.conf | 4 +++
> .../android-gadget-cleanup | 24 +++++++++++++
> .../android-gadget-setup | 35 ++++++++++++++++++
> .../android-gadget-start | 7 ++++
> .../android-tools-conf-configfs_1.0.bb | 36 +++++++++++++++++++
> 5 files changed, 106 insertions(+)
> create mode 100644 meta-oe/recipes-devtools/android-tools/android-tools-conf-configfs/10-adbd-configfs.conf
> create mode 100644 meta-oe/recipes-devtools/android-tools/android-tools-conf-configfs/android-gadget-cleanup
> create mode 100644 meta-oe/recipes-devtools/android-tools/android-tools-conf-configfs/android-gadget-setup
> create mode 100644 meta-oe/recipes-devtools/android-tools/android-tools-conf-configfs/android-gadget-start
> create mode 100644 meta-oe/recipes-devtools/android-tools/android-tools-conf-configfs_1.0.bb
>
> 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 000000000000..ddf155a907bc
> --- /dev/null
> +++ b/meta-oe/recipes-devtools/android-tools/android-tools-conf-configfs/10-adbd-configfs.conf
> @@ -0,0 +1,4 @@
> +[Service]
> +ExecStartPre=/usr/bin/android-gadget-setup
> +ExecStartPost=/usr/bin/android-gadget-start
> +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 000000000000..517227d4a636
> --- /dev/null
> +++ b/meta-oe/recipes-devtools/android-tools/android-tools-conf-configfs/android-gadget-cleanup
> @@ -0,0 +1,24 @@
> +#!/bin/sh
> +
> +[ -d /sys/kernel/config/usb_gadget ] || exit 0
> +
> +cd /sys/kernel/config/usb_gadget
> +
> +cd adb
> +
> +echo "" > UDC || true
> +
> +killall adbd || true
> +
> +umount /dev/usb-ffs/adb
> +
> +rm configs/c.1/ffs.usb0
> +
> +rmdir configs/c.1/strings/0x409
> +rmdir configs/c.1
> +
> +rmdir functions/ffs.usb0
> +rmdir strings/0x409
> +
> +cd ..
> +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 000000000000..e44d1bacbe3a
> --- /dev/null
> +++ b/meta-oe/recipes-devtools/android-tools/android-tools-conf-configfs/android-gadget-setup
> @@ -0,0 +1,35 @@
> +#!/bin/sh
> +
> +set -e
> +
> +manufacturer=RPB
> +model="Android device"
> +serial=0123456789ABCDEF
> +
> +if [ -r /etc/android-gadget-setup.machine ] ; then
> + . /etc/android-gadget-setup.machine
> +fi
> +
> +[ -d /sys/kernel/config/usb_gadget ] || modprobe libcomposite
> +
> +cd /sys/kernel/config/usb_gadget
> +
> +[ -d adb ] && /usr/bin/android-gadget-cleanup || true
> +
> +mkdir adb
> +cd adb
> +
> +mkdir configs/c.1
> +mkdir functions/ffs.usb0
> +mkdir strings/0x409
> +mkdir configs/c.1/strings/0x409
> +echo 0x18d1 > idVendor
> +echo 0xd002 > idProduct
> +echo "$serial" > strings/0x409/serialnumber
> +echo "$manufacturer" > strings/0x409/manufacturer
> +echo "$model" > strings/0x409/product
> +echo "Conf 1" > configs/c.1/strings/0x409/configuration
> +ln -s functions/ffs.usb0 configs/c.1
> +
> +mkdir -p /dev/usb-ffs/adb
> +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 000000000000..ca6c3df27536
> --- /dev/null
> +++ b/meta-oe/recipes-devtools/android-tools/android-tools-conf-configfs/android-gadget-start
> @@ -0,0 +1,7 @@
> +#!/bin/sh
> +
> +set -e
> +
> +sleep 3
> +
> +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 000000000000..a38a8ce90226
> --- /dev/null
> +++ b/meta-oe/recipes-devtools/android-tools/android-tools-conf-configfs_1.0.bb
> @@ -0,0 +1,36 @@
> +DESCRIPTION = "Different utilities from Android - corressponding configuration files for using ConfigFS"
> +SECTION = "console/utils"
> +LICENSE = "MIT"
> +LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302"
> +
> +SRC_URI = " \
> + file://android-gadget-setup \
> + file://android-gadget-start \
> + file://android-gadget-cleanup \
> + file://android-gadget-setup.machine \
> + file://10-adbd-configfs.conf \
> +"
> +
> +PACKAGE_ARCH = "${MACHINE_ARCH}"
> +
> +do_install() {
> + install -d ${D}${bindir}
> + install -m 0755 ${WORKDIR}/android-gadget-setup ${D}${bindir}
> + install -m 0755 ${WORKDIR}/android-gadget-start ${D}${bindir}
> + install -m 0755 ${WORKDIR}/android-gadget-cleanup ${D}${bindir}
> +
> + if [ -r ${WORKDIR}/android-gadget-setup.machine ] ; then
> + install -d ${D}${sysconfdir}
> + install -m 0644 ${WORKDIR}/android-gadget-setup.machine ${D}${sysconfdir}
> + fi
> +
> + install -d ${D}${systemd_unitdir}/system/android-tools-adbd.service.d
> + install -m 0644 ${WORKDIR}/10-adbd-configfs.conf ${D}${systemd_unitdir}/system/android-tools-adbd.service.d
> +}
> +
> +FILES_${PN} += " \
> + ${systemd_unitdir}/system/ \
> +"
> +
> +PROVIDES += "android-tools-conf"
> +RPROVIDES_${PN} = "android-tools-conf"
> --
> 2.29.2
>
>
>
>
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [oe] [meta-oe][PATCH 1/2] android-tools-conf-configfs: add an alternative to anrdoid-tools-conf
2020-12-24 6:34 ` [oe] [meta-oe][PATCH 1/2] android-tools-conf-configfs: add an alternative to anrdoid-tools-conf Khem Raj
@ 2020-12-24 10:45 ` Dmitry Baryshkov
2020-12-27 2:13 ` Khem Raj
0 siblings, 1 reply; 5+ messages in thread
From: Dmitry Baryshkov @ 2020-12-24 10:45 UTC (permalink / raw)
To: Khem Raj; +Cc: openembeded-devel
чт, 24 дек. 2020 г. в 09:34, Khem Raj <raj.khem@gmail.com>:
>
> I am seeing this warning
>
> WARNING: /mnt/b/yoe/master/sources/meta-openembedded/meta-oe/recipes-devtools/android-tools/android-to
> ols-conf-configfs_1.0.bb: Unable to get checksum for
> android-tools-conf-configfs SRC_URI entry android
> -gadget-setup.machine: file could not be found
Oops. Should be fixed in v2
>
> while building for qemuriscv32
--
With best wishes
Dmitry
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [oe] [meta-oe][PATCH 1/2] android-tools-conf-configfs: add an alternative to anrdoid-tools-conf
2020-12-24 10:45 ` Dmitry Baryshkov
@ 2020-12-27 2:13 ` Khem Raj
0 siblings, 0 replies; 5+ messages in thread
From: Khem Raj @ 2020-12-27 2:13 UTC (permalink / raw)
To: Dmitry Baryshkov; +Cc: openembeded-devel
I am seeing another error on rpi4-64
NOTE: Multiple providers are available for runtime android-tools-conf
(android-tools-conf, android-tools-conf-configfs)
Consider defining a PREFERRED_RPROVIDER entry to match android-tools-conf
On Thu, Dec 24, 2020 at 2:45 AM Dmitry Baryshkov <dbaryshkov@gmail.com> wrote:
>
> чт, 24 дек. 2020 г. в 09:34, Khem Raj <raj.khem@gmail.com>:
> >
> > I am seeing this warning
> >
> > WARNING: /mnt/b/yoe/master/sources/meta-openembedded/meta-oe/recipes-devtools/android-tools/android-to
> > ols-conf-configfs_1.0.bb: Unable to get checksum for
> > android-tools-conf-configfs SRC_URI entry android
> > -gadget-setup.machine: file could not be found
>
> Oops. Should be fixed in v2
>
> >
> > while building for qemuriscv32
>
> --
> With best wishes
> Dmitry
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2020-12-27 2:13 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-12-23 3:10 [meta-oe][PATCH 1/2] android-tools-conf-configfs: add an alternative to anrdoid-tools-conf Dmitry Baryshkov
2020-12-23 3:10 ` [meta-oe][PATCH 2/2] android-tools-conf: fix android-tools build-deps warning Dmitry Baryshkov
2020-12-24 6:34 ` [oe] [meta-oe][PATCH 1/2] android-tools-conf-configfs: add an alternative to anrdoid-tools-conf Khem Raj
2020-12-24 10:45 ` Dmitry Baryshkov
2020-12-27 2:13 ` Khem Raj
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.