[PATCH] powerpc: hvc_console updates
These are some updates from both Ryan and Arnd for the hvc_console driver: The main point is to enable the inclusion of a console driver for rtas, which is currrently needed for the cell platform. Also shuffle around some data-type declarations and moves some functions out of include/asm-ppc64/hvconsole.h and into a new drivers/char/hvc_console.h file. Signed-off-by: "Ryan S. Arnold" <rsa@us.ibm.com> Signed-off-by: Arnd Bergmann <abergman@de.ibm.com> Signed-off-by: Paul Mackerras <paulus@samba.org>
This commit is contained in:
committed by
Paul Mackerras
parent
11089f08d9
commit
45d607ed92
@ -24,28 +24,18 @@
|
||||
#ifdef __KERNEL__
|
||||
|
||||
/*
|
||||
* This is the max number of console adapters that can/will be found as
|
||||
* console devices on first stage console init. Any number beyond this range
|
||||
* can't be used as a console device but is still a valid tty device.
|
||||
* PSeries firmware will only send/recv up to 16 bytes of character data per
|
||||
* hcall.
|
||||
*/
|
||||
#define MAX_NR_HVC_CONSOLES 16
|
||||
#define MAX_VIO_PUT_CHARS 16
|
||||
#define SIZE_VIO_GET_CHARS 16
|
||||
|
||||
/* implemented by a low level driver */
|
||||
struct hv_ops {
|
||||
int (*get_chars)(uint32_t vtermno, char *buf, int count);
|
||||
int (*put_chars)(uint32_t vtermno, const char *buf, int count);
|
||||
};
|
||||
/*
|
||||
* Vio firmware always attempts to fetch MAX_VIO_GET_CHARS chars. The 'count'
|
||||
* parm is included to conform to put_chars() function pointer template
|
||||
*/
|
||||
extern int hvc_get_chars(uint32_t vtermno, char *buf, int count);
|
||||
extern int hvc_put_chars(uint32_t vtermno, const char *buf, int count);
|
||||
|
||||
struct hvc_struct;
|
||||
|
||||
/* Register a vterm and a slot index for use as a console (console_init) */
|
||||
extern int hvc_instantiate(uint32_t vtermno, int index, struct hv_ops *ops);
|
||||
/* register a vterm for hvc tty operation (module_init or hotplug add) */
|
||||
extern struct hvc_struct * __devinit hvc_alloc(uint32_t vtermno, int irq,
|
||||
struct hv_ops *ops);
|
||||
/* remove a vterm from hvc tty operation (modele_exit or hotplug remove) */
|
||||
extern int __devexit hvc_remove(struct hvc_struct *hp);
|
||||
#endif /* __KERNEL__ */
|
||||
#endif /* _PPC64_HVCONSOLE_H */
|
||||
|
Reference in New Issue
Block a user