sslug-teknik team mailing list archive
-
sslug-teknik team
-
Mailing list archive
-
Message #49116
Line discipline
Jeg er ved at lave et modul der skal registrere en line dicipline.
Men når jeg kigger i
linux/tty.h
#define NR_LDISCS 16
asm/termios.h
/* line disciplines */
#define N_TTY 0
#define N_SLIP 1
#define N_MOUSE 2
#define N_PPP 3
#define N_STRIP 4
#define N_AX25 5
#define N_X25 6 /* X.25 async */
#define N_6PACK 7
#define N_MASC 8 /* Reserved for Mobitex module
<kaz@xxxxxxxx> */
#define N_R3964 9 /* Reserved for Simatic R3964 module
*/
#define N_PROFIBUS_FDL 10 /* Reserved for Profibus
<Dave@xxxxxxxx> */
#define N_IRDA 11 /* Linux IR -
http://irda.sourceforge.net/ */
#define N_SMSBLOCK 12 /* SMS block mode - for talking to
GSM data card
#define N_HDLC 13 /* synchronous HDLC */
#define N_SYNC_PPP 14 /* synchronous PPP */
#define N_HCI 15 /* Bluetooth HCI UART */
drivers/char/tty_io.c
int tty_register_ldisc(int disc, struct tty_ldisc *new_ldisc)
{
if (disc < N_TTY || disc >= NR_LDISCS)
return -EINVAL;
if (new_ldisc) {
ldiscs[disc] = *new_ldisc;
ldiscs[disc].flags |= LDISC_FLAG_DEFINED;
ldiscs[disc].num = disc;
} else
memset(&ldiscs[disc], 0, sizeof(struct tty_ldisc));
return 0;
}
Se det ud til at der kun er disse 16 muglige ldisc's?
Kan det passe at jeg ikke kan indføre en ny, uden at skulle ænde på selve
kernen?
--
Martin Hansen
Student at SDU Sønderborg. www.sdu.dk
Writing final project at Danfoss drives. www.danfossdrives.com
Tlf: 74 88 54 62
Follow ups