Inforce SYS940X BSP (Intel Atom E6xx + EG20T)
cover Inforce SYS940X BSP (Intel Atom E6xx + EG20T)
The following changes since commit c6d991cf83b3047419cc0076ea4ab1297b9cfb6d:
meta-intel: update some kernel SRCREVs (2012-01-30 15:33:10 -0600)
are available in the git repository at:
git://git.yoctoproject.org/meta-intel-contrib dvhart/sys940x
http://git.yoctoproject.org/cgit.cgi/meta-intel-contrib/log/?h=dvhart/sys940x
Darren Hart (4):
meta-intel: Add Inforce SYS940x BSP
ranpwd: Add ranpwd recipe
genmac: Replace RANDOM_MAC in network/interfaces with a randomly
generated MAC
netbase: Add interfaces with RANDOM_MAC for sys940x* machines
meta-sys940x/COPYING.MIT | 17 +++ meta-sys940x/README | 140 ++++++++++++++++++++ meta-sys940x/README.sources | 18 +++ meta-sys940x/conf/layer.conf | 10 ++ meta-sys940x/conf/machine/sys940x-noemgd.conf | 19 +++ meta-sys940x/conf/machine/sys940x.conf | 23 ++++ .../formfactor/sys940x-noemgd/machconfig | 3 + .../formfactor/formfactor/sys940x/machconfig | 3 + .../recipes-bsp/formfactor/formfactor_0.0.bbappend | 3 + meta-sys940x/recipes-bsp/genmac/files/genmac | 46 +++++++ meta-sys940x/recipes-bsp/genmac/genmac.bb | 30 ++++ meta-sys940x/recipes-core/netbase/files/interfaces | 10 ++ .../recipes-core/netbase/netbase_4.47.bbappend | 3 + meta-sys940x/recipes-extended/ranpwd/ranpwd_git.bb | 23 ++++ .../xserver-xf86-config/sys940x-noemgd/xorg.conf | 26 ++++ .../xserver-xf86-config/sys940x/xorg.conf | 48 +++++++ .../xorg-xserver/xserver-xf86-config_0.1.bbappend | 3 + .../linux/linux-yocto-rt_3.0.bbappend | 14 ++ .../recipes-kernel/linux/linux-yocto_3.0.bbappend | 17 +++ 19 files changed, 456 insertions(+), 0 deletions(-) create mode 100644 meta-sys940x/COPYING.MIT create mode 100644 meta-sys940x/README create mode 100644 meta-sys940x/README.sources create mode 100644 meta-sys940x/binary/.gitignore create mode 100644 meta-sys940x/conf/layer.conf create mode 100644 meta-sys940x/conf/machine/sys940x-noemgd.conf create mode 100644 meta-sys940x/conf/machine/sys940x.conf create mode 100644 meta-sys940x/recipes-bsp/formfactor/formfactor/sys940x-noemgd/machconfig create mode 100644 meta-sys940x/recipes-bsp/formfactor/formfactor/sys940x/machconfig create mode 100644 meta-sys940x/recipes-bsp/formfactor/formfactor_0.0.bbappend create mode 100644 meta-sys940x/recipes-bsp/genmac/files/genmac create mode 100644 meta-sys940x/recipes-bsp/genmac/genmac.bb create mode 100644 meta-sys940x/recipes-core/netbase/files/interfaces create mode 100644 meta-sys940x/recipes-core/netbase/netbase_4.47.bbappend create mode 100644 meta-sys940x/recipes-extended/ranpwd/ranpwd_git.bb create mode 100644 meta-sys940x/recipes-graphics/xorg-xserver/xserver-xf86-config/sys940x-noemgd/xorg.conf create mode 100644 meta-sys940x/recipes-graphics/xorg-xserver/xserver-xf86-config/sys940x/xorg.conf create mode 100644 meta-sys940x/recipes-graphics/xorg-xserver/xserver-xf86-config_0.1.bbappend create mode 100644 meta-sys940x/recipes-kernel/linux/linux-yocto-rt_3.0.bbappend create mode 100644 meta-sys940x/recipes-kernel/linux/linux-yocto_3.0.bbappend
Signature · 1 line
1.7.6.5
PATCH 1/4 meta-intel: Add Inforce SYS940x BSP
The Inforce SYS940x-ECX Developer-Ready Reference Platform features:
o Intel Atom E6xx (0.6-1.6 GHz)
o Up to 1GB on-board DDR2
o Intel Platform Controller Hub EG20T
o VGA,LVDS
o HD Audio
o SD Card
o Dual SATA
o Mini-PCIe
http://www.inforcecomputing.com/SYS940X_ECX.html
--- meta-sys940x/COPYING.MIT | 17 +++ meta-sys940x/README | 140 ++++++++++++++++++++ meta-sys940x/README.sources | 18 +++ meta-sys940x/conf/layer.conf | 10 ++ meta-sys940x/conf/machine/sys940x-noemgd.conf | 19 +++ meta-sys940x/conf/machine/sys940x.conf | 23 ++++ .../formfactor/sys940x-noemgd/machconfig | 3 + .../formfactor/formfactor/sys940x/machconfig | 3 + .../recipes-bsp/formfactor/formfactor_0.0.bbappend | 3 + .../xserver-xf86-config/sys940x-noemgd/xorg.conf | 26 ++++ .../xserver-xf86-config/sys940x/xorg.conf | 48 +++++++ .../xorg-xserver/xserver-xf86-config_0.1.bbappend | 3 + .../linux/linux-yocto-rt_3.0.bbappend | 14 ++ .../recipes-kernel/linux/linux-yocto_3.0.bbappend | 17 +++ 14 files changed, 344 insertions(+), 0 deletions(-) create mode 100644 meta-sys940x/COPYING.MIT create mode 100644 meta-sys940x/README create mode 100644 meta-sys940x/README.sources create mode 100644 meta-sys940x/binary/.gitignore create mode 100644 meta-sys940x/conf/layer.conf create mode 100644 meta-sys940x/conf/machine/sys940x-noemgd.conf create mode 100644 meta-sys940x/conf/machine/sys940x.conf create mode 100644 meta-sys940x/recipes-bsp/formfactor/formfactor/sys940x-noemgd/machconfig create mode 100644 meta-sys940x/recipes-bsp/formfactor/formfactor/sys940x/machconfig create mode 100644 meta-sys940x/recipes-bsp/formfactor/formfactor_0.0.bbappend create mode 100644 meta-sys940x/recipes-graphics/xorg-xserver/xserver-xf86-config/sys940x-noemgd/xorg.conf create mode 100644 meta-sys940x/recipes-graphics/xorg-xserver/xserver-xf86-config/sys940x/xorg.conf create mode 100644 meta-sys940x/recipes-graphics/xorg-xserver/xserver-xf86-config_0.1.bbappend create mode 100644 meta-sys940x/recipes-kernel/linux/linux-yocto-rt_3.0.bbappend create mode 100644 meta-sys940x/recipes-kernel/linux/linux-yocto_3.0.bbappend
meta-sys940x/COPYING.MIT new file +17 -0
@@ -0,0 +1,17 @@ +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE.
meta-sys940x/README new file +140 -0
140 lines not on this page · raw message
meta-sys940x/README.sources new file +18 -0
@@ -0,0 +1,18 @@ +The sources for the packages comprising the images shipped with this +BSP can be found at the following location: + +http://downloads.yoctoproject.org/mirror/sources/ + +The metadata used to generate the images shipped with this BSP, in +addition to the code contained in this BSP, can be found at the +following location: + +# FIXME: update the following link after the Yocto Project 1.2 release +http://www.yoctoproject.org/downloads/yocto-1.2/poky-RELEASENAME-6.0.tar.bz2 + +The metadata used to generate the images shipped with this BSP, in +addition to the code contained in this BSP, can also be found at the +following locations: + +git://git.yoctoproject.org/poky.git +git://git.yoctoproject.org/meta-intel
meta-sys940x/binary/.gitignore new file +0 -0
meta-sys940x/conf/layer.conf new file +10 -0
@@ -0,0 +1,10 @@ +# We have a conf and classes directory, add to BBPATH +BBPATH := "${BBPATH}:${LAYERDIR}" + +# We have a recipes directory, add to BBFILES +BBFILES := "${BBFILES} ${LAYERDIR}/recipes-*/*/*.bb \ + ${LAYERDIR}/recipes-*/*/*.bbappend" + +BBFILE_COLLECTIONS += "sys940x" +BBFILE_PATTERN_sys940x := "^${LAYERDIR}/" +BBFILE_PRIORITY_sys940x = "6"
meta-sys940x/conf/machine/sys940x-noemgd.conf new file +19 -0
@@ -0,0 +1,19 @@ +#@TYPE: Machine +#@NAME: sys940x + +#@DESCRIPTION: Machine configuration for Inforce SYS940X systems +# i.e. E660 + EG20T + +include conf/machine/include/tune-atom.inc +include conf/machine/include/ia32-base.inc + +# Add "pcbios" if you have a non-efi version of the firmware +MACHINE_FEATURES += "efi pcbios" + +XSERVER ?= "${XSERVER_IA32_BASE} \ + ${XSERVER_IA32_EXT} \ + ${XSERVER_IA32_VESA} \ + " + +SERIAL_CONSOLE = "115200 ttyS0" +APPEND += "console=ttyS0,115200 console=tty0"
meta-sys940x/conf/machine/sys940x.conf new file +23 -0
@@ -0,0 +1,23 @@ +#@TYPE: Machine +#@NAME: sys940x + +#@DESCRIPTION: Machine configuration for Inforce SYS940x systems +# i.e. E660 + EG20T + +include conf/machine/include/tune-atom.inc +include conf/machine/include/ia32-base.inc + +# Add "pcbios" if you have a non-efi version of the firmware +MACHINE_FEATURES += "efi pcbios" + +XSERVER ?= "${XSERVER_IA32_BASE} \ + ${XSERVER_IA32_EXT} \ + ${XSERVER_IA32_EMGD} \ + " + +PREFERRED_VERSION_xserver-xorg ?= "1.9.3" +PREFERRED_VERSION_mesa-dri ?= "7.11" +PREFERRED_VERSION_emgd-driver-bin ?= "1.8" + +SERIAL_CONSOLE = "115200 ttyS0" +APPEND += "console=ttyS0,115200 console=tty0"
meta-sys940x/recipes-bsp/formfactor/formfactor/sys940x-noemgd/machconfig new file +3 -0
@@ -0,0 +1,3 @@ +# Assume a USB mouse and keyboard are connected +HAVE_TOUCHSCREEN=0 +HAVE_KEYBOARD=1
meta-sys940x/recipes-bsp/formfactor/formfactor/sys940x/machconfig new file +3 -0
@@ -0,0 +1,3 @@ +# Assume a USB mouse and keyboard are connected +HAVE_TOUCHSCREEN=0 +HAVE_KEYBOARD=1
meta-sys940x/recipes-bsp/formfactor/formfactor_0.0.bbappend new file +3 -0
@@ -0,0 +1,3 @@ +FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:" + +PRINC = "1"
meta-sys940x/recipes-graphics/xorg-xserver/xserver-xf86-config/sys940x-noemgd/xorg.conf new file +26 -0
@@ -0,0 +1,26 @@ +Section "Device" + Identifier "Generic VESA" + Driver "vesa" +EndSection + +Section "Monitor" + Identifier "Generic Monitor" + Option "DPMS" +EndSection + +Section "Screen" + Identifier "Default Screen" + Device "Generic VESA" + Monitor "Generic Monitor" + DefaultDepth 24 +EndSection + +Section "ServerLayout" + Identifier "Default Layout" + Screen "Default Screen" +EndSection + +Section "ServerFlags" + Option "DontZap" "0" + Option "AutoAddDevices" "False" +EndSection
meta-sys940x/recipes-graphics/xorg-xserver/xserver-xf86-config/sys940x/xorg.conf new file +48 -0
48 lines not on this page · raw message
meta-sys940x/recipes-graphics/xorg-xserver/xserver-xf86-config_0.1.bbappend new file +3 -0
@@ -0,0 +1,3 @@ +THISDIR := "${@os.path.dirname(bb.data.getVar('FILE', d, True))}" +FILESPATH =. "${@base_set_filespath(["${THISDIR}/${PN}"], d)}:" +
meta-sys940x/recipes-kernel/linux/linux-yocto-rt_3.0.bbappend new file +14 -0
@@ -0,0 +1,14 @@ +FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:" + +COMPATIBLE_MACHINE_sys940x = "sys940x" +KMACHINE_sys940x = "sys940x" +KERNEL_FEATURES_append_sys940x += " cfg/smp.scc cfg/efi-ext.scc" + +COMPATIBLE_MACHINE_sys940x-noemgd = "sys940x-noemgd" +KMACHINE_sys940x-noemgd = "sys940x" +KERNEL_FEATURES_append_sys940x-noemgd += " cfg/smp.scc cfg/efi-ext.scc" + +# Update the following to use a different BSP branch or meta SRCREV +#KBRANCH_sys940x = "yocto/standard/preempt-rt/base" +#SRCREV_machine_pn-linux-yocto-rt_sys940x ?= XXXX +#SRCREV_meta_pn-linux-yocto-rt_sys940x ?= XXXX
meta-sys940x/recipes-kernel/linux/linux-yocto_3.0.bbappend new file +17 -0
@@ -0,0 +1,17 @@ +FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:" + + +COMPATIBLE_MACHINE_sys940x = "sys940x" +KMACHINE_sys940x = "sys940x" +KBRANCH_sys940x = "yocto/standard/base" +KERNEL_FEATURES_append_sys940x += " cfg/smp.scc cfg/efi-ext.scc" + +COMPATIBLE_MACHINE_sys940x-noemgd = "sys940x-noemgd" +KMACHINE_sys940x-noemgd = "sys940x" +KBRANCH_sys940x-noemgd = "yocto/standard/base" +KERNEL_FEATURES_append_sys940x-noemgd += " cfg/smp.scc cfg/efi-ext.scc" + +SRCREV_machine_pn-linux-yocto_sys940x ?= "5df0b4c2538399aed543133b3855f809adf08ab8" +SRCREV_meta_pn-linux-yocto_sys940x ?= "c957dd0889bfec5aeb8d6b4ce82550d841cad987" +SRCREV_machine_pn-linux-yocto_sys940x-noemgd ?= "5df0b4c2538399aed543133b3855f809adf08ab8" +SRCREV_meta_pn-linux-yocto_sys940x-noemgd ?= "c957dd0889bfec5aeb8d6b4ce82550d841cad987"
Signature · 1 line
1.7.6.5
PATCH 2/4 ranpwd: Add ranpwd recipe
ranpwd is used to generate random strings of various types, including passwords, UUIDs, and MAC addresses.
--- meta-sys940x/recipes-extended/ranpwd/ranpwd_git.bb | 23 ++++++++++++++++++++ 1 files changed, 23 insertions(+), 0 deletions(-) create mode 100644 meta-sys940x/recipes-extended/ranpwd/ranpwd_git.bb
meta-sys940x/recipes-extended/ranpwd/ranpwd_git.bb new file +23 -0
@@ -0,0 +1,23 @@ +DESCRIPTION = "Random password generator" +#SECTION = "utilities" +LICENSE = "GPLv2+" +LIC_FILES_CHKSUM = "file://ranpwd.c;beginline=1;endline=11;md5=0e8585e19117526efedfaeb50c345d7a" +PR = "r0" + +inherit autotools + +SRC_URI = "git://git.zytor.com/utils/ranpwd.git" +SRCREV = "b62aab579e288715b82d5575befaa2b8ff210c2b" + +S=${WORKDIR}/git + +do_configure_prepend () { + if [ ! -e acinclude.m4 -a -e aclocal.m4 ]; then + cp aclocal.m4 acinclude.m4 + fi +} + +do_install() { + install -d ${D}/${bindir} + install -m 0755 ${S}/ranpwd ${D}/${bindir}/ranpwd +}
Signature · 1 line
1.7.6.5
PATCH 3/4 genmac: Replace RANDOM_MAC in network/interfaces with a randomly generated MAC
In reply to Darren HartFor machines that do not have a MAC in hardware and with drivers that don't generate a random one in the kernel, this init script will replace the string RANDOM_MAC in the network/interfaces file with one generated with "ranpwd -m". Care is taken to ensure multiple interfaces can use RANDOM_MAC and receive unique addresses. ranpwd generates MACs with the locally administered bit set and the multicast bit disabled.
--- meta-sys940x/recipes-bsp/genmac/files/genmac | 46 ++++++++++++++++++++++++++ meta-sys940x/recipes-bsp/genmac/genmac.bb | 30 +++++++++++++++++ 2 files changed, 76 insertions(+), 0 deletions(-) create mode 100644 meta-sys940x/recipes-bsp/genmac/files/genmac create mode 100644 meta-sys940x/recipes-bsp/genmac/genmac.bb
meta-sys940x/recipes-bsp/genmac/files/genmac new file +46 -0
@@ -0,0 +1,46 @@ +#!/bin/sh +### BEGIN INIT INFO +# Provides: Random MAC address generator +# Required-Start: $syslog +# Required-Stop: $syslog +# Default-Start: 2 3 4 5 +# Default-Stop: 0 1 6 +# Short-Description: Set a random MAC for tagged interfaces +# Description: Set a random MAC for interfaces with RANDOM_MAC +### END INIT INFO + +# Author: Darren Hart <[email protected]> +# Based on /etc/init.d/skeleton + +PATH=/sbin:/usr/sbin:/bin:/usr/bin +DESC="Set a random MAC for tagged interfaces" +NAME=genmac +RANPWD=`which ranpwd` +SCRIPTNAME=/etc/init.d/$NAME + +# Exit if amixer is not installed +[ -x "$RANPWD" ] || exit 0 + +do_start() { + # Replace every occurance of RANDOM_MAC with a unique locally + # administered, unicast, randomly generated MAC address. + while grep -q RANDOM_MAC /etc/network/interfaces; do + sed -i "1,/RANDOM_MAC/s/RANDOM_MAC/$($RANPWD -m)/" /etc/network/interfaces + done +} + +case "$1" in +start) + echo "$NAME: Setting random MAC addresses" + do_start + ;; +stop) + ;; +*) + echo "Usage: $SCRIPTNAME {start|stop}" >&2 + exit 3 + ;; +esac + +exit 0 +
meta-sys940x/recipes-bsp/genmac/genmac.bb new file +30 -0
@@ -0,0 +1,30 @@ +SUMMARY = "Provide a basic init script to generate a random MAC" +DESCRIPTION = "Set the MAC from the config file." +SECTION = "base" +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://${COREBASE}/LICENSE;md5=3f40d7994397109285ec7b81fdeb3b58" + +PR = "r0" + +inherit update-rc.d + +RDEPENDS_${PN} = "ranpwd" + +SRC_URI = "file://genmac" + +INITSCRIPT_NAME = "genmac" +# Run as early as possible to ensure we are before the networking scripts +INITSCRIPT_PARAMS = "start 39 S ." + +do_install() { + install -d ${D}${sysconfdir} \ + ${D}${sysconfdir}/init.d + install -m 0755 ${WORKDIR}/${INITSCRIPT_NAME} ${D}${sysconfdir}/init.d + cat ${WORKDIR}/${INITSCRIPT_NAME} | \ + sed -e 's,/etc,${sysconfdir},g' \ + -e 's,/usr/sbin,${sbindir},g' \ + -e 's,/var,${localstatedir},g' \ + -e 's,/usr/bin,${bindir},g' \ + -e 's,/usr,${prefix},g' > ${D}${sysconfdir}/init.d/${INITSCRIPT_NAME} + chmod 755 ${D}${sysconfdir}/init.d/${INITSCRIPT_NAME} +}
Signature · 1 line
1.7.6.5
PATCH 4/4 netbase: Add interfaces with RANDOM_MAC for sys940x* machines
In reply to Darren HartThese machines have no MAC in the hardware and require that it be set manually. Specify RANDOM_MAC for the eth0 interface which the genmac init script will replace with RANDOM_MAC on first boot.
--- meta-sys940x/recipes-core/netbase/files/interfaces | 10 ++++++++++ .../recipes-core/netbase/netbase_4.47.bbappend | 3 +++ 2 files changed, 13 insertions(+), 0 deletions(-) create mode 100644 meta-sys940x/recipes-core/netbase/files/interfaces create mode 100644 meta-sys940x/recipes-core/netbase/netbase_4.47.bbappend
meta-sys940x/recipes-core/netbase/files/interfaces new file +10 -0
@@ -0,0 +1,10 @@ +# /etc/network/interfaces -- configuration file for ifup(8), ifdown(8) + +# The loopback interface +auto lo +iface lo inet loopback + +# Wired or wireless interfaces +auto eth0 +iface eth0 inet dhcp + hwaddress ether RANDOM_MAC
meta-sys940x/recipes-core/netbase/netbase_4.47.bbappend new file +3 -0
@@ -0,0 +1,3 @@ +FILESEXTRAPATHS_prepend := "${THISDIR}/files:" +RDEPENDS_${PN} += "genmac" +PRINC := "${@int(PRINC) + 1}"
Signature · 1 line
1.7.6.5
Re: [pull-sys940x 1/4] meta-intel: Add Inforce SYS940x BSP
In reply to Darren HartQuoted 12 lines · Darren Hart
The Inforce SYS940x-ECX Developer-Ready Reference Platform features:
o Intel Atom E6xx (0.6-1.6 GHz)
o Up to 1GB on-board DDR2
o Intel Platform Controller Hub EG20T
o VGA,LVDS
o HD Audio
o SD Card
o Dual SATA
o Mini-PCIe
Quoted 7 lines
Signed-off-by Darren Hart<[email protected]>--- meta-sys940x/COPYING.MIT | 17 +++ meta-sys940x/README | 140 ++++++++++++++++++++ meta-sys940x/README.sources | 18 +++ meta-sys940x/conf/layer.conf | 10 ++ meta-sys940x/conf/machine/sys940x-noemgd.conf | 19 +++
When I played around with an earlier version of this branch recently the kernel for the noemgd machine didn't build, is that now fixed?
Cheers,
Joshua
Signature · 3 lines
Joshua Lock
Yocto Project "Johannes factotum"
Intel Open Source Technology CentreRe: [pull-sys940x 2/4] ranpwd: Add ranpwd recipe
In reply to Darren HartQuoted 15 lines · Darren Hart
ranpwd is used to generate random strings of various types, including passwords, UUIDs, and MAC addresses.
Signed-off-by Darren Hart<[email protected]>--- meta-sys940x/recipes-extended/ranpwd/ranpwd_git.bb | 23 ++++++++++++++++++++ 1 files changed, 23 insertions(+), 0 deletions(-)create mode 100644 meta-sys940x/recipes-extended/ranpwd/ranpwd_git.bb
meta-sys940x/recipes-extended/ranpwd/ranpwd_git.bb new file +0
-0
meta-sys940x/recipes-extended/ranpwd/ranpwd_git.bb line 2
Quoted 2 lines
meta-sys940x/recipes-extended/ranpwd/ranpwd_git.bb new file +2
-0@@ -0,0 +1,23 @@ +DESCRIPTION = "Random password generator" +#SECTION = "utilities"
We may as well delete this line, no?
meta-sys940x/recipes-extended/ranpwd/ranpwd_git.bb line 12
Quoted 10 lines
meta-sys940x/recipes-extended/ranpwd/ranpwd_git.bb new file +10
-0+LICENSE = "GPLv2+" +LIC_FILES_CHKSUM = "file://ranpwd.c;beginline=1;endline=11;md5=0e8585e19117526efedfaeb50c345d7a" +PR = "r0" + +inherit autotools + +SRC_URI = "git://git.zytor.com/utils/ranpwd.git" +SRCREV = "b62aab579e288715b82d5575befaa2b8ff210c2b" + +S=${WORKDIR}/git
Variable assignments are usually quoted.
S = "${WORKDIR}/git"
Quoted 11 lines
meta-sys940x/recipes-extended/ranpwd/ranpwd_git.bb new file +11
-0+ +do_configure_prepend () { + if [ ! -e acinclude.m4 -a -e aclocal.m4 ]; then + cp aclocal.m4 acinclude.m4 + fi +} + +do_install() { + install -d ${D}/${bindir} + install -m 0755 ${S}/ranpwd ${D}/${bindir}/ranpwd +}
Signature · 3 lines
Joshua Lock
Yocto Project "Johannes factotum"
Intel Open Source Technology CentreRe: [pull-sys940x 3/4] genmac: Replace RANDOM_MAC in network/interfaces with a randomly generated MAC
In reply to Darren HartQuoted 32 lines · Darren Hart
For machines that do not have a MAC in hardware and with drivers that don't generate a random one in the kernel, this init script will replace the string
RANDOM_MACin the network/interfaces file with one generated with "ranpwd -m". Care is taken to ensure multiple interfaces can useRANDOM_MACand receive unique addresses. ranpwd generates MACs with the locally administered bit set and the multicast bit disabled.Signed-off-by Darren Hart<[email protected]>--- meta-sys940x/recipes-bsp/genmac/files/genmac | 46 ++++++++++++++++++++++++++ meta-sys940x/recipes-bsp/genmac/genmac.bb | 30 +++++++++++++++++ 2 files changed, 76 insertions(+), 0 deletions(-)create mode 100644 meta-sys940x/recipes-bsp/genmac/files/genmac create mode 100644 meta-sys940x/recipes-bsp/genmac/genmac.bb
meta-sys940x/recipes-bsp/genmac/files/genmac new file +11
-0@@ -0,0 +1,46 @@ +#!/bin/sh +### BEGIN INIT INFO +# Provides: Random MAC address generator +# Required-Start: $syslog +# Required-Stop: $syslog +# Default-Start: 2 3 4 5 +# Default-Stop: 0 1 6 +# Short-Description: Set a random MAC for tagged interfaces +# Description: Set a random MAC for interfaces with RANDOM_MAC +### END INIT INFO +
meta-sys940x/recipes-bsp/genmac/files/genmac line 21
Quoted 10 lines
meta-sys940x/recipes-bsp/genmac/files/genmac new file +10
-0+# Author: Darren Hart<[email protected]> +# Based on /etc/init.d/skeleton + +PATH=/sbin:/usr/sbin:/bin:/usr/bin +DESC="Set a random MAC for tagged interfaces" +NAME=genmac +RANPWD=`which ranpwd` +SCRIPTNAME=/etc/init.d/$NAME + +# Exit if amixer is not installed
amixer?
meta-sys940x/recipes-bsp/genmac/files/genmac line 25
Quoted 4 lines
meta-sys940x/recipes-bsp/genmac/files/genmac new file +4
-0+[ -x "$RANPWD" ] || exit 0 + +do_start() { + # Replace every occurance of RANDOM_MAC with a unique locally
occurrence?
meta-sys940x/recipes-bsp/genmac/files/genmac line 29
Quoted 4 lines
meta-sys940x/recipes-bsp/genmac/files/genmac new file +4
-0+ # administered, unicast, randomly generated MAC address. + while grep -q RANDOM_MAC /etc/network/interfaces; do + sed -i "1,/RANDOM_MAC/s/RANDOM_MAC/$($RANPWD -m)/" /etc/network/interfaces + done
Otherwise looks good, feel free to add my SOB.
Cheers,
Joshua
Signature · 3 lines
Joshua Lock
Yocto Project "Johannes factotum"
Intel Open Source Technology CentreRe: [pull-sys940x 4/4] netbase: Add interfaces with RANDOM_MAC for sys940x* machines
In reply to Darren HartQuoted 3 lines · Darren Hart
These machines have no MAC in the hardware and require that it be set manually. Specify
RANDOM_MACfor the eth0 interface which the genmac init script will replace withRANDOM_MACon first boot.
My concern with this patch is that iirc netbase isn't MACHINE specific - so if I have this layer enabled and build for another core2 machine I'll get these changes there too.
I don't know what the "right" solution to that is, though I muse some more below.
Quoted 30 lines
Signed-off-by Darren Hart<[email protected]>--- meta-sys940x/recipes-core/netbase/files/interfaces | 10 ++++++++++ .../recipes-core/netbase/netbase_4.47.bbappend | 3 +++ 2 files changed, 13 insertions(+), 0 deletions(-)create mode 100644 meta-sys940x/recipes-core/netbase/files/interfaces create mode 100644 meta-sys940x/recipes-core/netbase/netbase_4.47.bbappend
meta-sys940x/recipes-core/netbase/files/interfaces new file +10
-0@@ -0,0 +1,10 @@ +# /etc/network/interfaces -- configuration file for ifup(8), ifdown(8) + +# The loopback interface +auto lo +iface lo inet loopback + +# Wired or wireless interfaces +auto eth0 +iface eth0 inet dhcp + hwaddress ether RANDOM_MACmeta-sys940x/recipes-core/netbase/netbase_4.47.bbappend new file +0
-0
meta-sys940x/recipes-core/netbase/netbase_4.47.bbappend line 2
Quoted 2 lines
meta-sys940x/recipes-core/netbase/netbase_4.47.bbappend new file +2
-0@@ -0,0 +1,3 @@ +FILESEXTRAPATHS_prepend := "${THISDIR}/files:" +RDEPENDS_${PN} += "genmac"
We can use a MACHINE specific override here, I think.
RDEPENDS_${PN}_sys940x += "genmac"
Ideally we don't want that interfaces file on non-sys940x machines, perhaps we could name the interfaces file differently and add a do_install_append_sys940x which installs the MACHINE specific interface file?
Cheers,
Joshua
Signature · 3 lines
Joshua Lock
Yocto Project "Johannes factotum"
Intel Open Source Technology CentreRe: [pull-sys940x 4/4] netbase: Add interfaces with RANDOM_MAC for sys940x* machines
Quoted 7 lines · Joshua Lock
meta-sys940x/recipes-core/netbase/netbase_4.47.bbappend line 2
Quoted 4 lines
+++ b/meta-sys940x/recipes-core/netbase/netbase_4.47.bbappend
meta-sys940x/recipes-core/netbase/netbase_4.47.bbappend new file +2
-0@@ -0,0 +1,3 @@ +FILESEXTRAPATHS_prepend := "${THISDIR}/files:" +RDEPENDS_${PN} += "genmac"We can use a MACHINE specific override here, I think.
Quoted 6 lines
RDEPENDS_${PN}_sys940x += "genmac"
Ideally we don't want that interfaces file on non-sys940x machines, perhaps we could name the interfaces file differently and add a
do_install_append_sys940xwhich installs the MACHINE specific interface file?
In this instance, however, I don't know what would happen if we built netbase with this layer enabled for a different core2 MACHINE and then built for the sys940x....
I suspect the existing core2 package would be used and think for this approach to work we'd need to mark this recipe MACHINE specific.
Cheers,
Joshua
Signature · 3 lines
Joshua Lock
Yocto Project "Johannes factotum"
Intel Open Source Technology CentreRe: [pull-sys940x 1/4] meta-intel: Add Inforce SYS940x BSP
In reply to Joshua LockQuoted 10 lines · Joshua Lock
Quoted 9 lines
http://www.inforcecomputing.com/SYS940X_ECX.html
Signed-off-by Darren Hart<[email protected]>---
meta-sys940x/COPYING.MIT | 17 +++ meta-sys940x/README | 140 ++++++++++++++++++++ meta-sys940x/README.sources | 18 +++meta-sys940x/conf/layer.conf| 10 ++meta-sys940x/conf/machine/sys940x-noemgd.conf| 19 +++
Quoted 2 lines
When I played around with an earlier version of this branch recently the kernel for the noemgd machine didn't build, is that now fixed?
Apologies, I got that the wrong way around. The kernel for the MACHINE *with* emgd didn't build. The noemgd version worked fine.
Cheers,
Joshua
Signature · 3 lines
Joshua Lock
Yocto Project "Johannes factotum"
Intel Open Source Technology CentreRe: [pull-sys940x 2/4] ranpwd: Add ranpwd recipe
In reply to Joshua LockQuoted 23 lines · Joshua Lock
Quoted 15 lines · Darren Hart
ranpwd is used to generate random strings of various types, including passwords, UUIDs, and MAC addresses.
Signed-off-by Darren Hart<[email protected]>--- meta-sys940x/recipes-extended/ranpwd/ranpwd_git.bb | 23 ++++++++++++++++++++ 1 files changed, 23 insertions(+), 0 deletions(-)create mode 100644 meta-sys940x/recipes-extended/ranpwd/ranpwd_git.bb
meta-sys940x/recipes-extended/ranpwd/ranpwd_git.bb new file +0
-0meta-sys940x/recipes-extended/ranpwd/ranpwd_git.bb line 2
Quoted 2 lines
meta-sys940x/recipes-extended/ranpwd/ranpwd_git.bb new file +2
-0@@ -0,0 +1,23 @@ +DESCRIPTION = "Random password generator" +#SECTION = "utilities"We may as well delete this line, no?
Quoted 8 lines
meta-sys940x/recipes-extended/ranpwd/ranpwd_git.bb line 10
Quoted 8 lines
meta-sys940x/recipes-extended/ranpwd/ranpwd_git.bb new file +8
-0+LICENSE = "GPLv2+" +LIC_FILES_CHKSUM = "file://ranpwd.c;beginline=1;endline=11;md5=0e8585e19117526efedfaeb50c345d7a" +PR = "r0" + +inherit autotools + +SRC_URI = "git://git.zytor.com/utils/ranpwd.git" +SRCREV = "b62aab579e288715b82d5575befaa2b8ff210c2b"
What about PV? Do you really want just "git"?
Quoted 27 lines
meta-sys940x/recipes-extended/ranpwd/ranpwd_git.bb line 12
Quoted 2 lines
meta-sys940x/recipes-extended/ranpwd/ranpwd_git.bb new file +2
-0+ +S=${WORKDIR}/gitVariable assignments are usually quoted.
S = "${WORKDIR}/git"
Quoted 11 lines
meta-sys940x/recipes-extended/ranpwd/ranpwd_git.bb new file +11
-0+ +do_configure_prepend () { + if [ ! -e acinclude.m4 -a -e aclocal.m4 ]; then + cp aclocal.m4 acinclude.m4 + fi +} + +do_install() { + install -d ${D}/${bindir} + install -m 0755 ${S}/ranpwd ${D}/${bindir}/ranpwd +}Signature · 7 lines
Joshua Lock Yocto Project "Johannes factotum" Intel Open Source Technology Centre _______________________________________________ yocto mailing list [email protected] https://lists.yoctoproject.org/listinfo/yocto
Signature · 1 line
Martin 'JaMa' Jansa jabber: [email protected]
Re: [pull-sys940x 3/4] genmac: Replace RANDOM_MAC in network/interfaces with a randomly generated MAC
In reply to Darren HartQuoted 41 lines · Darren Hart
For machines that do not have a MAC in hardware and with drivers that don't generate a random one in the kernel, this init script will replace the string
RANDOM_MACin the network/interfaces file with one generated with "ranpwd -m". Care is taken to ensure multiple interfaces can useRANDOM_MACand receive unique addresses. ranpwd generates MACs with the locally administered bit set and the multicast bit disabled.Signed-off-by Darren Hart<[email protected]>--- meta-sys940x/recipes-bsp/genmac/files/genmac | 46 ++++++++++++++++++++++++++ meta-sys940x/recipes-bsp/genmac/genmac.bb | 30 +++++++++++++++++ 2 files changed, 76 insertions(+), 0 deletions(-)create mode 100644 meta-sys940x/recipes-bsp/genmac/files/genmac create mode 100644 meta-sys940x/recipes-bsp/genmac/genmac.bb
meta-sys940x/recipes-bsp/genmac/files/genmac new file +20
-0@@ -0,0 +1,46 @@ +#!/bin/sh +### BEGIN INIT INFO +# Provides: Random MAC address generator +# Required-Start: $syslog +# Required-Stop: $syslog +# Default-Start: 2 3 4 5 +# Default-Stop: 0 1 6 +# Short-Description: Set a random MAC for tagged interfaces +# Description: Set a random MAC for interfaces with RANDOM_MAC +### END INIT INFO + +# Author: Darren Hart<[email protected]> +# Based on /etc/init.d/skeleton + +PATH=/sbin:/usr/sbin:/bin:/usr/bin +DESC="Set a random MAC for tagged interfaces" +NAME=genmac +RANPWD=`which ranpwd` +SCRIPTNAME=/etc/init.d/$NAME +
meta-sys940x/recipes-bsp/genmac/files/genmac line 30
Quoted 10 lines
meta-sys940x/recipes-bsp/genmac/files/genmac new file +10
-0+# Exit if amixer is not installed +[ -x "$RANPWD" ] || exit 0 + +do_start() { + # Replace every occurance of RANDOM_MAC with a unique locally + # administered, unicast, randomly generated MAC address. + while grep -q RANDOM_MAC /etc/network/interfaces; do + sed -i "1,/RANDOM_MAC/s/RANDOM_MAC/$($RANPWD -m)/" /etc/network/interfaces + done +}
So on a non-volatile r/w filesystem this will assign a new random mac to each interface on the first boot and reuse that MAC on each subsquent boot.
On a volatile r/w filesystem this will use a new MAC addr for each boot. I guess thats better than nothing and not much to do on a volatile system.
What does this do on a ro filesystem? No network? network with 0:0:0:0:0:0 MAC addr? (horror! but I suspect the kernel won't allow that). Certainly this script failing should not cause the rest of boot to fail.
Re: [pull-sys940x 3/4] genmac: Replace RANDOM_MAC in network/interfaces with a randomly generated MAC
Hi Bill,
Quoted 48 lines · William Mills
Quoted 46 lines · Darren Hart
For machines that do not have a MAC in hardware and with drivers that don't generate a random one in the kernel, this init script will replace the string
RANDOM_MACin the network/interfaces file with one generated with "ranpwd -m". Care is taken to ensure multiple interfaces can useRANDOM_MACand receive unique addresses. ranpwd generates MACs with the locally administered bit set and the multicast bit disabled.Signed-off-by Darren Hart<[email protected]>--- meta-sys940x/recipes-bsp/genmac/files/genmac | 46 ++++++++++++++++++++++++++ meta-sys940x/recipes-bsp/genmac/genmac.bb | 30 +++++++++++++++++ 2 files changed, 76 insertions(+), 0 deletions(-)create mode 100644 meta-sys940x/recipes-bsp/genmac/files/genmac create mode 100644 meta-sys940x/recipes-bsp/genmac/genmac.bb
meta-sys940x/recipes-bsp/genmac/files/genmac new file +25
-0@@ -0,0 +1,46 @@ +#!/bin/sh +### BEGIN INIT INFO +# Provides: Random MAC address generator +# Required-Start: $syslog +# Required-Stop: $syslog +# Default-Start: 2 3 4 5 +# Default-Stop: 0 1 6 +# Short-Description: Set a random MAC for tagged interfaces +# Description: Set a random MAC for interfaces with RANDOM_MAC +### END INIT INFO + +# Author: Darren Hart<[email protected]> +# Based on /etc/init.d/skeleton + +PATH=/sbin:/usr/sbin:/bin:/usr/bin +DESC="Set a random MAC for tagged interfaces" +NAME=genmac +RANPWD=`which ranpwd` +SCRIPTNAME=/etc/init.d/$NAME + +# Exit if amixer is not installed +[ -x "$RANPWD" ] || exit 0 + +do_start() { + # Replace every occurance of RANDOM_MAC with a unique locally
Quoted 8 lines
meta-sys940x/recipes-bsp/genmac/files/genmac line 30
Quoted 5 lines
meta-sys940x/recipes-bsp/genmac/files/genmac new file +5
-0+ # administered, unicast, randomly generated MAC address. + while grep -q RANDOM_MAC /etc/network/interfaces; do + sed -i "1,/RANDOM_MAC/s/RANDOM_MAC/$($RANPWD -m)/" /etc/network/interfaces + done +}So on a non-volatile r/w filesystem this will assign a new random mac to each interface on the first boot and reuse that MAC on each subsquent boot.
Correct.
Quoted 4 lines
On a volatile r/w filesystem this will use a new MAC addr for each boot. I guess thats better than nothing and not much to do on a volatile system.
Correct. The alternative would be to try and sort out some kind of hash based on unique data, maybe dmidecode data - but that's not very consistent across platforms. I think there is something like this available for the Beagleboard.
Quoted 4 lines
What does this do on a ro filesystem? No network? network with 0:0:0:0:0:0 MAC addr? (horror! but I suspect the kernel won't allow that). Certainly this script failing should not cause the rest of boot to fail.
On a read only filesystem with genmac installed and RANDOM_MAC in the interfaces file, genmac will run and NOT update interfaces. This was written with the pch_gbe driver in mind. If no MAC is in the EEPROM, the pch_gbe driver leaves the MAC as 00:00:00:00:00:00 and leaves the interface down. It will fail any up command until the MAC has been set. So the subsequent networking script will fail to bring up the relevant interface. ifconfig -a will list the interface as down and with a MAC of 00:00:00:00:00:00.
Other drivers will assign a random MAC within the kernel, making this all unnecessary, but David Miller refused this patch for this driver (despite the precedent).
If you want to use a RO image on a platform with a pch_gbe nic and no EEPROM, you need to hardcode the generated MAC in the interfaces file.
The alternative would be for me to call this pch_gbe_genmac and have it call ifconfig directly instead of delegating it to the interfaces file. But then I would still want to use a config file to store the first-boot-generated MAC so it was the same across boots. Once I have to generate a config file, I felt it made more sense to just use interfaces, and then it makes sense to make it generic (not pch_gbe specific), and that led me to this implementation.
Seem reasonable?
Signature · 3 lines
Darren Hart Intel Open Source Technology Center Yocto Project - Linux Kernel
Re: [pull-sys940x 1/4] meta-intel: Add Inforce SYS940x BSP
In reply to Joshua LockQuoted 11 lines · Joshua Lock
Quoted 10 lines · Joshua Lock
Quoted 9 lines
http://www.inforcecomputing.com/SYS940X_ECX.html
Signed-off-by Darren Hart<[email protected]>---
meta-sys940x/COPYING.MIT | 17 +++ meta-sys940x/README | 140 ++++++++++++++++++++ meta-sys940x/README.sources | 18 +++meta-sys940x/conf/layer.conf| 10 ++meta-sys940x/conf/machine/sys940x-noemgd.conf| 19 +++
Quoted 5 lines
Quoted 2 lines
When I played around with an earlier version of this branch recently the kernel for the noemgd machine didn't build, is that now fixed?
Apologies, I got that the wrong way around. The kernel for the MACHINE *with* emgd didn't build. The noemgd version worked fine.
Should be good now. Now that Bruce has pulled in the sys940x BSP patches to linux-yocto, I'll need to update the meta SRCREV, and will do that before a push.
Signature · 3 lines
Darren Hart Intel Open Source Technology Center Yocto Project - Linux Kernel
Re: [pull-sys940x 2/4] ranpwd: Add ranpwd recipe
In reply to Joshua LockQuoted 12 lines · Joshua Lock
Quoted 9 lines · Darren Hart
ranpwd is used to generate random strings of various types, including passwords, UUIDs, and MAC addresses.
Signed-off-by Darren Hart<[email protected]>--- meta-sys940x/recipes-extended/ranpwd/ranpwd_git.bb | 23 ++++++++++++++++++++ 1 files changed, 23 insertions(+), 0 deletions(-)create mode 100644 meta-sys940x/recipes-extended/ranpwd/ranpwd_git.bb
Quoted 10 lines
meta-sys940x/recipes-extended/ranpwd/ranpwd_git.bb line 2
Quoted 8 lines
meta-sys940x/recipes-extended/ranpwd/ranpwd_git.bb new file +2
-0@@ -0,0 +1,23 @@ +DESCRIPTION = "Random password generator" +#SECTION = "utilities"We may as well delete this line, no?
Oops. I didn't intend to leave it commented. I'm also no sure how to decide which "SECTION" to put it in. Is there some definitive list from which to select an appropriate SECTION? Uncommented in my local branch for now.
Quoted 14 lines
meta-sys940x/recipes-extended/ranpwd/ranpwd_git.bb line 12
Quoted 11 lines
meta-sys940x/recipes-extended/ranpwd/ranpwd_git.bb new file +10
-0+LICENSE = "GPLv2+" +LIC_FILES_CHKSUM = "file://ranpwd.c;beginline=1;endline=11;md5=0e8585e19117526efedfaeb50c345d7a" +PR = "r0" + +inherit autotools + +SRC_URI = "git://git.zytor.com/utils/ranpwd.git" +SRCREV = "b62aab579e288715b82d5575befaa2b8ff210c2b" + +S=${WORKDIR}/gitVariable assignments are usually quoted.
Quoted 2 lines
S = "${WORKDIR}/git"
OK, will do.
Quoted 12 lines
meta-sys940x/recipes-extended/ranpwd/ranpwd_git.bb line 23
Quoted 11 lines
meta-sys940x/recipes-extended/ranpwd/ranpwd_git.bb new file +11
-0+ +do_configure_prepend () { + if [ ! -e acinclude.m4 -a -e aclocal.m4 ]; then + cp aclocal.m4 acinclude.m4 + fi +} + +do_install() { + install -d ${D}/${bindir} + install -m 0755 ${S}/ranpwd ${D}/${bindir}/ranpwd +}
Thanks for the review.
Signature · 3 lines
Darren Hart Intel Open Source Technology Center Yocto Project - Linux Kernel
Re: [pull-sys940x 2/4] ranpwd: Add ranpwd recipe
In reply to Martin JansaQuoted 24 lines · Martin Jansa
Quoted 23 lines · Joshua Lock
Quoted 15 lines · Darren Hart
ranpwd is used to generate random strings of various types, including passwords, UUIDs, and MAC addresses.
Signed-off-by Darren Hart<[email protected]>--- meta-sys940x/recipes-extended/ranpwd/ranpwd_git.bb | 23 ++++++++++++++++++++ 1 files changed, 23 insertions(+), 0 deletions(-)create mode 100644 meta-sys940x/recipes-extended/ranpwd/ranpwd_git.bb
meta-sys940x/recipes-extended/ranpwd/ranpwd_git.bb new file +0
-0meta-sys940x/recipes-extended/ranpwd/ranpwd_git.bb line 2
Quoted 2 lines
meta-sys940x/recipes-extended/ranpwd/ranpwd_git.bb new file +2
-0@@ -0,0 +1,23 @@ +DESCRIPTION = "Random password generator" +#SECTION = "utilities"We may as well delete this line, no?
Quoted 10 lines
Quoted 8 lines
meta-sys940x/recipes-extended/ranpwd/ranpwd_git.bb line 10
Quoted 8 lines
meta-sys940x/recipes-extended/ranpwd/ranpwd_git.bb new file +8
-0+LICENSE = "GPLv2+" +LIC_FILES_CHKSUM = "file://ranpwd.c;beginline=1;endline=11;md5=0e8585e19117526efedfaeb50c345d7a" +PR = "r0" + +inherit autotools + +SRC_URI = "git://git.zytor.com/utils/ranpwd.git" +SRCREV = "b62aab579e288715b82d5575befaa2b8ff210c2b"What about PV? Do you really want just "git"?
There is a 1.1 and 1.2 tag in the git repository. However, some of the MAC related features come well after 1.2 with no subsequent tag. For this reason I left it as "git". Is there a better way to do this? Should I call it 1.2+ or something?
Thanks,
Signature · 3 lines
Darren Hart Intel Open Source Technology Center Yocto Project - Linux Kernel
Re: [pull-sys940x 3/4] genmac: Replace RANDOM_MAC in network/interfaces with a randomly generated MAC
In reply to Joshua LockQuoted 53 lines · Joshua Lock
Quoted 32 lines · Darren Hart
For machines that do not have a MAC in hardware and with drivers that don't generate a random one in the kernel, this init script will replace the string
RANDOM_MACin the network/interfaces file with one generated with "ranpwd -m". Care is taken to ensure multiple interfaces can useRANDOM_MACand receive unique addresses. ranpwd generates MACs with the locally administered bit set and the multicast bit disabled.Signed-off-by Darren Hart<[email protected]>--- meta-sys940x/recipes-bsp/genmac/files/genmac | 46 ++++++++++++++++++++++++++ meta-sys940x/recipes-bsp/genmac/genmac.bb | 30 +++++++++++++++++ 2 files changed, 76 insertions(+), 0 deletions(-)create mode 100644 meta-sys940x/recipes-bsp/genmac/files/genmac create mode 100644 meta-sys940x/recipes-bsp/genmac/genmac.bb
meta-sys940x/recipes-bsp/genmac/files/genmac new file +11
-0@@ -0,0 +1,46 @@ +#!/bin/sh +### BEGIN INIT INFO +# Provides: Random MAC address generator +# Required-Start: $syslog +# Required-Stop: $syslog +# Default-Start: 2 3 4 5 +# Default-Stop: 0 1 6 +# Short-Description: Set a random MAC for tagged interfaces +# Description: Set a random MAC for interfaces with RANDOM_MAC +### END INIT INFO +meta-sys940x/recipes-bsp/genmac/files/genmac line 21
Quoted 10 lines
meta-sys940x/recipes-bsp/genmac/files/genmac new file +10
-0+# Author: Darren Hart<[email protected]> +# Based on /etc/init.d/skeleton + +PATH=/sbin:/usr/sbin:/bin:/usr/bin +DESC="Set a random MAC for tagged interfaces" +NAME=genmac +RANPWD=`which ranpwd` +SCRIPTNAME=/etc/init.d/$NAME + +# Exit if amixer is not installedamixer?
meta-sys940x/recipes-bsp/genmac/files/genmac line 25
Quoted 4 lines
meta-sys940x/recipes-bsp/genmac/files/genmac new file +4
-0+[ -x "$RANPWD" ] || exit 0 + +do_start() { + # Replace every occurance of RANDOM_MAC with a unique locallyoccurrence?
Quoted 7 lines
meta-sys940x/recipes-bsp/genmac/files/genmac line 29
Quoted 4 lines
meta-sys940x/recipes-bsp/genmac/files/genmac new file +4
-0+ # administered, unicast, randomly generated MAC address. + while grep -q RANDOM_MAC /etc/network/interfaces; do + sed -i "1,/RANDOM_MAC/s/RANDOM_MAC/$($RANPWD -m)/" /etc/network/interfaces + doneOtherwise looks good, feel free to add my SOB.
Both fixed, SOB added. Thanks for the review!
Signature · 3 lines
Darren Hart Intel Open Source Technology Center Yocto Project - Linux Kernel
Re: [pull-sys940x 4/4] netbase: Add interfaces with RANDOM_MAC for sys940x* machines
In reply to Joshua LockQuoted 21 lines · Joshua Lock
Quoted 7 lines · Joshua Lock
meta-sys940x/recipes-core/netbase/netbase_4.47.bbappend line 2
Quoted 4 lines
+++ b/meta-sys940x/recipes-core/netbase/netbase_4.47.bbappend
meta-sys940x/recipes-core/netbase/netbase_4.47.bbappend new file +2
-0@@ -0,0 +1,3 @@ +FILESEXTRAPATHS_prepend := "${THISDIR}/files:" +RDEPENDS_${PN} += "genmac"We can use a MACHINE specific override here, I think.
Quoted 6 lines
RDEPENDS_${PN}_sys940x += "genmac"
Ideally we don't want that interfaces file on non-sys940x machines, perhaps we could name the interfaces file differently and add a
do_install_append_sys940xwhich installs the MACHINE specific interface file?In this instance, however, I don't know what would happen if we built netbase with this layer enabled for a different core2 MACHINE and then built for the sys940x....
Quoted 5 lines
I suspect the existing core2 package would be used and think for this approach to work we'd need to mark this recipe MACHINE specific.
Cheers,
Joshua
Thanks for catching this. As I understand it, Richard and Joshua have agreed that netbase should just be MACHINE specific. Joshua has agreed to prep a patch to this effect, rendering this recipe OK as is.
Signature · 3 lines
Darren Hart Intel Open Source Technology Center Yocto Project - Linux Kernel
Re: [pull-sys940x 3/4] genmac: Replace RANDOM_MAC in network/interfaces with a randomly generated MAC
In reply to Darren HartQuoted 42 lines · Darren Hart
Quoted 2 lines · William Mills
So on a non-volatile r/w filesystem this will assign a new random mac to each interface on the first boot and reuse that MAC on each subsquent boot.
Correct.
Quoted 3 lines
On a volatile r/w filesystem this will use a new MAC addr for each boot. I guess thats better than nothing and not much to do on a volatile system.
Correct. The alternative would be to try and sort out some kind of hash based on unique data, maybe dmidecode data - but that's not very consistent across platforms. I think there is something like this available for the Beagleboard.
Quoted 4 lines
What does this do on a ro filesystem? No network? network with 0:0:0:0:0:0 MAC addr? (horror! but I suspect the kernel won't allow that). Certainly this script failing should not cause the rest of boot to fail.
On a read only filesystem with genmac installed and
RANDOM_MACin the interfaces file, genmac will run and NOT update interfaces. This was written with thepch_gbedriver in mind. If no MAC is in the EEPROM, thepch_gbedriver leaves the MAC as 00:00:00:00:00:00 and leaves the interface down. It will fail any up command until the MAC has been set. So the subsequent networking script will fail to bring up the relevant interface. ifconfig -a will list the interface as down and with a MAC of 00:00:00:00:00:00.Other drivers will assign a random MAC within the kernel, making this all unnecessary, but David Miller refused this patch for this driver (despite the precedent).
If you want to use a RO image on a platform with a
pch_gbenic and no EEPROM, you need to hardcode the generated MAC in the interfaces file.The alternative would be for me to call this
pch_gbe_genmacand have it call ifconfig directly instead of delegating it to the interfaces file. But then I would still want to use a config file to store the first-boot-generated MAC so it was the same across boots. Once I have to generate a config file, I felt it made more sense to just use interfaces, and then it makes sense to make it generic (notpch_gbespecific), and that led me to this implementation.
Quoted 2 lines
Seem reasonable?
Yes I think so. Just wanted to make sure it failed gracefully. I think your doing the best that can be expected.
Thanks for the detail.
[I'm interested as I have a board that might need this. Not in OE yet, but someday ...]
Re: [pull-sys940x 4/4] netbase: Add interfaces with RANDOM_MAC for sys940x* machines
In reply to Joshua LockQuoted 15 lines · Joshua Lock
Quoted 7 lines · Joshua Lock
meta-sys940x/recipes-core/netbase/netbase_4.47.bbappend line 2
Quoted 4 lines
+++ b/meta-sys940x/recipes-core/netbase/netbase_4.47.bbappend
meta-sys940x/recipes-core/netbase/netbase_4.47.bbappend new file +2
-0@@ -0,0 +1,3 @@ +FILESEXTRAPATHS_prepend := "${THISDIR}/files:" +RDEPENDS_${PN} += "genmac"We can use a MACHINE specific override here, I think.
Quoted 6 lines
RDEPENDS_${PN}_sys940x += "genmac"
Ideally we don't want that interfaces file on non-sys940x machines, perhaps we could name the interfaces file differently and add a
do_install_append_sys940xwhich installs the MACHINE specific interface file?
Quoted 6 lines
In this instance, however, I don't know what would happen if we built netbase with this layer enabled for a different core2 MACHINE and then built for the sys940x....
I suspect the existing core2 package would be used and think for this approach to work we'd need to mark this recipe MACHINE specific.
I was missing a detail here which Koen pointed out, if you use a MACHINE OVERRIDE in SRC_URI BitBake should mark the package as MACHINE specific.
I've submitted a patch to make netbase MACHINE specific by default but should that patch not be accepted the use of an OVERRIDE on SRC_URI or explicitly setting PACKAGE_ARCH = "${MACHINE_ARCH}" in the bbappend will be an appropriate fix.
Cheers,
Joshua
Signature · 3 lines
Joshua Lock
Yocto Project "Johannes factotum"
Intel Open Source Technology CentreRe: [pull-sys940x 2/4] ranpwd: Add ranpwd recipe
In reply to Darren HartQuoted 38 lines · Darren Hart
Quoted 24 lines · Martin Jansa
Quoted 23 lines · Joshua Lock
Quoted 15 lines · Darren Hart
ranpwd is used to generate random strings of various types, including passwords, UUIDs, and MAC addresses.
Signed-off-by Darren Hart<[email protected]>--- meta-sys940x/recipes-extended/ranpwd/ranpwd_git.bb | 23 ++++++++++++++++++++ 1 files changed, 23 insertions(+), 0 deletions(-)create mode 100644 meta-sys940x/recipes-extended/ranpwd/ranpwd_git.bb
meta-sys940x/recipes-extended/ranpwd/ranpwd_git.bb new file +0
-0meta-sys940x/recipes-extended/ranpwd/ranpwd_git.bb line 2
Quoted 2 lines
meta-sys940x/recipes-extended/ranpwd/ranpwd_git.bb new file +2
-0@@ -0,0 +1,23 @@ +DESCRIPTION = "Random password generator" +#SECTION = "utilities"We may as well delete this line, no?
Quoted 10 lines
Quoted 8 lines
meta-sys940x/recipes-extended/ranpwd/ranpwd_git.bb line 10
Quoted 8 lines
meta-sys940x/recipes-extended/ranpwd/ranpwd_git.bb new file +8
-0+LICENSE = "GPLv2+" +LIC_FILES_CHKSUM = "file://ranpwd.c;beginline=1;endline=11;md5=0e8585e19117526efedfaeb50c345d7a" +PR = "r0" + +inherit autotools + +SRC_URI = "git://git.zytor.com/utils/ranpwd.git" +SRCREV = "b62aab579e288715b82d5575befaa2b8ff210c2b"What about PV? Do you really want just "git"?
Quoted 4 lines
There is a 1.1 and 1.2 tag in the git repository. However, some of the MAC related features come well after 1.2 with no subsequent tag. For this reason I left it as "git". Is there a better way to do this? Should I call it 1.2+ or something?
The PV determined from the SRC_URI is simply git. Martin is suggesting you might want to set it to something different in the recipe to give a more meaningful (and useful) value i.e:
meta/recipes-connectivity/gypsy/gypsy_git.bb:PV = "0.8+git${SRCPV}"
Cheers,
Joshua
Signature · 3 lines
Joshua Lock
Yocto Project "Johannes factotum"
Intel Open Source Technology CentreRe: [pull-sys940x 2/4] ranpwd: Add ranpwd recipe
In reply to Darren HartQuoted 26 lines · Darren Hart
Quoted 12 lines · Joshua Lock
Quoted 9 lines · Darren Hart
ranpwd is used to generate random strings of various types, including passwords, UUIDs, and MAC addresses.
Signed-off-by Darren Hart<[email protected]>--- meta-sys940x/recipes-extended/ranpwd/ranpwd_git.bb | 23 ++++++++++++++++++++ 1 files changed, 23 insertions(+), 0 deletions(-)create mode 100644 meta-sys940x/recipes-extended/ranpwd/ranpwd_git.bb
Quoted 10 lines
meta-sys940x/recipes-extended/ranpwd/ranpwd_git.bb line 2
Quoted 8 lines
meta-sys940x/recipes-extended/ranpwd/ranpwd_git.bb new file +2
-0@@ -0,0 +1,23 @@ +DESCRIPTION = "Random password generator" +#SECTION = "utilities"We may as well delete this line, no?
Quoted 4 lines
Oops. I didn't intend to leave it commented. I'm also no sure how to decide which "SECTION" to put it in. Is there some definitive list from which to select an appropriate SECTION? Uncommented in my local branch for now.
I think there was an agreement to drop this field. It's not especially useful and there's not definitive list that I'm aware of.
Cheers,
Joshua
Signature · 3 lines
Joshua Lock
Yocto Project "Johannes factotum"
Intel Open Source Technology CentreRe: [pull-sys940x 2/4] ranpwd: Add ranpwd recipe
Quoted 29 lines · Joshua Lock
Quoted 26 lines · Darren Hart
Quoted 22 lines · Joshua Lock
Quoted 15 lines · Darren Hart
ranpwd is used to generate random strings of various types, including passwords, UUIDs, and MAC addresses.
Signed-off-by Darren Hart<[email protected]>--- meta-sys940x/recipes-extended/ranpwd/ranpwd_git.bb | 23 ++++++++++++++++++++ 1 files changed, 23 insertions(+), 0 deletions(-)create mode 100644 meta-sys940x/recipes-extended/ranpwd/ranpwd_git.bb
meta-sys940x/recipes-extended/ranpwd/ranpwd_git.bb new file +0
-0meta-sys940x/recipes-extended/ranpwd/ranpwd_git.bb line 2
Quoted 2 lines
meta-sys940x/recipes-extended/ranpwd/ranpwd_git.bb new file +2
-0@@ -0,0 +1,23 @@ +DESCRIPTION = "Random password generator" +#SECTION = "utilities"We may as well delete this line, no?
Quoted 7 lines
Quoted 4 lines
Oops. I didn't intend to leave it commented. I'm also no sure how to decide which "SECTION" to put it in. Is there some definitive list from which to select an appropriate SECTION? Uncommented in my local branch for now.
I think there was an agreement to drop this field. It's not especially useful and there's not definitive list that I'm aware of.
Done.
Signature · 3 lines
Darren Hart Intel Open Source Technology Center Yocto Project - Linux Kernel
Re: [pull-sys940x 2/4] ranpwd: Add ranpwd recipe
In reply to Joshua LockQuoted 1 line · Joshua Lock
PV = "0.8+git${SRCPV}"
And done.
Signature · 3 lines
Darren Hart Intel Open Source Technology Center Yocto Project - Linux Kernel
Re: [pull-sys940x 2/4] ranpwd: Add ranpwd recipe
In reply to Darren HartQuoted 30 lines · Darren Hart
Quoted 29 lines · Joshua Lock
Quoted 26 lines · Darren Hart
Quoted 22 lines · Joshua Lock
Quoted 15 lines · Darren Hart
ranpwd is used to generate random strings of various types, including passwords, UUIDs, and MAC addresses.
Signed-off-by Darren Hart<[email protected]>--- meta-sys940x/recipes-extended/ranpwd/ranpwd_git.bb | 23 ++++++++++++++++++++ 1 files changed, 23 insertions(+), 0 deletions(-) create mode 100644 meta-sys940x/recipes-extended/ranpwd/ranpwd_git.bbmeta-sys940x/recipes-extended/ranpwd/ranpwd_git.bb new file +0
-0meta-sys940x/recipes-extended/ranpwd/ranpwd_git.bb line 2
Quoted 2 lines
meta-sys940x/recipes-extended/ranpwd/ranpwd_git.bb new file +2
-0@@ -0,0 +1,23 @@ +DESCRIPTION = "Random password generator" +#SECTION = "utilities"We may as well delete this line, no?
Quoted 7 lines
Quoted 7 lines
Quoted 4 lines
Oops. I didn't intend to leave it commented. I'm also no sure how to decide which "SECTION" to put it in. Is there some definitive list from which to select an appropriate SECTION? Uncommented in my local branch for now.
I think there was an agreement to drop this field. It's not especially useful and there's not definitive list that I'm aware of.
Apologies. I'm wrong here. It was PRIORITY which we agreed to drop.
By taking a brief glance over the metadata I'd probably suggest either utils or console/utils - I'm not certain if one is preferred.
Cheers,
Joshua
Signature · 3 lines
Joshua Lock
Yocto Project "Johannes factotum"
Intel Open Source Technology CentreRe: [pull-sys940x 2/4] ranpwd: Add ranpwd recipe
Quoted 1 line · On Thursday 02 February 2012 13:11:19 Joshua Lock wrote:
Apologies. I'm wrong here. It was PRIORITY which we agreed to drop.
It's worth noting however, at the same time PRIORITY removal was discussed it was acknowledged that SECTION was questionable. Logical grouping of recipes/packages is a useful thing but coming up with groupings that are meaningful in all contexts is hard :(
Cheers,
Paul
Signature · 2 lines
Paul Eggleton Intel Open Source Technology Centre
Re: [pull-sys940x 2/4] ranpwd: Add ranpwd recipe
Quoted 7 lines · Paul Eggleton
Quoted 1 line · On Thursday 02 February 2012 13:11:19 Joshua Lock wrote:
Apologies. I'm wrong here. It was PRIORITY which we agreed to drop.
It's worth noting however, at the same time PRIORITY removal was discussed it was acknowledged that SECTION was questionable. Logical grouping of recipes/packages is a useful thing but coming up with groupings that are meaningful in all contexts is hard :(
Glad to know my recollection isn't wildly off the mark.
I noticed that there are similar, yet different, SECTION values being used. If we opt to keep SECTION I wonder if we should try and standardise/sanitise it?
Debian's sections seem like reasonable inspiration? http://packages.debian.org/stable/
I think SECTION is useful for tools like Hob and Narcissus, so I'm in favour of keeping them.
Cheers,
Joshua
Signature · 3 lines
Joshua Lock
Yocto Project "Johannes factotum"
Intel Open Source Technology CentreRe: [pull-sys940x 2/4] ranpwd: Add ranpwd recipe
Quoted 9 lines · Joshua Lock
Quoted 7 lines · Paul Eggleton
Quoted 1 line · On Thursday 02 February 2012 13:11:19 Joshua Lock wrote:
Apologies. I'm wrong here. It was PRIORITY which we agreed to drop.
It's worth noting however, at the same time PRIORITY removal was discussed it was acknowledged that SECTION was questionable. Logical grouping of recipes/packages is a useful thing but coming up with groupings that are meaningful in all contexts is hard :(
Quoted 5 lines
Glad to know my recollection isn't wildly off the mark.
I noticed that there are similar, yet different, SECTION values being used. If we opt to keep SECTION I wonder if we should try and standardise/sanitise it?
If there is standardised SECTION variable why not use recipes-${SECTION}/foo_1.0.bb as we already have couple of recipe-* directories and it's sometimes hard to decide to which directory something belongs.
Or other way around, standartise recipes-* directories and let bitbake decide SECTION from it (like it does for PV and PN).
Cheers,
Quoted 17 lines
Debian's sections seem like reasonable inspiration?
http://packages.debian.org/stable/I think SECTION is useful for tools like Hob and Narcissus, so I'm in favour of keeping them.
Cheers,
JoshuaSignature · 7 lines
Joshua Lock Yocto Project "Johannes factotum" Intel Open Source Technology Centre _______________________________________________ yocto mailing list [email protected] https://lists.yoctoproject.org/listinfo/yocto
Signature · 1 line
Martin 'JaMa' Jansa jabber: [email protected]
Re: [yocto] [pull-sys940x 2/4] ranpwd: Add ranpwd recipe
Op 7 feb. 2012, om 08:06 heeft Martin Jansa het volgende geschreven:
Quoted 16 lines · Joshua Lock
Quoted 9 lines · Paul Eggleton
Quoted 7 lines · On Thursday 02 February 2012 13:11:19 Joshua Lock wrote:
Quoted 1 line
Apologies. I'm wrong here. It was PRIORITY which we agreed to drop.
It's worth noting however, at the same time PRIORITY removal was discussed it was acknowledged that SECTION was questionable. Logical grouping of recipes/packages is a useful thing but coming up with groupings that are meaningful in all contexts is hard :(
Quoted 5 lines
Glad to know my recollection isn't wildly off the mark.
I noticed that there are similar, yet different, SECTION values being used. If we opt to keep SECTION I wonder if we should try and standardise/sanitise it?
Quoted 7 lines
If there is standardised SECTION variable why not use recipes-${SECTION}/foo_1.0.bb as we already have couple of recipe-* directories and it's sometimes hard to decide to which directory something belongs.
Or other way around, standartise recipes-* directories and let bitbake decide SECTION from it (like it does for PV and PN).
Can we move this discussion to the oe-core list please?
Re: [pull-sys940x 2/4] ranpwd: Add ranpwd recipe
In reply to Martin JansaQuoted 16 lines · Martin Jansa
Quoted 9 lines · Joshua Lock
Quoted 7 lines · Paul Eggleton
Quoted 1 line · On Thursday 02 February 2012 13:11:19 Joshua Lock wrote:
Apologies. I'm wrong here. It was PRIORITY which we agreed to drop.
It's worth noting however, at the same time PRIORITY removal was discussed it was acknowledged that SECTION was questionable. Logical grouping of recipes/packages is a useful thing but coming up with groupings that are meaningful in all contexts is hard :(
Quoted 5 lines
Glad to know my recollection isn't wildly off the mark.
I noticed that there are similar, yet different, SECTION values being used. If we opt to keep SECTION I wonder if we should try and standardise/sanitise it?
Quoted 7 lines
If there is standardised SECTION variable why not use recipes-${SECTION}/foo_1.0.bb as we already have couple of recipe-* directories and it's sometimes hard to decide to which directory something belongs.
Or other way around, standartise recipes-* directories and let bitbake decide SECTION from it (like it does for PV and PN).
Brilliant.
--
Darren
Quoted 27 lines
Cheers,
Quoted 17 lines
Debian's sections seem like reasonable inspiration?
http://packages.debian.org/stable/I think SECTION is useful for tools like Hob and Narcissus, so I'm in favour of keeping them.
Cheers,
JoshuaSignature · 7 lines
Joshua Lock Yocto Project "Johannes factotum" Intel Open Source Technology Centre _______________________________________________ yocto mailing list [email protected] https://lists.yoctoproject.org/listinfo/yocto_______________________________________________
yocto mailing list
[email protected]
https://lists.yoctoproject.org/listinfo/yocto
Signature · 3 lines
Darren Hart Intel Open Source Technology Center Yocto Project - Linux Kernel
Re: [pull-sys940x 2/4] ranpwd: Add ranpwd recipe
Quoted 19 lines · Darren Hart
Quoted 16 lines · Martin Jansa
Quoted 14 lines · Joshua Lock
Quoted 7 lines · Paul Eggleton
Quoted 1 line · On Thursday 02 February 2012 13:11:19 Joshua Lock wrote:
Apologies. I'm wrong here. It was PRIORITY which we agreed to drop.
It's worth noting however, at the same time PRIORITY removal was discussed it was acknowledged that SECTION was questionable. Logical grouping of recipes/packages is a useful thing but coming up with groupings that are meaningful in all contexts is hard :(
Glad to know my recollection isn't wildly off the mark.
I noticed that there are similar, yet different, SECTION values being used. If we opt to keep SECTION I wonder if we should try and standardise/sanitise it?
Quoted 7 lines
Quoted 7 lines
If there is standardised SECTION variable why not use recipes-${SECTION}/foo_1.0.bb as we already have couple of recipe-* directories and it's sometimes hard to decide to which directory something belongs.
Or other way around, standartise recipes-* directories and let bitbake decide SECTION from it (like it does for PV and PN).
thats a good idea