[ibm-acpi-devel] [ltp] thinkpad-acpi release 0.14-20070701 available in sf.net

Henrique de Moraes Holschuh linux-thinkpad@linux-thinkpad.org
Tue, 3 Jul 2007 21:59:36 -0300


--cWoXeonUoKmBZSoM
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline

On Tue, 03 Jul 2007, Henrique de Moraes Holschuh wrote:
> On Tue, 03 Jul 2007, Jon Escombe wrote:
> > On my T60, I don't get a hotkey_radio_sw sysfs entry for the radio switch.
> > I do see the "radio switch found; radios are enabled" message though. Any
> > hints for debugging this?
> 
> Please send me a ls -lR of /sys/bus/platform/devices/thinkpad-acpi/
> directory.  I must have somehow screwed up adding the attribute to sysfs.
> Argh.

Found the bug: I broke the attribute registering while cleaning up the
patches :-(

I will release a fixed version of thinkpad-acpi soon.  In the meanwhile, the
attached patch should fix it.

-- 
  "One disk to rule them all, One disk to find them. One disk to bring
  them all and in the darkness grind them. In the Land of Redmond
  where the shadows lie." -- The Silicon Valley Tarot
  Henrique Holschuh

--cWoXeonUoKmBZSoM
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment; filename="fix-wlsw-reg.patch"

diff --git a/drivers/misc/thinkpad_acpi.c b/drivers/misc/thinkpad_acpi.c
index a52d218..62a2759 100644
--- a/drivers/misc/thinkpad_acpi.c
+++ b/drivers/misc/thinkpad_acpi.c
@@ -932,10 +932,6 @@ static int __init hotkey_init(struct ibm_init_struct *iibm)
 				hotkey_mask_attributes,
 				ARRAY_SIZE(hotkey_mask_attributes));
 		}
-		if (!res)
-			res = register_attr_set_with_sysfs(
-					hotkey_dev_attributes,
-					&tpacpi_pdev->dev.kobj);
 
 		/* Not all thinkpads have a hardware radio switch */
 		if (!res && acpi_evalf(hkey_handle, &status, "WLSW", "qd")) {
@@ -947,6 +943,10 @@ static int __init hotkey_init(struct ibm_init_struct *iibm)
 					&dev_attr_hotkey_radio_sw.attr);
 		}
 
+		if (!res)
+			res = register_attr_set_with_sysfs(
+					hotkey_dev_attributes,
+					&tpacpi_pdev->dev.kobj);
 		if (res)
 			return res;
 	}

--cWoXeonUoKmBZSoM--