From 70e34aac01bbcda1f0581679fe17697b187ce245 Mon Sep 17 00:00:00 2001 From: Kevin Mihelich Date: Wed, 9 Apr 2014 02:24:36 +0000 Subject: [PATCH] core/linux-armv7 to 3.14.0-2 --- ...tooth-allocate-static-minor-for-vhci.patch | 74 +++++++++++++++++++ core/linux-armv7/PKGBUILD | 5 +- 2 files changed, 78 insertions(+), 1 deletion(-) create mode 100644 core/linux-armv7/0006-Bluetooth-allocate-static-minor-for-vhci.patch diff --git a/core/linux-armv7/0006-Bluetooth-allocate-static-minor-for-vhci.patch b/core/linux-armv7/0006-Bluetooth-allocate-static-minor-for-vhci.patch new file mode 100644 index 000000000..26a271cf1 --- /dev/null +++ b/core/linux-armv7/0006-Bluetooth-allocate-static-minor-for-vhci.patch @@ -0,0 +1,74 @@ +From 5d77ba2d26110c678b40fd723866a17d4036de12 Mon Sep 17 00:00:00 2001 +From: Lucas De Marchi +Date: Tue, 18 Feb 2014 02:19:26 -0300 +Subject: [PATCH 1/6] Bluetooth: allocate static minor for vhci + +Commit bfacbb9 (Bluetooth: Use devname:vhci module alias for virtual HCI +driver) added the module alias to hci_vhci module so it's possible to +create the /dev/vhci node. However creating an alias without +specifying the minor doesn't allow us to create the node ahead, +triggerring module auto-load when it's first accessed. + +Starting with depmod from kmod 16 we started to warn if there's a +devname alias without specifying the major and minor. + +Let's do the same done for uhid, kvm, fuse and others, specifying a +fixed minor. In systems with systemd as the init the following will +happen: on early boot systemd will call "kmod static-nodes" to read +/lib/modules/$(uname -r)/modules.devname and then create the nodes. When +first accessed these "dead" nodes will trigger the module loading. + +Signed-off-by: Lucas De Marchi +Acked-by: Greg Kroah-Hartman +Signed-off-by: Marcel Holtmann +--- + Documentation/devices.txt | 1 + + drivers/bluetooth/hci_vhci.c | 3 ++- + include/linux/miscdevice.h | 1 + + 3 files changed, 4 insertions(+), 1 deletion(-) + +diff --git a/Documentation/devices.txt b/Documentation/devices.txt +index 10378cc..04356f5 100644 +--- a/Documentation/devices.txt ++++ b/Documentation/devices.txt +@@ -353,6 +353,7 @@ Your cooperation is appreciated. + 133 = /dev/exttrp External device trap + 134 = /dev/apm_bios Advanced Power Management BIOS + 135 = /dev/rtc Real Time Clock ++ 137 = /dev/vhci Bluetooth virtual HCI driver + 139 = /dev/openprom SPARC OpenBoot PROM + 140 = /dev/relay8 Berkshire Products Octal relay card + 141 = /dev/relay16 Berkshire Products ISO-16 relay card +diff --git a/drivers/bluetooth/hci_vhci.c b/drivers/bluetooth/hci_vhci.c +index 1ef6990..add1c6a 100644 +--- a/drivers/bluetooth/hci_vhci.c ++++ b/drivers/bluetooth/hci_vhci.c +@@ -359,7 +359,7 @@ static const struct file_operations vhci_fops = { + static struct miscdevice vhci_miscdev= { + .name = "vhci", + .fops = &vhci_fops, +- .minor = MISC_DYNAMIC_MINOR, ++ .minor = VHCI_MINOR, + }; + + static int __init vhci_init(void) +@@ -385,3 +385,4 @@ MODULE_DESCRIPTION("Bluetooth virtual HCI driver ver " VERSION); + MODULE_VERSION(VERSION); + MODULE_LICENSE("GPL"); + MODULE_ALIAS("devname:vhci"); ++MODULE_ALIAS_MISCDEV(VHCI_MINOR); +diff --git a/include/linux/miscdevice.h b/include/linux/miscdevice.h +index 3737f72..7bb6148 100644 +--- a/include/linux/miscdevice.h ++++ b/include/linux/miscdevice.h +@@ -23,6 +23,7 @@ + #define TEMP_MINOR 131 /* Temperature Sensor */ + #define RTC_MINOR 135 + #define EFI_RTC_MINOR 136 /* EFI Time services */ ++#define VHCI_MINOR 137 + #define SUN_OPENPROM_MINOR 139 + #define DMAPI_MINOR 140 /* DMAPI */ + #define NVRAM_MINOR 144 +-- +1.9.1 + diff --git a/core/linux-armv7/PKGBUILD b/core/linux-armv7/PKGBUILD index 93fb458c3..44bbfa1ab 100644 --- a/core/linux-armv7/PKGBUILD +++ b/core/linux-armv7/PKGBUILD @@ -8,7 +8,7 @@ _srcname=linux-3.14 _kernelname=${pkgbase#linux} _desc="ARMv7 multi-platform" pkgver=3.14.0 -pkgrel=1 +pkgrel=2 rcnrel=armv7-x3 arch=('armv7h') url="http://www.kernel.org/" @@ -24,6 +24,7 @@ source=("http://www.kernel.org/pub/linux/kernel/v3.x/${_srcname}.tar.xz" '0003-smileplug-devicetree.patch' '0004-emmc-timing-fix.patch' '0005-squelch-rt2800usb-messages.patch' + '0006-Bluetooth-allocate-static-minor-for-vhci.patch' 'mvneta.patch::https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/patch/drivers/net/ethernet/marvell/mvneta.c?id=e3a8786c10e75903f1269474e21fe8cb49c3a670' 'config') md5sums=('b621207b3f6ecbb67db18b13258f8ea8' @@ -34,6 +35,7 @@ md5sums=('b621207b3f6ecbb67db18b13258f8ea8' '0a0c5691aea2503cd0c503cb50244f48' '911bffe9c261ca5b91dd0a083d99e81f' '8609ac79ba99320692c50481aabc6ed2' + '1b276abe16d14e133f3f28d9c9e6bd68' '1986ba8f945dbf4f9a3c94761b713336' 'e627fcb463807e40986dbe284b50048d') @@ -56,6 +58,7 @@ prepare() { patch -p1 -i ../0003-smileplug-devicetree.patch patch -p1 -i ../0004-emmc-timing-fix.patch patch -p1 -i ../0005-squelch-rt2800usb-messages.patch + patch -p1 -i ../0006-Bluetooth-allocate-static-minor-for-vhci.patch # AUFS patches cp -ru "${srcdir}/aufs3-standalone/Documentation" .