Commit 0c3d931b authored by Lubomir Rintel's avatar Lubomir Rintel Committed by Andy Shevchenko

Platform: OLPC: Add XO-1.75 EC driver

It's based off the driver from the OLPC kernel sources. Somewhat
modernized and cleaned up, for better or worse.

Modified to plug into the olpc-ec driver infrastructure (so that battery
interface and debugfs could be reused) and the SPI slave framework.
Signed-off-by: default avatarLubomir Rintel <lkundrak@v3.sk>
Reviewed-by: default avatarAndy Shevchenko <andy.shevchenko@gmail.com>
Signed-off-by: default avatarAndy Shevchenko <andriy.shevchenko@linux.intel.com>
parent 8097548f
...@@ -2698,6 +2698,7 @@ config OLPC ...@@ -2698,6 +2698,7 @@ config OLPC
select OF select OF
select OF_PROMTREE select OF_PROMTREE
select IRQ_DOMAIN select IRQ_DOMAIN
select OLPC_EC
---help--- ---help---
Add support for detecting the unique features of the OLPC Add support for detecting the unique features of the OLPC
XO hardware. XO hardware.
......
...@@ -10,3 +10,5 @@ source "drivers/platform/goldfish/Kconfig" ...@@ -10,3 +10,5 @@ source "drivers/platform/goldfish/Kconfig"
source "drivers/platform/chrome/Kconfig" source "drivers/platform/chrome/Kconfig"
source "drivers/platform/mellanox/Kconfig" source "drivers/platform/mellanox/Kconfig"
source "drivers/platform/olpc/Kconfig"
...@@ -6,6 +6,6 @@ ...@@ -6,6 +6,6 @@
obj-$(CONFIG_X86) += x86/ obj-$(CONFIG_X86) += x86/
obj-$(CONFIG_MELLANOX_PLATFORM) += mellanox/ obj-$(CONFIG_MELLANOX_PLATFORM) += mellanox/
obj-$(CONFIG_MIPS) += mips/ obj-$(CONFIG_MIPS) += mips/
obj-$(CONFIG_OLPC) += olpc/ obj-$(CONFIG_OLPC_EC) += olpc/
obj-$(CONFIG_GOLDFISH) += goldfish/ obj-$(CONFIG_GOLDFISH) += goldfish/
obj-$(CONFIG_CHROME_PLATFORMS) += chrome/ obj-$(CONFIG_CHROME_PLATFORMS) += chrome/
config OLPC_EC
bool
config OLPC_XO175_EC
tristate "OLPC XO 1.75 Embedded Controller"
depends on ARCH_MMP || COMPILE_TEST
select SPI_SLAVE
select OLPC_EC
help
Include support for the OLPC XO Embedded Controller (EC). The EC
provides various platform services, including support for the power,
button, restart, shutdown and battery charging status.
Unless you have an OLPC XO laptop, you will want to say N.
# #
# OLPC XO platform-specific drivers # OLPC XO platform-specific drivers
# #
obj-$(CONFIG_OLPC) += olpc-ec.o obj-$(CONFIG_OLPC_EC) += olpc-ec.o
obj-$(CONFIG_OLPC_XO175_EC) += olpc-xo175-ec.o
This diff is collapsed.
...@@ -41,7 +41,7 @@ struct olpc_ec_driver { ...@@ -41,7 +41,7 @@ struct olpc_ec_driver {
bool wakeup_available; bool wakeup_available;
}; };
#ifdef CONFIG_OLPC #ifdef CONFIG_OLPC_EC
extern void olpc_ec_driver_register(struct olpc_ec_driver *drv, void *arg); extern void olpc_ec_driver_register(struct olpc_ec_driver *drv, void *arg);
...@@ -69,6 +69,6 @@ static inline bool olpc_ec_wakeup_available(void) ...@@ -69,6 +69,6 @@ static inline bool olpc_ec_wakeup_available(void)
return false; return false;
} }
#endif /* CONFIG_OLPC */ #endif /* CONFIG_OLPC_EC */
#endif /* _LINUX_OLPC_EC_H */ #endif /* _LINUX_OLPC_EC_H */
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment