Merge branch 'master' into for_paulus
[linux-drm-fsl-dcu.git] / drivers / ps3 / vuart.h
index 28fd89f0c8aa23fd6cfe7d3bbc31d909e4941f2d..2cbf728a3a0bfaec295ea31a1d580390d13ed4a4 100644 (file)
 #if !defined(_PS3_VUART_H)
 #define _PS3_VUART_H
 
-struct ps3_vuart_stats {
-       unsigned long bytes_written;
-       unsigned long bytes_read;
-       unsigned long tx_interrupts;
-       unsigned long rx_interrupts;
-       unsigned long disconnect_interrupts;
-};
-
-/**
- * struct ps3_vuart_port_device - a device on a vuart port
- */
-
-struct ps3_vuart_port_device {
-       enum ps3_match_id match_id;
-       struct device core;
-
-       /* private driver variables */
-       unsigned int port_number;
-       unsigned long interrupt_mask;
-       struct {
-               spinlock_t lock;
-               struct list_head head;
-       } tx_list;
-       struct {
-               unsigned long bytes_held;
-               spinlock_t lock;
-               struct list_head head;
-       } rx_list;
-       struct ps3_vuart_stats stats;
-};
-
 /**
  * struct ps3_vuart_port_driver - a driver for a device on a vuart port
  */
@@ -61,6 +30,7 @@ struct ps3_vuart_port_driver {
        struct device_driver core;
        int (*probe)(struct ps3_vuart_port_device *);
        int (*remove)(struct ps3_vuart_port_device *);
+       void (*shutdown)(struct ps3_vuart_port_device *);
        int (*tx_event)(struct ps3_vuart_port_device *dev);
        int (*rx_event)(struct ps3_vuart_port_device *dev);
        int (*disconnect_event)(struct ps3_vuart_port_device *dev);
@@ -68,9 +38,9 @@ struct ps3_vuart_port_driver {
        /* int (*resume)(struct ps3_vuart_port_device *); */
 };
 
-int ps3_vuart_port_device_register(struct ps3_vuart_port_device *dev);
 int ps3_vuart_port_driver_register(struct ps3_vuart_port_driver *drv);
 void ps3_vuart_port_driver_unregister(struct ps3_vuart_port_driver *drv);
+
 int ps3_vuart_write(struct ps3_vuart_port_device *dev,
        const void* buf, unsigned int bytes);
 int ps3_vuart_read(struct ps3_vuart_port_device *dev, void* buf,
@@ -86,9 +56,4 @@ static inline struct ps3_vuart_port_device *to_ps3_vuart_port_device(
        return container_of(_dev, struct ps3_vuart_port_device, core);
 }
 
-int ps3_vuart_write(struct ps3_vuart_port_device *dev, const void* buf,
-       unsigned int bytes);
-int ps3_vuart_read(struct ps3_vuart_port_device *dev, void* buf,
-       unsigned int bytes);
-
 #endif