mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-11 12:28:41 +08:00
[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>
This commit is contained in:
parent
2a08ea69a3
commit
97ec167599
@ -21,37 +21,6 @@
|
||||
#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
|
||||
*/
|
||||
@ -68,9 +37,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 +55,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
|
||||
|
@ -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
|
||||
|
Loading…
Reference in New Issue
Block a user