[meta-ti] [PATCH] udhcpd: Fixes and new udev rule
Joel A Fernandes
joelagnel at ti.com
Fri Nov 11 06:51:47 PST 2011
This moves the logic to configure and start dhcp to a udev rule which
is a better place than a systemd service
Also fixes a bug where stopping and starting network service would
cause dhcp to fail.
Signed-off-by: Joel A Fernandes <joelagnel at ti.com>
---
recipes-ti/beagleboard/gadget-init.bb | 6 ++++--
.../gadget-init/g-ether-start-service.sh | 1 -
.../gadget-init/network-gadget-init.service | 3 +--
recipes-ti/beagleboard/gadget-init/udhcpd.rules | 2 ++
4 files changed, 7 insertions(+), 5 deletions(-)
create mode 100644 recipes-ti/beagleboard/gadget-init/udhcpd.rules
diff --git a/recipes-ti/beagleboard/gadget-init.bb b/recipes-ti/beagleboard/gadget-init.bb
index 8ddefaa..0d4682e 100644
--- a/recipes-ti/beagleboard/gadget-init.bb
+++ b/recipes-ti/beagleboard/gadget-init.bb
@@ -1,6 +1,6 @@
DESCRIPTION = "Units to initialize usb gadgets"
-PR = "r10"
+PR = "r11"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://${COREBASE}/LICENSE;md5=3f40d7994397109285ec7b81fdeb3b58"
@@ -15,6 +15,7 @@ SRC_URI = "file://storage-gadget-init.service \
file://99-hokey-pokey.rules \
file://hokey-pokey.sh \
file://bone-gmass-eject.rules \
+ file://udhcpd.rules \
file://g-storage-reinsert.sh \
file://g-ether-start-service.sh \
file://g-ether-load.sh \
@@ -50,7 +51,8 @@ FILES_${PN}-storage = "${base_libdir}/systemd/system/storage-gadget-init.service
FILES_${PN}-network = "${base_libdir}/systemd/system/network-gadget-init.service \
${base_libdir}/systemd/system/basic.target.wants/network-gadget-init.service \
${bindir}/g-ether-load.sh \
- ${bindir}/g-ether-start-service.sh"
+ ${bindir}/g-ether-start-service.sh \
+ ${sysconfdir}/udev/rules.d/udhcpd.rules"
FILES_${PN}-udhcpd = "${base_libdir}/systemd/system/udhcpd.service \
${base_libdir}/systemd/system/basic.target.wants/udhcpd.service \
diff --git a/recipes-ti/beagleboard/gadget-init/g-ether-start-service.sh b/recipes-ti/beagleboard/gadget-init/g-ether-start-service.sh
index 2db16c2..076a5fe 100755
--- a/recipes-ti/beagleboard/gadget-init/g-ether-start-service.sh
+++ b/recipes-ti/beagleboard/gadget-init/g-ether-start-service.sh
@@ -6,6 +6,5 @@ then
then
/bin/systemctl stop storage-gadget-init.service
/bin/systemctl start network-gadget-init.service
- /bin/systemctl start udhcpd.service
fi
fi
diff --git a/recipes-ti/beagleboard/gadget-init/network-gadget-init.service b/recipes-ti/beagleboard/gadget-init/network-gadget-init.service
index 1e22627..0ee2914 100644
--- a/recipes-ti/beagleboard/gadget-init/network-gadget-init.service
+++ b/recipes-ti/beagleboard/gadget-init/network-gadget-init.service
@@ -4,8 +4,7 @@ Conflicts=storage-gadget-init.service
[Service]
RemainAfterExit=yes
-ExecStartPre=/usr/bin/g-ether-load.sh
-ExecStart=/sbin/ifconfig usb0 192.168.7.2 netmask 255.255.255.252
+ExecStart=/usr/bin/g-ether-load.sh
ExecStop=/sbin/rmmod g_ether
[Install]
diff --git a/recipes-ti/beagleboard/gadget-init/udhcpd.rules b/recipes-ti/beagleboard/gadget-init/udhcpd.rules
new file mode 100644
index 0000000..db65f9a
--- /dev/null
+++ b/recipes-ti/beagleboard/gadget-init/udhcpd.rules
@@ -0,0 +1,2 @@
+SUBSYSTEM=="net",ACTION=="add",KERNEL=="usb0",RUN+="/sbin/ifconfig usb0 192.168.7.2 netmask 255.255.255.252",RUN+="/bin/systemctl start udhcpd.service"
+SUBSYSTEM=="net",ACTION=="remove",KERNEL=="usb0",RUN+="/bin/systemctl stop udhcpd.service"
--
1.7.4.1
More information about the meta-ti
mailing list