diff options
author | Geoff Levand <geoffrey.levand@am.sony.com> | 2007-01-30 15:20:30 -0800 |
---|---|---|
committer | Paul Mackerras <paulus@samba.org> | 2007-02-07 14:03:20 +1100 |
commit | 97ec1675999eae96975a30facbedc2e6c0c832bc (patch) | |
tree | 3e464f69cdab789168e33d34843e63d6f23e075e /include/asm-powerpc/ps3.h | |
parent | 2a08ea69a3e448a5cc94e5da9eccc40cf13f9532 (diff) |
[POWERPC] PS3: Move vuart declarations to ps3.h
Move the structures and routines needed for PS3 vuart port device registration
to asm-powerpc/ps3.h.
Signed-off-by: Geoff Levand <geoffrey.levand@am.sony.com>
Acked-by: Arnd Bergmann <arnd.bergmann@de.ibm.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
Diffstat (limited to 'include/asm-powerpc/ps3.h')
-rw-r--r-- | include/asm-powerpc/ps3.h | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/include/asm-powerpc/ps3.h b/include/asm-powerpc/ps3.h index 873aab042c7..4f5a1e01fda 100644 --- a/include/asm-powerpc/ps3.h +++ b/include/asm-powerpc/ps3.h @@ -353,4 +353,39 @@ static inline void *ps3_system_bus_get_driver_data( extern struct bus_type ps3_system_bus_type; +/* vuart routines */ + +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; + u64 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; +}; + +int ps3_vuart_port_device_register(struct ps3_vuart_port_device *dev); + #endif |