Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/drzeus/mmc
[pandora-kernel.git] / include / linux / maple.h
index 35c3474..c853b10 100644 (file)
@@ -2,6 +2,7 @@
 #define __LINUX_MAPLE_H
 
 #include <linux/device.h>
+#include <mach/maple.h>
 
 extern struct bus_type maple_bus_type;
 
@@ -33,13 +34,14 @@ struct mapleq {
        void *sendbuf, *recvbuf, *recvbufdcsp;
        unsigned char length;
        enum maple_code command;
+       struct mutex mutex;
 };
 
 struct maple_devinfo {
        unsigned long function;
        unsigned long function_data[3];
        unsigned char area_code;
-       unsigned char connector_directon;
+       unsigned char connector_direction;
        char product_name[31];
        char product_licence[61];
        unsigned short standby_power;
@@ -61,10 +63,7 @@ struct maple_device {
 
 struct maple_driver {
        unsigned long function;
-       int (*connect) (struct maple_device * dev);
-       void (*disconnect) (struct maple_device * dev);
        struct device_driver drv;
-       int registered;
 };
 
 void maple_getcond_callback(struct maple_device *dev,
@@ -72,7 +71,9 @@ void maple_getcond_callback(struct maple_device *dev,
                            unsigned long interval,
                            unsigned long function);
 int maple_driver_register(struct device_driver *drv);
-void maple_add_packet(struct mapleq *mq);
+int maple_add_packet_sleeps(struct maple_device *mdev, u32 function,
+       u32 command, u32 length, void *data);
+void maple_clear_dev(struct maple_device *mdev);
 
 #define to_maple_dev(n) container_of(n, struct maple_device, dev)
 #define to_maple_driver(n) container_of(n, struct maple_driver, drv)