-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge branch 'for_linus' of git://cavan.codon.org.uk/platform-drivers…
…-x86 Pull x86 platform driver updates from Matthew Garrett: "Some significant updates to samsung-laptop, additional hardware support for Toshibas, misc updates to various hardware and a new backlight driver for some Apple machines." Fix up trivial conflicts: geode Geos update happening next to net5501 support, and MSIC thermal platform support added twice. * 'for_linus' of git://cavan.codon.org.uk/platform-drivers-x86: (77 commits) acer-wmi: add quirk table for video backlight vendor mode drivers/platform/x86/amilo-rfkill.c::amilo_rfkill_probe() avoid NULL deref samsung-laptop: unregister ACPI video module for some well known laptops acer-wmi: No wifi rfkill on Sony machines thinkpad-acpi: recognize Lenovo as version string in newer V-series BIOS asus-wmi: don't update power and brightness when using scalar eeepc-wmi: split et2012 specific hacks eeepc-wmi: refine quirks handling asus-nb-wmi: set panel_power correctly asus-wmi: move WAPF variable into quirks_entry asus-wmi: store backlight power status for AIO machine asus-wmi: add scalar board brightness adj. support samsung-laptop: cleanup return type: mode_t vs umode_t drivers, samsung-laptop: fix usage of isalnum drivers, samsung-laptop: fix initialization of sabi_data in sabi_set_commandb asus-wmi: on/off bit is not set when reading the value eeepc-wmi: add extra keymaps for EP121 asus-nb-wmi: ignore useless keys acer-wmi: support Lenovo ideapad S205 Brazos wifi switch acer-wmi: fix out of input parameter size when set ...
- Loading branch information
Showing
36 changed files
with
2,448 additions
and
2,414 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,2 +1,3 @@ | ||
obj-$(CONFIG_ALIX) += alix.o | ||
obj-$(CONFIG_NET5501) += net5501.o | ||
obj-$(CONFIG_GEOS) += geos.o |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,128 @@ | ||
/* | ||
* System Specific setup for Traverse Technologies GEOS. | ||
* At the moment this means setup of GPIO control of LEDs. | ||
* | ||
* Copyright (C) 2008 Constantin Baranov <const@mimas.ru> | ||
* Copyright (C) 2011 Ed Wildgoose <kernel@wildgooses.com> | ||
* and Philip Prindeville <philipp@redfish-solutions.com> | ||
* | ||
* TODO: There are large similarities with leds-net5501.c | ||
* by Alessandro Zummo <a.zummo@towertech.it> | ||
* In the future leds-net5501.c should be migrated over to platform | ||
* | ||
* This program is free software; you can redistribute it and/or modify | ||
* it under the terms of the GNU General Public License version 2 | ||
* as published by the Free Software Foundation. | ||
*/ | ||
|
||
#include <linux/kernel.h> | ||
#include <linux/init.h> | ||
#include <linux/io.h> | ||
#include <linux/string.h> | ||
#include <linux/module.h> | ||
#include <linux/leds.h> | ||
#include <linux/platform_device.h> | ||
#include <linux/gpio.h> | ||
#include <linux/input.h> | ||
#include <linux/gpio_keys.h> | ||
#include <linux/dmi.h> | ||
|
||
#include <asm/geode.h> | ||
|
||
static struct gpio_keys_button geos_gpio_buttons[] = { | ||
{ | ||
.code = KEY_RESTART, | ||
.gpio = 3, | ||
.active_low = 1, | ||
.desc = "Reset button", | ||
.type = EV_KEY, | ||
.wakeup = 0, | ||
.debounce_interval = 100, | ||
.can_disable = 0, | ||
} | ||
}; | ||
static struct gpio_keys_platform_data geos_buttons_data = { | ||
.buttons = geos_gpio_buttons, | ||
.nbuttons = ARRAY_SIZE(geos_gpio_buttons), | ||
.poll_interval = 20, | ||
}; | ||
|
||
static struct platform_device geos_buttons_dev = { | ||
.name = "gpio-keys-polled", | ||
.id = 1, | ||
.dev = { | ||
.platform_data = &geos_buttons_data, | ||
} | ||
}; | ||
|
||
static struct gpio_led geos_leds[] = { | ||
{ | ||
.name = "geos:1", | ||
.gpio = 6, | ||
.default_trigger = "default-on", | ||
.active_low = 1, | ||
}, | ||
{ | ||
.name = "geos:2", | ||
.gpio = 25, | ||
.default_trigger = "default-off", | ||
.active_low = 1, | ||
}, | ||
{ | ||
.name = "geos:3", | ||
.gpio = 27, | ||
.default_trigger = "default-off", | ||
.active_low = 1, | ||
}, | ||
}; | ||
|
||
static struct gpio_led_platform_data geos_leds_data = { | ||
.num_leds = ARRAY_SIZE(geos_leds), | ||
.leds = geos_leds, | ||
}; | ||
|
||
static struct platform_device geos_leds_dev = { | ||
.name = "leds-gpio", | ||
.id = -1, | ||
.dev.platform_data = &geos_leds_data, | ||
}; | ||
|
||
static struct __initdata platform_device *geos_devs[] = { | ||
&geos_buttons_dev, | ||
&geos_leds_dev, | ||
}; | ||
|
||
static void __init register_geos(void) | ||
{ | ||
/* Setup LED control through leds-gpio driver */ | ||
platform_add_devices(geos_devs, ARRAY_SIZE(geos_devs)); | ||
} | ||
|
||
static int __init geos_init(void) | ||
{ | ||
const char *vendor, *product; | ||
|
||
if (!is_geode()) | ||
return 0; | ||
|
||
vendor = dmi_get_system_info(DMI_SYS_VENDOR); | ||
if (!vendor || strcmp(vendor, "Traverse Technologies")) | ||
return 0; | ||
|
||
product = dmi_get_system_info(DMI_PRODUCT_NAME); | ||
if (!product || strcmp(product, "Geos")) | ||
return 0; | ||
|
||
printk(KERN_INFO "%s: system is recognized as \"%s %s\"\n", | ||
KBUILD_MODNAME, vendor, product); | ||
|
||
register_geos(); | ||
|
||
return 0; | ||
} | ||
|
||
module_init(geos_init); | ||
|
||
MODULE_AUTHOR("Philip Prindeville <philipp@redfish-solutions.com>"); | ||
MODULE_DESCRIPTION("Traverse Technologies Geos System Setup"); | ||
MODULE_LICENSE("GPL"); |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.