[arch-commits] Commit in hal/trunk (7 files)
Jan de Groot
jgc at archlinux.org
Sun Nov 8 21:59:31 UTC 2009
Date: Sunday, November 8, 2009 @ 16:59:30
Author: jgc
Revision: 58526
upgpkg: hal 0.5.13-3
Disable ACL management
Disable consolekit support
Disable policykit suport
Switch to at_console rules instead of using policykit
Add some patched from fedora
revert ssb removal, new versions of networkmanager have fixes for this
Added:
hal/trunk/hal-HDAPS-blacklist.patch
hal/trunk/hal-KVM-evdev.patch
hal/trunk/hal-remove-dell-killswitch.patch
hal/trunk/hal-use-at-console.patch
hal/trunk/hal-xen-unignore-axes.patch
Modified:
hal/trunk/PKGBUILD
Deleted:
hal/trunk/revert-ssb.patch
----------------------------------+
PKGBUILD | 28 +++--
hal-HDAPS-blacklist.patch | 30 +++++
hal-KVM-evdev.patch | 36 ++++++
hal-remove-dell-killswitch.patch | 201 +++++++++++++++++++++++++++++++++++++
hal-use-at-console.patch | 45 ++++++++
hal-xen-unignore-axes.patch | 39 +++++++
revert-ssb.patch | 86 ---------------
7 files changed, 371 insertions(+), 94 deletions(-)
Modified: PKGBUILD
===================================================================
--- PKGBUILD 2009-11-08 21:52:28 UTC (rev 58525)
+++ PKGBUILD 2009-11-08 21:59:30 UTC (rev 58526)
@@ -4,12 +4,12 @@
pkgname=hal
pkgver=0.5.13
-pkgrel=2
+pkgrel=3
pkgdesc="Hardware Abstraction Layer"
arch=(i686 x86_64)
license=('GPL' 'custom')
url="http://www.freedesktop.org/wiki/Software/hal"
-depends=('dbus-glib>=0.80' 'libusb>=0.1.12' 'udev>=141' 'filesystem>=0.7.1-5' 'hal-info>=0.20090716' 'eject' 'dmidecode' 'pciutils>=3.0.2' 'usbutils>=0.73-5' 'pm-utils>=1.2.5' 'policykit>=0.9-6' 'consolekit>=0.3.0' 'util-linux-ng>=2.16')
+depends=('dbus-glib>=0.82' 'libusb>=0.1.12' 'udev>=146' 'filesystem>=0.7.1-5' 'hal-info>=0.20090716' 'eject' 'dmidecode' 'pciutils>=3.0.2' 'usbutils>=0.73-5' 'pm-utils>=1.2.5' 'consolekit>=0.4.1' 'util-linux-ng>=2.16')
makedepends=('pkgconfig' 'gperf')
options=('!libtool' '!makeflags')
install=hal.install
@@ -18,26 +18,38 @@
cryptsetup_location.patch
hal-0.5.9-hide-diagnostic.patch
mdraid-segfault.patch
- revert-ssb.patch)
+ hal-remove-dell-killswitch.patch
+ hal-KVM-evdev.patch
+ hal-HDAPS-blacklist.patch
+ hal-xen-unignore-axes.patch
+ hal-use-at-console.patch)
md5sums=('46ecc5d2e5bd964fb78099688f01bb6a'
'277e96ac130d7bfce0b30f0b80db8782'
'c688a3c6574699365926f4fef7441545'
'4d4b6801a1cedca22b8bdd9db73b16fb'
'3732682a5fe3b2b5279ced988909f554'
- 'a802697cfff3f30968f9d929f814c518')
+ '6d87c3e63184ae3a69caafc846f538a3'
+ '6507e5091ee2d11a87ae738a8e2caecb'
+ '1171c2d83b76059f2da7a3538e08fa4e'
+ '52bd305299aa22ae07f1a862c22d30fa'
+ '3f11234fb5e5044fbfc5199ec65b182c')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
patch -Np1 -i "${srcdir}/cryptsetup_location.patch" || return 1
patch -Np1 -i "${srcdir}/hal-0.5.9-hide-diagnostic.patch" || return 1
patch -Np1 -i "${srcdir}/mdraid-segfault.patch" || return 1
- patch -Np1 -R -i "${srcdir}/revert-ssb.patch" || return 1
+ patch -Np1 -i "${srcdir}/hal-remove-dell-killswitch.patch" || return 1
+ patch -Np1 -i "${srcdir}/hal-KVM-evdev.patch" || return 1
+ patch -Np1 -i "${srcdir}/hal-HDAPS-blacklist.patch" || return 1
+ patch -Np1 -i "${srcdir}/hal-xen-unignore-axes.patch" || return 1
+ patch -Np1 -i "${srcdir}/hal-use-at-console.patch" || return 1
./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var \
--libexecdir=/usr/lib/hal --with-udev-prefix=/etc \
- --enable-static=no --enable-acpi-ibm --enable-acpi-toshiba \
- --disable-docbook-docs --enable-console-kit \
- --enable-policy-kit --enable-acl-management \
+ --enable-static=no --disable-acpi-ibm \
+ --disable-docbook-docs --disable-console-kit \
+ --disable-policy-kit --disable-acl-management \
--enable-umount-helper --disable-smbios \
--with-hal-user=hal --with-hal-group=hal \
--with-pid-file=/var/run/hald.pid || return 1
Added: hal-HDAPS-blacklist.patch
===================================================================
--- hal-HDAPS-blacklist.patch (rev 0)
+++ hal-HDAPS-blacklist.patch 2009-11-08 21:59:30 UTC (rev 58526)
@@ -0,0 +1,30 @@
+From e1f85fe0cdfa7e4d4ce7a811d0b0c90bf38fba0c Mon Sep 17 00:00:00 2001
+From: Peter Hutterer <peter.hutterer at who-t.net>
+Date: Thu, 25 Jun 2009 09:47:27 +1000
+Subject: [PATCH] Blacklist HDAPS accelerometer device from being picked up in X.
+
+This device posts accelerometer data through ABS_X/ABS_Y, making X unusable
+if it's controlling the pointer.
+---
+ fdi/policy/10osvendor/10-x11-input.fdi | 6 ++++++
+ 1 files changed, 6 insertions(+), 0 deletions(-)
+
+diff --git a/fdi/policy/10osvendor/10-x11-input.fdi b/fdi/policy/10osvendor/10-x11-input.fdi
+index a342421..89ba672 100644
+--- a/fdi/policy/10osvendor/10-x11-input.fdi
++++ b/fdi/policy/10osvendor/10-x11-input.fdi
+@@ -38,5 +38,11 @@
+ <merge key="input.x11_driver" type="string">evdev</merge>
+ </match>
+ </match>
++
++ <!-- http://bugs.freedesktop.org/show_bug.cgi?id=22442
++ Posts accel data through ABS_X/ABS_Y, makes X unusable -->
++ <match key="info.product" contains="ThinkPad HDAPS accelerometer data">
++ <remove key="input.x11_driver" />
++ </match>
+ </device>
+ </deviceinfo>
+--
+1.6.3.rc1.2.g0164.dirty
+
Added: hal-KVM-evdev.patch
===================================================================
--- hal-KVM-evdev.patch (rev 0)
+++ hal-KVM-evdev.patch 2009-11-08 21:59:30 UTC (rev 58526)
@@ -0,0 +1,36 @@
+From 7618498eec840cb26474dc47821e083957772706 Mon Sep 17 00:00:00 2001
+From: Peter Hutterer <peter.hutterer at who-t.net>
+Date: Fri, 20 Mar 2009 14:37:24 +1000
+Subject: [PATCH] Add x11_driver for American Megatrends KVM.
+
+This device exposes only ABS_X, ABS_Y and buttons. It gets input.joystick
+assigned but not input.mouse, hence the default evdev mapping doesn't pick up
+on it.
+
+Red Hat Bug 484776 <https://bugzilla.redhat.com/show_bug.cgi?id=484776>
+
+Signed-off-by: Peter Hutterer <peter.hutterer at who-t.net>
+---
+ fdi/policy/10osvendor/10-x11-input.fdi | 6 ++++++
+ 1 files changed, 6 insertions(+), 0 deletions(-)
+
+diff --git a/fdi/policy/10osvendor/10-x11-input.fdi b/fdi/policy/10osvendor/10-x11-input.fdi
+index 769f75b..eb9767e 100644
+--- a/fdi/policy/10osvendor/10-x11-input.fdi
++++ b/fdi/policy/10osvendor/10-x11-input.fdi
+@@ -2,6 +2,12 @@
+ <deviceinfo version="0.2">
+ <device>
+
++ <!-- This KVMS has abs x/y and buttons. It only has inputInfo.joystick
++ set by hal and doesn't get picked up by default -->
++ <match key="input.product" contains="American Megatrends Inc. Virtual Keyboard and Mouse">
++ <merge key="input.x11_driver" type="string">evdev</merge>
++ </match>
++
+ <!-- KVM emulates a USB graphics tablet which works in absolute coordinate mode -->
+ <match key="input.product" contains="QEMU USB Tablet">
+ <merge key="input.x11_driver" type="string">evdev</merge>
+--
+1.6.0.6
+
Added: hal-remove-dell-killswitch.patch
===================================================================
--- hal-remove-dell-killswitch.patch (rev 0)
+++ hal-remove-dell-killswitch.patch 2009-11-08 21:59:30 UTC (rev 58526)
@@ -0,0 +1,201 @@
+diff -upr hal-0.5.12/tools/linux/hal-system-killswitch-get-power-linux hal-0.5.12.new/tools/linux/hal-system-killswitch-get-power-linux
+--- hal-0.5.12/tools/linux/hal-system-killswitch-get-power-linux 2008-08-22 07:34:47.000000000 +0100
++++ hal-0.5.12.new/tools/linux/hal-system-killswitch-get-power-linux 2009-03-03 10:45:20.000000000 +0000
+@@ -8,11 +8,6 @@
+ # the Free Software Foundation; either version 2 of the License, or
+ # (at your option) any later version.
+
+-DELL_WCTL=/usr/bin/dellWirelessCtl
+-if [ -x "/usr/sbin/dellWirelessCtl" ]; then
+- DELL_WCTL=/usr/sbin/dellWirelessCtl
+-fi
+-
+ if [ "$HAL_PROP_KILLSWITCH_TYPE" = "bluetooth" ]; then
+ if [ "$HAL_PROP_KILLSWITCH_ACCESS_METHOD" = "sonypic" ]; then
+ value="`hal-system-sonypic getbluetooth`"
+@@ -22,25 +17,6 @@ if [ "$HAL_PROP_KILLSWITCH_TYPE" = "blue
+ exit 1
+ fi
+ exit ${value}
+- elif [ "$HAL_PROP_KILLSWITCH_ACCESS_METHOD" = "dell" ]; then
+- if [ -x "$DELL_WCTL" ]; then
+- # TODO: write our own binary that links with libsmbios?
+- $DELL_WCTL --st_bt
+- value=$?
+- if [ "$value" = "0" ]; then
+- exit 1
+- elif [ "$value" = "1" ]; then
+- exit 0
+- else
+- echo "org.freedesktop.Hal.Device.KillSwitch.NotSupported" >&2
+- echo "dellWirelessCtl returned $value" >&2
+- exit 1
+- fi
+- else
+- echo "org.freedesktop.Hal.Device.KillSwitch.NotSupported" >&2
+- echo "dellWirelessCtl ($DELL_WCTL) not available or executable" >&2
+- exit 1
+- fi
+ elif [ "$HAL_PROP_KILLSWITCH_ACCESS_METHOD" = thinkpad -a -r "$HAL_PROP_LINUX_SYSFS_PATH" ]; then
+ read value < $HAL_PROP_LINUX_SYSFS_PATH 2> /dev/null
+ if [ $? -eq 0 ]; then
+@@ -55,56 +31,6 @@ if [ "$HAL_PROP_KILLSWITCH_TYPE" = "blue
+ echo "Access type not supported" >&2
+ exit 1
+ fi
+-elif [ "$HAL_PROP_KILLSWITCH_TYPE" = "wlan" ]; then
+- if [ "$HAL_PROP_KILLSWITCH_ACCESS_METHOD" = "dell" ]; then
+- if [ -x "$DELL_WCTL" ]; then
+- # TODO: write our own binary that links with libsmbios?
+- $DELL_WCTL --st_wlan
+- value=$?
+- if [ "$value" = "0" ]; then
+- exit 1
+- elif [ "$value" = "1" ]; then
+- exit 0
+- else
+- echo "org.freedesktop.Hal.Device.KillSwitch.NotSupported" >&2
+- echo "dellWirelessCtl returned $value" >&2
+- exit 1
+- fi
+- else
+- echo "org.freedesktop.Hal.Device.KillSwitch.NotSupported" >&2
+- echo "dellWirelessCtl ($DELL_WCTL) not available or executable" >&2
+- exit 1
+- fi
+- else
+- echo "org.freedesktop.Hal.Device.KillSwitch.NotSupported" >&2
+- echo "Access type not supported" >&2
+- exit 1
+- fi
+-elif [ "$HAL_PROP_KILLSWITCH_TYPE" = "wwan" ]; then
+- if [ "$HAL_PROP_KILLSWITCH_ACCESS_METHOD" = "dell" ]; then
+- if [ -x "$DELL_WCTL" ]; then
+- # TODO: write our own binary that links with libsmbios?
+- $DELL_WCTL --st_wwan
+- value=$?
+- if [ "$value" = "0" ]; then
+- exit 1
+- elif [ "$value" = "1" ]; then
+- exit 0
+- else
+- echo "org.freedesktop.Hal.Device.KillSwitch.NotSupported" >&2
+- echo "dellWirelessCtl returned $value" >&2
+- exit 1
+- fi
+- else
+- echo "org.freedesktop.Hal.Device.KillSwitch.NotSupported" >&2
+- echo "dellWirelessCtl ($DELL_WCTL) not available or executable" >&2
+- exit 1
+- fi
+- else
+- echo "org.freedesktop.Hal.Device.KillSwitch.NotSupported" >&2
+- echo "Access type not supported" >&2
+- exit 1
+- fi
+ else
+ echo "org.freedesktop.Hal.Device.KillSwitch.NotSupported" >&2
+ echo "Killswitch type not supported" >&2
+diff -upr hal-0.5.12/tools/linux/hal-system-killswitch-set-power-linux hal-0.5.12.new/tools/linux/hal-system-killswitch-set-power-linux
+--- hal-0.5.12/tools/linux/hal-system-killswitch-set-power-linux 2008-10-24 09:45:54.000000000 +0100
++++ hal-0.5.12.new/tools/linux/hal-system-killswitch-set-power-linux 2009-03-03 10:44:49.000000000 +0000
+@@ -8,11 +8,6 @@
+ # the Free Software Foundation; either version 2 of the License, or
+ # (at your option) any later version.
+
+-DELL_WCTL=/usr/bin/dellWirelessCtl
+-if [ -x "/usr/sbin/dellWirelessCtl" ]; then
+- DELL_WCTL=/usr/sbin/dellWirelessCtl
+-fi
+-
+ if [ "$HAL_PROP_KILLSWITCH_TYPE" = "bluetooth" ]; then
+ if [ "$HAL_PROP_KILLSWITCH_ACCESS_METHOD" = "sonypic" ]; then
+ hal-system-sonypic setbluetooth $value
+@@ -23,26 +18,6 @@ if [ "$HAL_PROP_KILLSWITCH_TYPE" = "blue
+ exit 1
+ fi
+ exit 0
+- elif [ "$HAL_PROP_KILLSWITCH_ACCESS_METHOD" = "dell" ]; then
+- if [ -x "$DELL_WCTL" ]; then
+- # TODO: write our own binary that links with libsmbios?
+- if [ "$value" = "true" ]; then
+- $DELL_WCTL --bt 1
+- ret=$?
+- else
+- $DELL_WCTL --bt 0
+- ret=$?
+- fi
+- if [ "$ret" != "0" ]; then
+- echo "org.freedesktop.Hal.Device.KillSwitch.NotSupported" >&2
+- echo "dellWirelessCtl returned $ret" >&2
+- exit 1
+- fi
+- else
+- echo "org.freedesktop.Hal.Device.KillSwitch.NotSupported" >&2
+- echo "dellWirelessCtl ($DELL_WCTL) not available or executable" >&2
+- exit 1
+- fi
+ elif [ "$HAL_PROP_KILLSWITCH_ACCESS_METHOD" = thinkpad -a -w "$HAL_PROP_LINUX_SYSFS_PATH" ]; then
+ if [ "$value" = "true" ]; then
+ bit=1;
+@@ -61,60 +36,6 @@ if [ "$HAL_PROP_KILLSWITCH_TYPE" = "blue
+ echo "Access type not supported" >&2
+ exit 1
+ fi
+-elif [ "$HAL_PROP_KILLSWITCH_TYPE" = "wlan" ]; then
+- if [ "$HAL_PROP_KILLSWITCH_ACCESS_METHOD" = "dell" ]; then
+- if [ -x "$DELL_WCTL" ]; then
+- # As a side effect we disable the physical kill switch
+- # TODO: write our own binary that links with libsmbios?
+- if [ "$value" = "true" ]; then
+- $DELL_WCTL --sw_wlan 0 --wlan 1
+- ret=$?
+- else
+- $DELL_WCTL --sw_wlan 0 --wlan 0
+- ret=$?
+- fi
+- if [ "$ret" != "0" ]; then
+- echo "org.freedesktop.Hal.Device.KillSwitch.NotSupported" >&2
+- echo "dellWirelessCtl returned $ret" >&2
+- exit 1
+- fi
+- else
+- echo "org.freedesktop.Hal.Device.KillSwitch.NotSupported" >&2
+- echo "dellWirelessCtl ($DELL_WCTL) not available or executable" >&2
+- exit 1
+- fi
+- else
+- echo "org.freedesktop.Hal.Device.KillSwitch.NotSupported" >&2
+- echo "Access type not supported" >&2
+- exit 1
+- fi
+-elif [ "$HAL_PROP_KILLSWITCH_TYPE" = "wwan" ]; then
+- if [ "$HAL_PROP_KILLSWITCH_ACCESS_METHOD" = "dell" ]; then
+- if [ -x "$DELL_WCTL" ]; then
+- # As a side effect we disable the physical kill switch
+- # TODO: write our own binary that links with libsmbios?
+- if [ "$value" = "true" ]; then
+- $DELL_WCTL --sw_wwan 0 --wwan 1
+- ret=$?
+- else
+- $DELL_WCTL --sw_wwan 0 --wwan 0
+- ret=$?
+- fi
+- if [ "$ret" != "0" ]; then
+- echo "org.freedesktop.Hal.Device.KillSwitch.NotSupported" >&2
+- echo "dellWirelessCtl returned $ret" >&2
+- exit 1
+- fi
+- else
+- echo "org.freedesktop.Hal.Device.KillSwitch.NotSupported" >&2
+- echo "dellWirelessCtl ($DELL_WCTL) not available or executable" >&2
+- exit 1
+- fi
+- else
+- echo "org.freedesktop.Hal.Device.KillSwitch.NotSupported" >&2
+- echo "Access type not supported" >&2
+- exit 1
+- fi
+ else
+ echo "org.freedesktop.Hal.Device.KillSwitch.NotSupported" >&2
+ echo "Killswitch type not supported" >&2
Added: hal-use-at-console.patch
===================================================================
--- hal-use-at-console.patch (rev 0)
+++ hal-use-at-console.patch 2009-11-08 21:59:30 UTC (rev 58526)
@@ -0,0 +1,45 @@
+diff -up hal-0.5.13/hal.conf.in.drop-polkit hal-0.5.13/hal.conf.in
+--- hal-0.5.13/hal.conf.in.drop-polkit 2009-02-04 17:07:23.000000000 -0500
++++ hal-0.5.13/hal.conf.in 2009-07-29 23:15:16.866766074 -0400
+@@ -25,7 +25,41 @@
+ send_interface="org.freedesktop.Hal.Device"/>
+ <allow send_destination="org.freedesktop.Hal"
+ send_interface="org.freedesktop.Hal.Manager"/>
++ </policy>
++
++ <!-- Only allow users at the local console to manipulate devices -->
++ <policy at_console="true">
++ <allow send_destination="org.freedesktop.Hal"
++ send_interface="org.freedesktop.Hal.Device.CPUFreq"/>
++ <allow send_destination="org.freedesktop.Hal"
++ send_interface="org.freedesktop.Hal.Device.DockStation"/>
++ <allow send_destination="org.freedesktop.Hal"
++ send_interface="org.freedesktop.Hal.Device.KillSwitch"/>
++ <allow send_destination="org.freedesktop.Hal"
++ send_interface="org.freedesktop.Hal.Device.KeyboardBacklight"/>
++ <allow send_destination="org.freedesktop.Hal"
++ send_interface="org.freedesktop.Hal.Device.LaptopPanel"/>
++ <allow send_destination="org.freedesktop.Hal"
++ send_interface="org.freedesktop.Hal.Device.Leds"/>
++ <allow send_destination="org.freedesktop.Hal"
++ send_interface="org.freedesktop.Hal.Device.LightSensor"/>
++ <allow send_destination="org.freedesktop.Hal"
++ send_interface="org.freedesktop.Hal.Device.Storage"/>
++ <allow send_destination="org.freedesktop.Hal"
++ send_interface="org.freedesktop.Hal.Device.Storage.Removable"/>
++ <allow send_destination="org.freedesktop.Hal"
++ send_interface="org.freedesktop.Hal.Device.SystemPowerManagement"/>
++ <allow send_destination="org.freedesktop.Hal"
++ send_interface="org.freedesktop.Hal.Device.Volume"/>
++ <allow send_destination="org.freedesktop.Hal"
++ send_interface="org.freedesktop.Hal.Device.Volume.Crypto"/>
++ <allow send_destination="org.freedesktop.Hal"
++ send_interface="org.freedesktop.Hal.Device.WakeOnLan"/>
++
++ </policy>
+
++ <!-- well,...and root too -->
++ <policy user="root">
+ <allow send_destination="org.freedesktop.Hal"
+ send_interface="org.freedesktop.Hal.Device.CPUFreq"/>
+ <allow send_destination="org.freedesktop.Hal"
Added: hal-xen-unignore-axes.patch
===================================================================
--- hal-xen-unignore-axes.patch (rev 0)
+++ hal-xen-unignore-axes.patch 2009-11-08 21:59:30 UTC (rev 58526)
@@ -0,0 +1,39 @@
+From e48f59d2b9bcb43ea8a7b8c884dcb73c8f65b170 Mon Sep 17 00:00:00 2001
+From: Peter Hutterer <peter.hutterer at who-t.net>
+Date: Mon, 19 Oct 2009 14:27:20 +1000
+Subject: [PATCH] Un-ignore absolute axes for the Xen Virtual Pointer.
+
+The evdev-internal axis type picking fails for the Xen Virtual Pointer as it
+exposes both relative and absolute axes. Evdev picks the relative axes by
+default, leading to a immovable pointer if the Xen backend only sends
+absolute coordinates.
+
+Explicitly tell evdev to not ignore the absolute axes.
+
+https://bugzilla.redhat.com/show_bug.cgi?id=523914
+
+Signed-off-by: Peter Hutterer <peter.hutterer at who-t.net>
+---
+ fdi/policy/10osvendor/10-x11-input.fdi | 7 +++++++
+ 1 files changed, 7 insertions(+), 0 deletions(-)
+
+diff --git a/fdi/policy/10osvendor/10-x11-input.fdi b/fdi/policy/10osvendor/10-x11-input.fdi
+index 89ba672..752c4ab 100644
+--- a/fdi/policy/10osvendor/10-x11-input.fdi
++++ b/fdi/policy/10osvendor/10-x11-input.fdi
+@@ -44,5 +44,12 @@
+ <match key="info.product" contains="ThinkPad HDAPS accelerometer data">
+ <remove key="input.x11_driver" />
+ </match>
++
++ <!-- https://bugzilla.redhat.com/show_bug.cgi?id=523914
++ Mouse does not move in PV Xen guest -->
++ <match key="info.product" contains="Xen Virtual Pointer">
++ <merge key="input.x11_options.IgnoreAbsoluteAxes" type="string">false</merge>
++ <merge key="input.x11_options.IgnoreRelativeAxes" type="string">false</merge>
++ </match>
+ </device>
+ </deviceinfo>
+--
+1.6.2.5
+
Deleted: revert-ssb.patch
===================================================================
--- revert-ssb.patch 2009-11-08 21:52:28 UTC (rev 58525)
+++ revert-ssb.patch 2009-11-08 21:59:30 UTC (rev 58526)
@@ -1,86 +0,0 @@
-From 36d076bf26350e022731cb7c2c9f4e840dd25e37 Mon Sep 17 00:00:00 2001
-From: Matthew Garrett <mjg59 at srcf.ucam.org>
-Date: Wed, 15 Jul 2009 06:54:36 +0000
-Subject: add support for devices on the SSB bus
-
-This provides detection of e. g. Broadcom wifi (b43) or ethernet (b44) devices.
-
-This doesn't update the spec for the new bus, but has been used successfully
-for years, and other buses were recently committed without spec updates as
-well. With hal being phased out and in maintenance mode, that should be
-appropriate now.
-
-See thread at http://lists.freedesktop.org/archives/hal/2007-April/008080.html
----
-diff --git a/hald/linux/device.c b/hald/linux/device.c
-index 2823650..5ebde5a 100644
---- a/hald/linux/device.c
-+++ b/hald/linux/device.c
-@@ -850,6 +850,43 @@ ide_compute_udi (HalDevice *d)
- /*--------------------------------------------------------------------------------------------------------------*/
-
- static HalDevice *
-+ssb_add (const gchar *sysfs_path, const gchar *device_file, HalDevice *parent_dev, const gchar *parent_path)
-+{
-+ HalDevice *d;
-+
-+ d = hal_device_new ();
-+ hal_device_property_set_string (d, "linux.sysfs_path", sysfs_path);
-+ hal_device_property_set_string (d, "linux.sysfs_path_device", sysfs_path);
-+ hal_device_property_set_string (d, "info.bus", "ssb");
-+ if (parent_dev != NULL) {
-+ hal_device_property_set_string (d, "info.parent", hal_device_get_udi (parent_dev));
-+ } else {
-+ hal_device_property_set_string (d, "info.parent", "/org/freedesktop/Hal/devices/computer");
-+ }
-+
-+ hal_util_set_driver (d, "info.linux.driver", sysfs_path);
-+
-+ hal_device_property_set_string (d, "ssb.bus_id",
-+ hal_util_get_last_element (sysfs_path));
-+ return d;
-+}
-+
-+static gboolean
-+ssb_compute_udi (HalDevice *d)
-+{
-+ gchar udi[256];
-+
-+ hal_util_compute_udi (hald_get_gdl (), udi, sizeof (udi),
-+ "/org/freedesktop/Hal/devices/ssb_%s",
-+ hal_device_property_get_string (d, "xen.bus_id"));
-+ hal_device_set_udi (d, udi);
-+ hal_device_property_set_string (d, "info.udi", udi);
-+ return TRUE;
-+}
-+
-+/*--------------------------------------------------------------------------------------------------------------*/
-+
-+static HalDevice *
- ieee1394_add (const gchar *sysfs_path, const gchar *device_file, HalDevice *parent_dev, const gchar *parent_path)
- {
- HalDevice *d;
-@@ -4283,6 +4320,13 @@ static DevHandler dev_handler_bluetooth =
- .remove = dev_remove
- };
-
-+static DevHandler dev_handler_ssb = {
-+ .subsystem = "ssb",
-+ .add = ssb_add,
-+ .compute_udi = ssb_compute_udi,
-+ .remove = dev_remove
-+};
-+
- /* s390 specific busses */
- static DevHandler dev_handler_ccw = {
- .subsystem = "ccw",
-@@ -4683,6 +4727,7 @@ static DevHandler *dev_handlers[] = {
- &dev_handler_serial,
- &dev_handler_serio,
- &dev_handler_sound,
-+ &dev_handler_ssb,
- &dev_handler_tape,
- &dev_handler_tape390,
- /* Don't change order of usbclass and usb */
---
-cgit v0.8.2
More information about the arch-commits
mailing list