summaryrefslogtreecommitdiffstats
path: root/arch/x86
diff options
context:
space:
mode:
authorAndres Salomon <dilinger@queued.net>2012-07-10 19:31:51 -0700
committerAndres Salomon <dilinger@queued.net>2012-07-31 23:27:29 -0400
commit392a325c4351339cfbf182bb5a1444df1cf65dbb (patch)
tree90fc86d937d133f965e4f2129dede4ad6558f114 /arch/x86
parent08843b79fb35d33859e0f8f11a7318341076e4d1 (diff)
downloadtalos-op-linux-392a325c4351339cfbf182bb5a1444df1cf65dbb.tar.gz
talos-op-linux-392a325c4351339cfbf182bb5a1444df1cf65dbb.zip
Platform: OLPC: add a stub to drivers/platform/ for the OLPC EC driver
The OLPC EC driver has outgrown arch/x86/platform/. It's time to both share common code amongst different architectures, as well as move it out of arch/x86/. The XO-1.75 is ARM-based, and the EC driver shares a lot of code with the x86 code. Signed-off-by: Andres Salomon <dilinger@queued.net> Acked-by: Paul Fox <pgf@laptop.org> Reviewed-by: Thomas Gleixner <tglx@linutronix.de>
Diffstat (limited to 'arch/x86')
-rw-r--r--arch/x86/include/asm/olpc.h19
-rw-r--r--arch/x86/platform/olpc/olpc.c4
2 files changed, 5 insertions, 18 deletions
diff --git a/arch/x86/include/asm/olpc.h b/arch/x86/include/asm/olpc.h
index 87bdbca72f94..513e9992771d 100644
--- a/arch/x86/include/asm/olpc.h
+++ b/arch/x86/include/asm/olpc.h
@@ -4,6 +4,7 @@
#define _ASM_X86_OLPC_H
#include <asm/geode.h>
+#include <linux/olpc-ec.h>
struct olpc_platform_t {
int flags;
@@ -102,22 +103,8 @@ extern int pci_olpc_init(void);
/* EC related functions */
-extern int olpc_ec_cmd(unsigned char cmd, unsigned char *inbuf, size_t inlen,
- unsigned char *outbuf, size_t outlen);
-
-/* EC commands */
-
-#define EC_FIRMWARE_REV 0x08
-#define EC_WRITE_SCI_MASK 0x1b
-#define EC_WAKE_UP_WLAN 0x24
-#define EC_WLAN_LEAVE_RESET 0x25
-#define EC_READ_EB_MODE 0x2a
-#define EC_SET_SCI_INHIBIT 0x32
-#define EC_SET_SCI_INHIBIT_RELEASE 0x34
-#define EC_WLAN_ENTER_RESET 0x35
-#define EC_WRITE_EXT_SCI_MASK 0x38
-#define EC_SCI_QUERY 0x84
-#define EC_EXT_SCI_QUERY 0x85
+extern int olpc_ec_cmd_x86(unsigned char cmd, unsigned char *inbuf,
+ size_t inlen, unsigned char *outbuf, size_t outlen);
/* SCI source values */
diff --git a/arch/x86/platform/olpc/olpc.c b/arch/x86/platform/olpc/olpc.c
index a4bee53c2e54..796e199ac77a 100644
--- a/arch/x86/platform/olpc/olpc.c
+++ b/arch/x86/platform/olpc/olpc.c
@@ -125,7 +125,7 @@ static int __wait_on_obf(unsigned int line, unsigned int port, int desired)
* <http://wiki.laptop.org/go/Ec_specification>. Unfortunately, while
* OpenFirmware's source is available, the EC's is not.
*/
-int olpc_ec_cmd(unsigned char cmd, unsigned char *inbuf, size_t inlen,
+int olpc_ec_cmd_x86(unsigned char cmd, unsigned char *inbuf, size_t inlen,
unsigned char *outbuf, size_t outlen)
{
unsigned long flags;
@@ -201,7 +201,7 @@ err:
spin_unlock_irqrestore(&ec_lock, flags);
return ret;
}
-EXPORT_SYMBOL_GPL(olpc_ec_cmd);
+EXPORT_SYMBOL_GPL(olpc_ec_cmd_x86);
void olpc_ec_wakeup_set(u16 value)
{
OpenPOWER on IntegriCloud