meta-google: gbmc-bridge: Only target bridge USB devices

This will allow us to have non-bridge USB devices on the system.

Change-Id: I5102fa8e1039013d9629b889350d46c6acf5cde3
Signed-off-by: William A. Kennington III <wak@google.com>
diff --git a/meta-google/recipes-google/networking/gbmc-bridge/+-bmc-gbmcbrusb.network b/meta-google/recipes-google/networking/gbmc-bridge/+-bmc-gbmcbrusb.network
index e403334..ea923eb 100644
--- a/meta-google/recipes-google/networking/gbmc-bridge/+-bmc-gbmcbrusb.network
+++ b/meta-google/recipes-google/networking/gbmc-bridge/+-bmc-gbmcbrusb.network
@@ -1,5 +1,5 @@
 [Match]
-Name=usb*
+Property=ID_BUS=usb ID_VENDOR_ID=18d1 ID_MODEL_ID=0232
 [Network]
 Bridge=gbmcbr
 [Bridge]
diff --git a/meta-google/recipes-google/networking/google-usb-network/usb_network.sh b/meta-google/recipes-google/networking/google-usb-network/usb_network.sh
index 06707c4..ede4482 100755
--- a/meta-google/recipes-google/networking/google-usb-network/usb_network.sh
+++ b/meta-google/recipes-google/networking/google-usb-network/usb_network.sh
@@ -43,6 +43,20 @@
 }
 
 gadget_start() {
+    # Add the gbmcbr configuration if this is a relevant device
+    if (( ID_VENDOR == 0x18d1 && ID_PRODUCT == 0x22b )); then
+        mkdir -p /run/systemd/network
+        cat >/run/systemd/network/+-bmc-"${IFACE_NAME}".network <<EOF
+[Match]
+Name=${IFACE_NAME}
+[Network]
+Bridge=gbmcbr
+[Bridge]
+Cost=85
+EOF
+        networkctl reload || true
+    fi
+
     local gadget_dir="${CONFIGFS_HOME}/usb_gadget/${GADGET_DIR_NAME}"
     mkdir -p "${gadget_dir}"
     echo ${ID_VENDOR} > "${gadget_dir}/idVendor"
@@ -83,6 +97,9 @@
     rm -rf ${gadget_dir}/strings/0x409
     rm -rf ${gadget_dir}/functions/eem.${IFACE_NAME}
     rm -rf ${gadget_dir}
+
+    rm -f /run/systemd/network/+-bmc-"${IFACE_NAME}".network
+    networkctl reload
 }
 
 opts=$(getopt \