[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-hardware-devel
Subject:    [Kde-hardware-devel] [PATCH] Add docking station support to Solid
From:       Will Stephenson <wstephenson () kde ! org>
Date:       2009-11-21 8:24:21
Message-ID: 200911210924.23452.wstephenson () kde ! org
[Download RAW message or body]

The attached patch adds support for laptop docking stations to Solid.  Knowing 
when the machine is docked will allow us to modify powersaving policy while 
docked, eg don't lock the screen if lid closed while docked, and help fix 
https://bugs.kde.org/show_bug.cgi?id=185460.

The missing part is how to instantiate a DockStation device in the hal 
manager, because in hal, dockstation isn't a capability and we use 
FindByCapability only.

Instead it seems to only be defined by the presence of an interface it 
supports.  I attach an extract from lshal to demonstrate this.  Solid-hal 
expert(s): is there an obvious way to deal with this?  Holger, how did you 
handle this in GNOME?

Will

["solid_dockstation.diff.zip" (application/zip)]
["lshal-dock" (text/plain)]

udi = '/org/freedesktop/Hal/devices/platform_dock_1'
  info.docked = false  (bool)
  info.interfaces = {'org.freedesktop.Hal.Device.DockStation'} (string list)
  info.parent = '/org/freedesktop/Hal/devices/computer'  (string)
  info.product = 'Platform Device (dock.1)'  (string)
  info.subsystem = 'platform'  (string)
  info.udi = '/org/freedesktop/Hal/devices/platform_dock_1'  (string)
  linux.hotplug_type = 2  (0x2)  (int)
  linux.subsystem = 'platform'  (string)
  linux.sysfs_path = '/sys/devices/platform/dock.1'  (string)
  org.freedesktop.Hal.Device.DockStation.method_argnames = {''} (string list)
  org.freedesktop.Hal.Device.DockStation.method_execpaths = {'hal-dockstation-undock'} (string list)
  org.freedesktop.Hal.Device.DockStation.method_names = {'Undock'} (string list)
  org.freedesktop.Hal.Device.DockStation.method_signatures = {''} (string list)
  platform.id = 'dock.1'  (string)

udi = '/org/freedesktop/Hal/devices/platform_dock_0'
  info.docked = true  (bool)
  info.interfaces = {'org.freedesktop.Hal.Device.DockStation'} (string list)
  info.parent = '/org/freedesktop/Hal/devices/computer'  (string)
  info.product = 'Platform Device (dock.0)'  (string)
  info.subsystem = 'platform'  (string)
  info.udi = '/org/freedesktop/Hal/devices/platform_dock_0'  (string)
  linux.hotplug_type = 2  (0x2)  (int)
  linux.subsystem = 'platform'  (string)
  linux.sysfs_path = '/sys/devices/platform/dock.0'  (string)
  org.freedesktop.Hal.Device.DockStation.method_argnames = {''} (string list)
  org.freedesktop.Hal.Device.DockStation.method_execpaths = {'hal-dockstation-undock'} (string list)
  org.freedesktop.Hal.Device.DockStation.method_names = {'Undock'} (string list)
  org.freedesktop.Hal.Device.DockStation.method_signatures = {''} (string list)
  platform.id = 'dock.0'  (string)




_______________________________________________
Kde-hardware-devel mailing list
Kde-hardware-devel@kde.org
https://mail.kde.org/mailman/listinfo/kde-hardware-devel


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic