x86: Add amilo-rfkill driver for some Fujitsu-Siemens Amilo laptops
PATCH v2 1/1 x86: Add amilo-rfkill driver for some Fujitsu-Siemens Amilo laptops
An rfkill driver based on the fsaa1655g and fsam7440 drivers for Fujitsu-Siemens Amilo A1655 and M7440 models found at:
http://sourceforge.net/projects/fsaa1655g/
http://sourceforge.net/projects/fsam7440/
This adds DMI matching and replaces the procfs files with rfkill devices.
---
Changes from v1:
- Remove module parameter and call to rfkill_init_sw_state()
- Correct Martin's name in copyright banner
drivers/platform/x86/Kconfig | 7 ++ drivers/platform/x86/Makefile | 1 + drivers/platform/x86/amilo-rfkill.c | 180 +++++++++++++++++++++++++++++++++++ 3 files changed, 188 insertions(+), 0 deletions(-) create mode 100644 drivers/platform/x86/amilo-rfkill.c
drivers/platform/x86/Kconfig +7 -0
@@ -143,6 +143,13 @@ config FUJITSU_LAPTOP_DEBUG If you are not sure, say N here. +config AMILO_RFKILL + tristate "Fujitsu-Siemens Amilo rfkill support" + depends on RFKILL + ---help--- + This is a driver for enabling wifi on some Fujitsu-Siemens Amilo + laptops. + config TC1100_WMI tristate "HP Compaq TC1100 Tablet WMI Extras (EXPERIMENTAL)" depends on !X86_64
drivers/platform/x86/Makefile +1 -0
@@ -17,6 +17,7 @@ obj-$(CONFIG_ACER_WMI) += acer-wmi.o obj-$(CONFIG_ACERHDF) += acerhdf.o obj-$(CONFIG_HP_ACCEL) += hp_accel.o obj-$(CONFIG_HP_WMI) += hp-wmi.o +obj-$(CONFIG_AMILO_RFKILL) += amilo-rfkill.o obj-$(CONFIG_TC1100_WMI) += tc1100-wmi.o obj-$(CONFIG_SONY_LAPTOP) += sony-laptop.o obj-$(CONFIG_IDEAPAD_LAPTOP) += ideapad-laptop.o
drivers/platform/x86/amilo-rfkill.c new file +180 -0
180 lines not on this page · raw message
Signature · 7 lines
1.7.7.2 -- To unsubscribe from this list: send the line "unsubscribe linux-wireless" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html
drivers/platform/x86/amilo-rfkill.c line 29
Quoted 3 lines · Ben Hutchings
drivers/platform/x86/amilo-rfkill.c new file +3
-0+#define A1655_STATE_PORT 0x64 +#define A1655_COMMAND_PORT 0x64 +#define A1655_DATA_PORT 0x60
You'll need to synchronise with the i8042 driver here, otherwise things could go horribly wrong.
drivers/platform/x86/amilo-rfkill.c line 59
Quoted 2 lines
drivers/platform/x86/amilo-rfkill.c new file +2
-0+#define M7440_PORT1 0x118f +#define M7440_PORT2 0x118e
These ports are defined in the DSDT for one of these systems, but not referenced. I think a hardware-banging driver like this is probably the only interface.
Should be fine as long as you make sure you're not racing with the keyboard controller.
Signature · 1 line
Matthew Garrett | [email protected]
PATCH v3 1/1 x86: Add amilo-rfkill driver for some Fujitsu-Siemens Amilo laptops
An rfkill driver based on the fsaa1655g and fsam7440 drivers for Fujitsu-Siemens Amilo A1655 and M7440 models found at:
http://sourceforge.net/projects/fsaa1655g/
http://sourceforge.net/projects/fsam7440/
This adds DMI matching, replaces the procfs files with rfkill devices, and uses the proper functions to write to the i8042 safely.
---
Changes from v2:
- Use i8042 functions rather than direct inb()/outb()
Changes from v1:
- Remove module parameter and call to rfkill_init_sw_state()
- Correct Martin's name in copyright banner
Quoted 7 lines · Matthew Garrett
Review
Quoted 3 lines · Ben Hutchings
(quoted diff) +3
-0+#define A1655_STATE_PORT 0x64 +#define A1655_COMMAND_PORT 0x64 +#define A1655_DATA_PORT 0x60You'll need to synchronise with the i8042 driver here, otherwise things could go horribly wrong.
[...]
You're right, and doing that is rather simpler.
Ben.
drivers/platform/x86/Kconfig | 7 ++ drivers/platform/x86/Makefile | 1 + drivers/platform/x86/amilo-rfkill.c | 173 +++++++++++++++++++++++++++++++++++ 3 files changed, 181 insertions(+), 0 deletions(-) create mode 100644 drivers/platform/x86/amilo-rfkill.c
drivers/platform/x86/Kconfig +7 -0
@@ -143,6 +143,13 @@ config FUJITSU_LAPTOP_DEBUG If you are not sure, say N here. +config AMILO_RFKILL + tristate "Fujitsu-Siemens Amilo rfkill support" + depends on RFKILL + ---help--- + This is a driver for enabling wifi on some Fujitsu-Siemens Amilo + laptops. + config TC1100_WMI tristate "HP Compaq TC1100 Tablet WMI Extras (EXPERIMENTAL)" depends on !X86_64
drivers/platform/x86/Makefile +1 -0
@@ -17,6 +17,7 @@ obj-$(CONFIG_ACER_WMI) += acer-wmi.o obj-$(CONFIG_ACERHDF) += acerhdf.o obj-$(CONFIG_HP_ACCEL) += hp_accel.o obj-$(CONFIG_HP_WMI) += hp-wmi.o +obj-$(CONFIG_AMILO_RFKILL) += amilo-rfkill.o obj-$(CONFIG_TC1100_WMI) += tc1100-wmi.o obj-$(CONFIG_SONY_LAPTOP) += sony-laptop.o obj-$(CONFIG_IDEAPAD_LAPTOP) += ideapad-laptop.o
drivers/platform/x86/amilo-rfkill.c new file +173 -0
173 lines not on this page · raw message
Signature · 5 lines
1.7.7.3 -- Ben Hutchings Teamwork is essential - it allows you to blame someone else.