taglinefilesource code
info104arch/i386/kernel/vm86.cstruct vm86_struct info;
info114arch/i386/kernel/vm86.cmemcpy_fromfs(&info,v86,sizeof(info));
info118arch/i386/kernel/vm86.cinfo.regs.__null_ds = 0;
info119arch/i386/kernel/vm86.cinfo.regs.__null_es = 0;
info120arch/i386/kernel/vm86.cinfo.regs.__null_fs = 0;
info121arch/i386/kernel/vm86.cinfo.regs.__null_gs = 0;
info127arch/i386/kernel/vm86.cVEFLAGS = info.regs.eflags;
info128arch/i386/kernel/vm86.cinfo.regs.eflags &= SAFE_MASK;
info129arch/i386/kernel/vm86.cinfo.regs.eflags |= pt_regs->eflags & ~SAFE_MASK;
info130arch/i386/kernel/vm86.cinfo.regs.eflags |= VM_MASK;
info132arch/i386/kernel/vm86.cswitch (info.cpu_type) {
info155arch/i386/kernel/vm86.ccurrent->tss.screen_bitmap = info.screen_bitmap;
info156arch/i386/kernel/vm86.cif (info.flags & VM86_SCREEN_BITMAP)
info161arch/i386/kernel/vm86.c:"r" (&info.regs));
info679arch/i386/math-emu/fpu_entry.cvoid math_abort(struct info * info, unsigned int signal)
info686arch/i386/math-emu/fpu_entry.c__asm__("movl %0,%%esp ; ret": :"g" (((long) info)-4));
info55arch/i386/math-emu/fpu_proto.hextern void math_abort(struct info *info, unsigned int signal);
info21arch/i386/math-emu/fpu_system.h#define SETUP_DATA_AREA(arg)    FPU_info = (struct info *) &arg
info37arch/i386/math-emu/fpu_system.h#define FPU_info    (I387.soft.info)
info34arch/i386/math-emu/get_address.coffsetof(struct info,___eax),
info35arch/i386/math-emu/get_address.coffsetof(struct info,___ecx),
info36arch/i386/math-emu/get_address.coffsetof(struct info,___edx),
info37arch/i386/math-emu/get_address.coffsetof(struct info,___ebx),
info38arch/i386/math-emu/get_address.coffsetof(struct info,___esp),
info39arch/i386/math-emu/get_address.coffsetof(struct info,___ebp),
info40arch/i386/math-emu/get_address.coffsetof(struct info,___esi),
info41arch/i386/math-emu/get_address.coffsetof(struct info,___edi)
info47arch/i386/math-emu/get_address.coffsetof(struct info,___cs),
info48arch/i386/math-emu/get_address.coffsetof(struct info,___vm86_ds),
info49arch/i386/math-emu/get_address.coffsetof(struct info,___vm86_es),
info50arch/i386/math-emu/get_address.coffsetof(struct info,___vm86_fs),
info51arch/i386/math-emu/get_address.coffsetof(struct info,___vm86_gs),
info52arch/i386/math-emu/get_address.coffsetof(struct info,___ss),
info53arch/i386/math-emu/get_address.coffsetof(struct info,___vm86_ds)
info60arch/i386/math-emu/get_address.coffsetof(struct info,___cs),
info61arch/i386/math-emu/get_address.coffsetof(struct info,___ds),
info62arch/i386/math-emu/get_address.coffsetof(struct info,___es),
info63arch/i386/math-emu/get_address.coffsetof(struct info,___fs),
info64arch/i386/math-emu/get_address.coffsetof(struct info,___gs),
info65arch/i386/math-emu/get_address.coffsetof(struct info,___ss),
info66arch/i386/math-emu/get_address.coffsetof(struct info,___ds)
info431drivers/block/genhd.cunsigned char info[128];   /* Informative text string */
info856drivers/block/ide-cd.cstruct cdrom_info *info = &drive->cdrom_info;
info861drivers/block/ide-cd.cinfo->nsectors_buffered);
info868drivers/block/ide-cd.cif (info->sector_buffer == NULL)
info870drivers/block/ide-cd.cinfo->sector_buffer = (char *) kmalloc (SECTOR_BUFFER_SIZE, GFP_ATOMIC);
info873drivers/block/ide-cd.cif (info->sector_buffer == NULL)
info878drivers/block/ide-cd.cif (info->nsectors_buffered == 0)
info879drivers/block/ide-cd.cinfo->sector_buffered = sector;
info882drivers/block/ide-cd.cdest = info->sector_buffer + info->nsectors_buffered * SECTOR_SIZE;
info888drivers/block/ide-cd.c++info->nsectors_buffered;
info1060drivers/block/ide-cd.cstruct cdrom_info *info = &drive->cdrom_info;
info1064drivers/block/ide-cd.cif (info->sector_buffer == NULL) return 0;
info1069drivers/block/ide-cd.crq->sector >= info->sector_buffered &&
info1070drivers/block/ide-cd.crq->sector < info->sector_buffered + info->nsectors_buffered)
info1076drivers/block/ide-cd.cinfo->sector_buffer +
info1077drivers/block/ide-cd.c(rq->sector - info->sector_buffered) * SECTOR_SIZE,
info157drivers/block/ide.hbyte info[4];
info291drivers/block/loop.cstruct loop_info info;
info297drivers/block/loop.cmemcpy_fromfs(&info, arg, sizeof(info));
info298drivers/block/loop.cif (info.lo_encrypt_key_size > LO_KEY_SIZE)
info300drivers/block/loop.cswitch (info.lo_encrypt_type) {
info304drivers/block/loop.cif (info.lo_encrypt_key_size < 0)
info309drivers/block/loop.cif (info.lo_encrypt_key_size != 8)
info313drivers/block/loop.cmemcpy(lo->lo_des_init,info.lo_init,8);
info319drivers/block/loop.clo->lo_offset = info.lo_offset;
info320drivers/block/loop.cstrncpy(lo->lo_name, info.lo_name, LO_NAME_SIZE);
info321drivers/block/loop.clo->lo_encrypt_type = info.lo_encrypt_type;
info323drivers/block/loop.clo->lo_encrypt_key_size = info.lo_encrypt_key_size;
info324drivers/block/loop.cif (info.lo_encrypt_key_size)
info325drivers/block/loop.cmemcpy(lo->lo_encrypt_key, info.lo_encrypt_key,
info326drivers/block/loop.cinfo.lo_encrypt_key_size);
info333drivers/block/loop.cstruct loop_info  info;
info339drivers/block/loop.cmemset(&info, 0, sizeof(info));
info340drivers/block/loop.cinfo.lo_number = lo->lo_number;
info341drivers/block/loop.cinfo.lo_device = kdev_t_to_nr(lo->lo_inode->i_dev);
info342drivers/block/loop.cinfo.lo_inode = lo->lo_inode->i_ino;
info343drivers/block/loop.cinfo.lo_rdevice = kdev_t_to_nr(lo->lo_device);
info344drivers/block/loop.cinfo.lo_offset = lo->lo_offset;
info345drivers/block/loop.cinfo.lo_flags = lo->lo_flags;
info346drivers/block/loop.cstrncpy(info.lo_name, lo->lo_name, LO_NAME_SIZE);
info347drivers/block/loop.cinfo.lo_encrypt_type = lo->lo_encrypt_type;
info349drivers/block/loop.cinfo.lo_encrypt_key_size = lo->lo_encrypt_key_size;
info350drivers/block/loop.cmemcpy(info.lo_encrypt_key, lo->lo_encrypt_key,
info353drivers/block/loop.cmemcpy_tofs(arg, &info, sizeof(info));
info1620drivers/cdrom/mcdx.cmcdx_requesttocdata(struct s_drive_stuff *stuffp, struct s_diskinfo *info, int tries)
info1625drivers/cdrom/mcdx.cinfo->n_first = bcd2uint(buf[1]);
info1626drivers/cdrom/mcdx.cinfo->n_last = bcd2uint(buf[2]);
info1627drivers/cdrom/mcdx.cinfo->msf_leadout.minute = buf[3];
info1628drivers/cdrom/mcdx.cinfo->msf_leadout.second = buf[4];
info1629drivers/cdrom/mcdx.cinfo->msf_leadout.frame = buf[5];
info1630drivers/cdrom/mcdx.cinfo->msf_first.minute = buf[6];
info1631drivers/cdrom/mcdx.cinfo->msf_first.second = buf[7];
info1632drivers/cdrom/mcdx.cinfo->msf_first.frame = buf[8];
info433drivers/cdrom/sjcd.cstruct sjcd_hw_disk_info info;
info460drivers/cdrom/sjcd.cif( sjcd_load_response( &info, sizeof( info ) ) != 0 ){
info464drivers/cdrom/sjcd.csjcd_first_track_no = bcd2bin( info.un.track_no );
info489drivers/cdrom/sjcd.cif( sjcd_load_response( &info, sizeof( info ) ) != 0 ){
info493drivers/cdrom/sjcd.csjcd_last_track_no = bcd2bin( info.un.track_no );
info547drivers/cdrom/sjcd.cif( sjcd_load_response( &info, sizeof( info ) ) != 0 ){
info551drivers/cdrom/sjcd.csjcd_disk_length.min = info.un.track_msf.min;
info552drivers/cdrom/sjcd.csjcd_disk_length.sec = info.un.track_msf.sec;
info553drivers/cdrom/sjcd.csjcd_disk_length.frame = info.un.track_msf.frame;
info428drivers/char/cyclades.cserial_paranoia_check(struct cyclades_port *info,
info439drivers/char/cyclades.cif (!info) {
info444drivers/char/cyclades.cif( (long)info < (long)(&cy_port[0])
info445drivers/char/cyclades.c|| (long)(&cy_port[NR_PORTS]) < (long)info ){
info450drivers/char/cyclades.cif (info->magic != CYCLADES_MAGIC) {
info524drivers/char/cyclades.cstruct cyclades_port *info = (struct cyclades_port *)tty->driver_data;
info530drivers/char/cyclades.cprintk("cy_stop ttyC%d\n", info->line); /* */
info533drivers/char/cyclades.cif (serial_paranoia_check(info, tty->device, "cy_stop"))
info536drivers/char/cyclades.ccinfo = &cy_card[info->card];
info538drivers/char/cyclades.cchannel = info->line - cinfo->first_line;
info542drivers/char/cyclades.c(cy_card[info->card].base_addr + (cy_chip_offset[chip]<<index));
info556drivers/char/cyclades.cstruct cyclades_port *info = (struct cyclades_port *)tty->driver_data;
info562drivers/char/cyclades.cprintk("cy_start ttyC%d\n", info->line); /* */
info565drivers/char/cyclades.cif (serial_paranoia_check(info, tty->device, "cy_start"))
info568drivers/char/cyclades.ccinfo = &cy_card[info->card];
info570drivers/char/cyclades.cchannel = info->line - cinfo->first_line;
info574drivers/char/cyclades.c(cy_card[info->card].base_addr + (cy_chip_offset[chip]<<index));
info592drivers/char/cyclades.ccy_sched_event(struct cyclades_port *info, int event)
info594drivers/char/cyclades.cinfo->event |= 1 << event; /* remember what kind of event and who */
info595drivers/char/cyclades.cqueue_task_irq_off(&info->tqueue, &tq_cyclades); /* it belongs to */
info645drivers/char/cyclades.cstruct cyclades_port *info;
info691drivers/char/cyclades.cinfo = &cy_port[i];
info692drivers/char/cyclades.cinfo->last_active = jiffies;
info697drivers/char/cyclades.cif(info->tty == 0){
info708drivers/char/cyclades.ctty = info->tty;
info712drivers/char/cyclades.cif(data & info->ignore_status_mask){
info717drivers/char/cyclades.cif (data & info->read_status_mask){
info723drivers/char/cyclades.cif (info->flags & ASYNC_SAK){
info772drivers/char/cyclades.c++info->mon.int_count;
info773drivers/char/cyclades.cinfo->mon.char_count += char_count;
info774drivers/char/cyclades.cif (char_count > info->mon.char_max)
info775drivers/char/cyclades.cinfo->mon.char_max = char_count;
info776drivers/char/cyclades.cinfo->mon.char_last = char_count;
info815drivers/char/cyclades.cinfo = &cy_port[i];
info816drivers/char/cyclades.cinfo->last_active = jiffies;
info817drivers/char/cyclades.cif(info->tty == 0){
info823drivers/char/cyclades.cchar_count = info->xmit_fifo_size;
info826drivers/char/cyclades.cif(info->x_char) { /* send special char */
info827drivers/char/cyclades.coutch = info->x_char;
info830drivers/char/cyclades.cinfo->x_char = 0;
info833drivers/char/cyclades.cif (info->x_break){
info846drivers/char/cyclades.cbase_addr[CyTDR<<index] = info->x_break*200/HZ;
info850drivers/char/cyclades.cinfo->x_break = 0;
info854drivers/char/cyclades.cif (!info->xmit_cnt){
info858drivers/char/cyclades.cif (info->xmit_buf == 0){
info862drivers/char/cyclades.cif (info->tty->stopped || info->tty->hw_stopped){
info877drivers/char/cyclades.coutch = info->xmit_buf[info->xmit_tail];
info879drivers/char/cyclades.cinfo->xmit_cnt--;
info880drivers/char/cyclades.cinfo->xmit_tail = (info->xmit_tail + 1)
info885drivers/char/cyclades.cinfo->xmit_cnt--;
info886drivers/char/cyclades.cinfo->xmit_tail = (info->xmit_tail + 1)
info897drivers/char/cyclades.cif (info->xmit_cnt < WAKEUP_CHARS) {
info898drivers/char/cyclades.ccy_sched_event(info, Cy_EVENT_WRITE_WAKEUP);
info912drivers/char/cyclades.cinfo = &cy_port[channel + chip * 4 + cinfo->first_line];
info913drivers/char/cyclades.cinfo->last_active = jiffies;
info920drivers/char/cyclades.cif(info->tty == 0){ /* nowhere to put the data, ignore it */
info924drivers/char/cyclades.c&& (info->flags & ASYNC_CHECK_CD)){
info927drivers/char/cyclades.ccy_sched_event(info, Cy_EVENT_OPEN_WAKEUP);
info928drivers/char/cyclades.c}else if(!((info->flags & ASYNC_CALLOUT_ACTIVE)
info929drivers/char/cyclades.c&&(info->flags & ASYNC_CALLOUT_NOHUP))){
info931drivers/char/cyclades.ccy_sched_event(info, Cy_EVENT_HANGUP);
info935drivers/char/cyclades.c&& (info->flags & ASYNC_CTS_FLOW)){
info936drivers/char/cyclades.cif(info->tty->stopped){
info939drivers/char/cyclades.cinfo->tty->stopped = 0;
info941drivers/char/cyclades.ccy_sched_event(info, Cy_EVENT_WRITE_WAKEUP);
info946drivers/char/cyclades.cinfo->tty->stopped = 1;
info1000drivers/char/cyclades.cstruct cyclades_port *info = (struct cyclades_port *) private_;
info1003drivers/char/cyclades.ctty = info->tty;
info1007drivers/char/cyclades.cif (clear_bit(Cy_EVENT_HANGUP, &info->event)) {
info1008drivers/char/cyclades.ctty_hangup(info->tty);
info1009drivers/char/cyclades.cwake_up_interruptible(&info->open_wait);
info1010drivers/char/cyclades.cinfo->flags &= ~(ASYNC_NORMAL_ACTIVE|
info1013drivers/char/cyclades.cif (clear_bit(Cy_EVENT_OPEN_WAKEUP, &info->event)) {
info1014drivers/char/cyclades.cwake_up_interruptible(&info->open_wait);
info1016drivers/char/cyclades.cif (clear_bit(Cy_EVENT_WRITE_WAKEUP, &info->event)) {
info1182drivers/char/cyclades.cstartup(struct cyclades_port * info)
info1188drivers/char/cyclades.cif (info->flags & ASYNC_INITIALIZED){
info1192drivers/char/cyclades.cif (!info->type){
info1193drivers/char/cyclades.cif (info->tty){
info1194drivers/char/cyclades.cset_bit(TTY_IO_ERROR, &info->tty->flags);
info1198drivers/char/cyclades.cif (!info->xmit_buf){
info1199drivers/char/cyclades.cinfo->xmit_buf = (unsigned char *) get_free_page (GFP_KERNEL);
info1200drivers/char/cyclades.cif (!info->xmit_buf){
info1205drivers/char/cyclades.cconfig_setup(info);
info1207drivers/char/cyclades.ccard = info->card;
info1208drivers/char/cyclades.cchannel = (info->line) - (cy_card[card].first_line);
info1223drivers/char/cyclades.cbase_addr[CyRTPR<<index] = (info->default_timeout
info1224drivers/char/cyclades.c? info->default_timeout
info1240drivers/char/cyclades.cinfo->flags |= ASYNC_INITIALIZED;
info1242drivers/char/cyclades.cif (info->tty){
info1243drivers/char/cyclades.cclear_bit(TTY_IO_ERROR, &info->tty->flags);
info1245drivers/char/cyclades.cinfo->xmit_cnt = info->xmit_head = info->xmit_tail = 0;
info1256drivers/char/cyclades.cstart_xmit( struct cyclades_port *info )
info1262drivers/char/cyclades.ccard = info->card;
info1263drivers/char/cyclades.cchannel = (info->line) - (cy_card[card].first_line);
info1281drivers/char/cyclades.cshutdown(struct cyclades_port * info)
info1287drivers/char/cyclades.cif (!(info->flags & ASYNC_INITIALIZED)){
info1292drivers/char/cyclades.ccard = info->card;
info1293drivers/char/cyclades.cchannel = info->line - cy_card[card].first_line;
info1312drivers/char/cyclades.cif (info->xmit_buf){
info1314drivers/char/cyclades.ctemp = info->xmit_buf;
info1315drivers/char/cyclades.cinfo->xmit_buf = 0;
info1320drivers/char/cyclades.cif (!info->tty || (info->tty->termios->c_cflag & HUPCL)) {
info1332drivers/char/cyclades.cif (info->tty){
info1333drivers/char/cyclades.cset_bit(TTY_IO_ERROR, &info->tty->flags);
info1335drivers/char/cyclades.cinfo->flags &= ~ASYNC_INITIALIZED;
info1348drivers/char/cyclades.cconfig_setup(struct cyclades_port * info)
info1356drivers/char/cyclades.cif (!info->tty || !info->tty->termios){
info1359drivers/char/cyclades.cif (info->line == -1){
info1362drivers/char/cyclades.ccflag = info->tty->termios->c_cflag;
info1385drivers/char/cyclades.cinfo->tty->termios->c_cflag &= ~CBAUDEX;
info1389drivers/char/cyclades.cif ((info->flags & ASYNC_SPD_MASK) == ASYNC_SPD_HI)
info1391drivers/char/cyclades.cif ((info->flags & ASYNC_SPD_MASK) == ASYNC_SPD_VHI)
info1394drivers/char/cyclades.cinfo->tbpr = baud_bpr[i]; /* Tx BPR */
info1395drivers/char/cyclades.cinfo->tco = baud_co[i]; /* Tx CO */
info1396drivers/char/cyclades.cinfo->rbpr = baud_bpr[i]; /* Rx BPR */
info1397drivers/char/cyclades.cinfo->rco = baud_co[i]; /* Rx CO */
info1399drivers/char/cyclades.cinfo->timeout = (info->xmit_fifo_size*HZ*30/269) + 2;
info1402drivers/char/cyclades.cinfo->timeout = (info->xmit_fifo_size*HZ*15/baud_table[i]) + 2;
info1405drivers/char/cyclades.cinfo->timeout = 0;
info1412drivers/char/cyclades.cinfo->cor5 = 0;
info1413drivers/char/cyclades.cinfo->cor4 = 0;
info1414drivers/char/cyclades.cinfo->cor3 = (info->default_threshold
info1415drivers/char/cyclades.c? info->default_threshold
info1417drivers/char/cyclades.cinfo->cor2 = CyETC;
info1420drivers/char/cyclades.cinfo->cor1 = Cy_5_BITS;
info1423drivers/char/cyclades.cinfo->cor1 = Cy_6_BITS;
info1426drivers/char/cyclades.cinfo->cor1 = Cy_7_BITS;
info1429drivers/char/cyclades.cinfo->cor1 = Cy_8_BITS;
info1433drivers/char/cyclades.cinfo->cor1 |= Cy_2_STOP;
info1437drivers/char/cyclades.cinfo->cor1 |= CyPARITY_O;
info1439drivers/char/cyclades.cinfo->cor1 |= CyPARITY_E;
info1442drivers/char/cyclades.cinfo->cor1 |= CyPARITY_NONE;
info1447drivers/char/cyclades.cinfo->flags |= ASYNC_CTS_FLOW;
info1448drivers/char/cyclades.cinfo->cor2 |= CyCtsAE;
info1450drivers/char/cyclades.cinfo->flags &= ~ASYNC_CTS_FLOW;
info1451drivers/char/cyclades.cinfo->cor2 &= ~CyCtsAE;
info1454drivers/char/cyclades.cinfo->flags &= ~ASYNC_CHECK_CD;
info1456drivers/char/cyclades.cinfo->flags |= ASYNC_CHECK_CD;
info1468drivers/char/cyclades.ccard = info->card;
info1469drivers/char/cyclades.cchannel = (info->line) - (cy_card[card].first_line);
info1481drivers/char/cyclades.cbase_addr[CyTCOR<<index] = info->tco;
info1482drivers/char/cyclades.cbase_addr[CyTBPR<<index] = info->tbpr;
info1483drivers/char/cyclades.cbase_addr[CyRCOR<<index] = info->rco;
info1484drivers/char/cyclades.cbase_addr[CyRBPR<<index] = info->rbpr;
info1488drivers/char/cyclades.cbase_addr[CySCHR1<<index] = START_CHAR(info->tty);
info1489drivers/char/cyclades.cbase_addr[CySCHR2<<index] = STOP_CHAR(info->tty);
info1490drivers/char/cyclades.cbase_addr[CyCOR1<<index] = info->cor1;
info1491drivers/char/cyclades.cbase_addr[CyCOR2<<index] = info->cor2;
info1492drivers/char/cyclades.cbase_addr[CyCOR3<<index] = info->cor3;
info1493drivers/char/cyclades.cbase_addr[CyCOR4<<index] = info->cor4;
info1494drivers/char/cyclades.cbase_addr[CyCOR5<<index] = info->cor5;
info1500drivers/char/cyclades.cbase_addr[CyRTPR<<index] = (info->default_timeout
info1501drivers/char/cyclades.c? info->default_timeout
info1504drivers/char/cyclades.cif (C_CLOCAL(info->tty)) {
info1532drivers/char/cyclades.cif (info->tty){
info1533drivers/char/cyclades.cclear_bit(TTY_IO_ERROR, &info->tty->flags);
info1544drivers/char/cyclades.cstruct cyclades_port *info = (struct cyclades_port *)tty->driver_data;
info1548drivers/char/cyclades.cprintk("cy_put_char ttyC%d\n", info->line);
info1551drivers/char/cyclades.cif (serial_paranoia_check(info, tty->device, "cy_put_char"))
info1554drivers/char/cyclades.cif (!tty || !info->xmit_buf)
info1558drivers/char/cyclades.cif (info->xmit_cnt >= PAGE_SIZE - 1) {
info1563drivers/char/cyclades.cinfo->xmit_buf[info->xmit_head++] = ch;
info1564drivers/char/cyclades.cinfo->xmit_head &= PAGE_SIZE - 1;
info1565drivers/char/cyclades.cinfo->xmit_cnt++;
info1573drivers/char/cyclades.cstruct cyclades_port *info = (struct cyclades_port *)tty->driver_data;
info1579drivers/char/cyclades.cprintk("cy_flush_chars ttyC%d\n", info->line); /* */
info1582drivers/char/cyclades.cif (serial_paranoia_check(info, tty->device, "cy_flush_chars"))
info1585drivers/char/cyclades.cif (info->xmit_cnt <= 0 || tty->stopped
info1586drivers/char/cyclades.c|| tty->hw_stopped || !info->xmit_buf)
info1589drivers/char/cyclades.ccard = info->card;
info1590drivers/char/cyclades.cchannel = info->line - cy_card[card].first_line;
info1614drivers/char/cyclades.cstruct cyclades_port *info = (struct cyclades_port *)tty->driver_data;
info1619drivers/char/cyclades.cprintk("cy_write ttyC%d\n", info->line); /* */
info1622drivers/char/cyclades.cif (serial_paranoia_check(info, tty->device, "cy_write")){
info1626drivers/char/cyclades.cif (!tty || !info->xmit_buf || !tmp_buf){
info1632drivers/char/cyclades.cc = MIN(count, MIN(SERIAL_XMIT_SIZE - info->xmit_cnt - 1,
info1633drivers/char/cyclades.cSERIAL_XMIT_SIZE - info->xmit_head));
info1642drivers/char/cyclades.cc = MIN(c, MIN(SERIAL_XMIT_SIZE - info->xmit_cnt - 1,
info1643drivers/char/cyclades.cSERIAL_XMIT_SIZE - info->xmit_head));
info1644drivers/char/cyclades.cmemcpy(info->xmit_buf + info->xmit_head, tmp_buf, c);
info1647drivers/char/cyclades.cmemcpy(info->xmit_buf + info->xmit_head, buf, c);
info1648drivers/char/cyclades.cinfo->xmit_head = (info->xmit_head + c) & (SERIAL_XMIT_SIZE-1);
info1649drivers/char/cyclades.cinfo->xmit_cnt += c;
info1657drivers/char/cyclades.cif (info->xmit_cnt
info1660drivers/char/cyclades.cstart_xmit(info);
info1669drivers/char/cyclades.cstruct cyclades_port *info = (struct cyclades_port *)tty->driver_data;
info1673drivers/char/cyclades.cprintk("cy_write_room ttyC%d\n", info->line); /* */
info1676drivers/char/cyclades.cif (serial_paranoia_check(info, tty->device, "cy_write_room"))
info1678drivers/char/cyclades.cret = PAGE_SIZE - info->xmit_cnt - 1;
info1688drivers/char/cyclades.cstruct cyclades_port *info = (struct cyclades_port *)tty->driver_data;
info1691drivers/char/cyclades.cprintk("cy_chars_in_buffer ttyC%d %d\n", info->line, info->xmit_cnt); /* */
info1694drivers/char/cyclades.cif (serial_paranoia_check(info, tty->device, "cy_chars_in_buffer"))
info1697drivers/char/cyclades.creturn info->xmit_cnt;
info1704drivers/char/cyclades.cstruct cyclades_port *info = (struct cyclades_port *)tty->driver_data;
info1708drivers/char/cyclades.cprintk("cy_flush_buffer ttyC%d\n", info->line); /* */
info1711drivers/char/cyclades.cif (serial_paranoia_check(info, tty->device, "cy_flush_buffer"))
info1714drivers/char/cyclades.cinfo->xmit_cnt = info->xmit_head = info->xmit_tail = 0;
info1730drivers/char/cyclades.cstruct cyclades_port *info = (struct cyclades_port *)tty->driver_data;
info1740drivers/char/cyclades.cprintk("cy_throttle ttyC%d\n", info->line);
info1743drivers/char/cyclades.cif (serial_paranoia_check(info, tty->device, "cy_nthrottle")){
info1748drivers/char/cyclades.cinfo->x_char = STOP_CHAR(tty);
info1752drivers/char/cyclades.ccard = info->card;
info1753drivers/char/cyclades.cchannel = info->line - cy_card[card].first_line;
info1772drivers/char/cyclades.cstruct cyclades_port *info = (struct cyclades_port *)tty->driver_data;
info1782drivers/char/cyclades.cprintk("cy_unthrottle ttyC%d\n", info->line);
info1785drivers/char/cyclades.cif (serial_paranoia_check(info, tty->device, "cy_nthrottle")){
info1790drivers/char/cyclades.cinfo->x_char = START_CHAR(tty);
info1794drivers/char/cyclades.ccard = info->card;
info1795drivers/char/cyclades.cchannel = info->line - cy_card[card].first_line;
info1811drivers/char/cyclades.cget_serial_info(struct cyclades_port * info,
info1815drivers/char/cyclades.cstruct cyclades_card *cinfo = &cy_card[info->card];
info1821drivers/char/cyclades.ctmp.type = info->type;
info1822drivers/char/cyclades.ctmp.line = info->line;
info1823drivers/char/cyclades.ctmp.port = info->card * 0x100 + info->line - cinfo->first_line;
info1825drivers/char/cyclades.ctmp.flags = info->flags;
info1827drivers/char/cyclades.ctmp.close_delay = info->close_delay;
info1835drivers/char/cyclades.cset_serial_info(struct cyclades_port * info,
info1845drivers/char/cyclades.cold_info = *info;
info1848drivers/char/cyclades.cif ((new_serial.close_delay != info->close_delay) ||
info1850drivers/char/cyclades.c(info->flags & ASYNC_FLAGS & ~ASYNC_USR_MASK)))
info1852drivers/char/cyclades.cinfo->flags = ((info->flags & ~ASYNC_USR_MASK) |
info1863drivers/char/cyclades.cinfo->flags = ((info->flags & ~ASYNC_FLAGS) |
info1865drivers/char/cyclades.cinfo->close_delay = new_serial.close_delay;
info1869drivers/char/cyclades.cif (info->flags & ASYNC_INITIALIZED){
info1870drivers/char/cyclades.cconfig_setup(info);
info1873drivers/char/cyclades.creturn startup(info);
info1878drivers/char/cyclades.cget_modem_info(struct cyclades_port * info, unsigned int *value)
info1886drivers/char/cyclades.ccard = info->card;
info1887drivers/char/cyclades.cchannel = (info->line) - (cy_card[card].first_line);
info1911drivers/char/cyclades.cset_modem_info(struct cyclades_port * info, unsigned int cmd,
info1919drivers/char/cyclades.ccard = info->card;
info1920drivers/char/cyclades.cchannel = (info->line) - (cy_card[card].first_line);
info2007drivers/char/cyclades.csend_break( struct cyclades_port * info, int duration)
info2011drivers/char/cyclades.cinfo->x_break = duration;
info2012drivers/char/cyclades.cif (!info->xmit_cnt ) {
info2013drivers/char/cyclades.cstart_xmit(info);
info2018drivers/char/cyclades.cget_mon_info(struct cyclades_port * info, struct cyclades_monitor * mon)
info2021drivers/char/cyclades.cmemcpy_tofs(mon, &info->mon, sizeof(struct cyclades_monitor));
info2022drivers/char/cyclades.cinfo->mon.int_count  = 0;
info2023drivers/char/cyclades.cinfo->mon.char_count = 0;
info2024drivers/char/cyclades.cinfo->mon.char_max   = 0;
info2025drivers/char/cyclades.cinfo->mon.char_last  = 0;
info2030drivers/char/cyclades.cset_threshold(struct cyclades_port * info, unsigned long value)
info2035drivers/char/cyclades.ccard = info->card;
info2036drivers/char/cyclades.cchannel = info->line - cy_card[card].first_line;
info2043drivers/char/cyclades.cinfo->cor3 &= ~CyREC_FIFO;
info2044drivers/char/cyclades.cinfo->cor3 |= value & CyREC_FIFO;
info2045drivers/char/cyclades.cbase_addr[CyCOR3<<index] = info->cor3;
info2051drivers/char/cyclades.cget_threshold(struct cyclades_port * info, unsigned long *value)
info2057drivers/char/cyclades.ccard = info->card;
info2058drivers/char/cyclades.cchannel = info->line - cy_card[card].first_line;
info2071drivers/char/cyclades.cset_default_threshold(struct cyclades_port * info, unsigned long value)
info2073drivers/char/cyclades.cinfo->default_threshold = value & 0x0f;
info2078drivers/char/cyclades.cget_default_threshold(struct cyclades_port * info, unsigned long *value)
info2080drivers/char/cyclades.cput_fs_long(info->default_threshold,value);
info2085drivers/char/cyclades.cset_timeout(struct cyclades_port * info, unsigned long value)
info2090drivers/char/cyclades.ccard = info->card;
info2091drivers/char/cyclades.cchannel = info->line - cy_card[card].first_line;
info2103drivers/char/cyclades.cget_timeout(struct cyclades_port * info, unsigned long *value)
info2109drivers/char/cyclades.ccard = info->card;
info2110drivers/char/cyclades.cchannel = info->line - cy_card[card].first_line;
info2123drivers/char/cyclades.cset_default_timeout(struct cyclades_port * info, unsigned long value)
info2125drivers/char/cyclades.cinfo->default_timeout = value & 0xff;
info2130drivers/char/cyclades.cget_default_timeout(struct cyclades_port * info, unsigned long *value)
info2132drivers/char/cyclades.cput_fs_long(info->default_timeout,value);
info2141drivers/char/cyclades.cstruct cyclades_port * info = (struct cyclades_port *)tty->driver_data;
info2145drivers/char/cyclades.cprintk("cy_ioctl ttyC%d, cmd = %x arg = %lx\n", info->line, cmd, arg); /* */
info2156drivers/char/cyclades.cret_val = get_mon_info(info, (struct cyclades_monitor *)arg);
info2165drivers/char/cyclades.cret_val = get_threshold(info, (unsigned long *)arg);
info2168drivers/char/cyclades.cret_val = set_threshold(info, (unsigned long)arg);
info2177drivers/char/cyclades.cret_val = get_default_threshold(info, (unsigned long *)arg);
info2180drivers/char/cyclades.cret_val = set_default_threshold(info, (unsigned long)arg);
info2189drivers/char/cyclades.cret_val = get_timeout(info, (unsigned long *)arg);
info2192drivers/char/cyclades.cret_val = set_timeout(info, (unsigned long)arg);
info2201drivers/char/cyclades.cret_val = get_default_timeout(info, (unsigned long *)arg);
info2204drivers/char/cyclades.cret_val = set_default_timeout(info, (unsigned long)arg);
info2212drivers/char/cyclades.csend_break(info, HZ/4); /* 1/4 second */
info2219drivers/char/cyclades.csend_break(info, arg ? arg*(HZ/10) : HZ/4);
info2224drivers/char/cyclades.cret_val = set_modem_info(info, cmd, (unsigned int *) arg);
info2251drivers/char/cyclades.cret_val = get_modem_info(info, (unsigned int *) arg);
info2260drivers/char/cyclades.cret_val = get_serial_info(info,
info2264drivers/char/cyclades.cret_val = set_serial_info(info,
info2284drivers/char/cyclades.cstruct cyclades_port *info = (struct cyclades_port *)tty->driver_data;
info2287drivers/char/cyclades.cprintk("cy_set_termios ttyC%d\n", info->line);
info2292drivers/char/cyclades.cconfig_setup(info);
info2302drivers/char/cyclades.cwake_up_interruptible(&info->open_wait);
info2312drivers/char/cyclades.cstruct cyclades_port * info = (struct cyclades_port *)tty->driver_data;
info2317drivers/char/cyclades.cprintk("cy_close ttyC%d\n", info->line);
info2320drivers/char/cyclades.cif (!info
info2321drivers/char/cyclades.c|| serial_paranoia_check(info, tty->device, "cy_close")){
info2325drivers/char/cyclades.cprintk("cy_close ttyC%d, count = %d\n", info->line, info->count);
info2336drivers/char/cyclades.cif ((tty->count == 1) && (info->count != 1)) {
info2345drivers/char/cyclades.c"info->count is %d\n", info->count);
info2346drivers/char/cyclades.cinfo->count = 1;
info2349drivers/char/cyclades.cprintk("cyc: %d(%d): decrementing count to %d\n", __LINE__, current->pid, info->count - 1);
info2351drivers/char/cyclades.cif (--info->count < 0) {
info2355drivers/char/cyclades.cinfo->count = 0;
info2357drivers/char/cyclades.cif (info->count)
info2363drivers/char/cyclades.cinfo->flags |= ASYNC_CLOSING;
info2368drivers/char/cyclades.cif (info->flags & ASYNC_NORMAL_ACTIVE)
info2369drivers/char/cyclades.cinfo->normal_termios = *tty->termios;
info2370drivers/char/cyclades.cif (info->flags & ASYNC_CALLOUT_ACTIVE)
info2371drivers/char/cyclades.cinfo->callout_termios = *tty->termios;
info2372drivers/char/cyclades.cif (info->flags & ASYNC_INITIALIZED)
info2374drivers/char/cyclades.cshutdown(info);
info2379drivers/char/cyclades.cinfo->event = 0;
info2380drivers/char/cyclades.cinfo->tty = 0;
info2381drivers/char/cyclades.cif (info->blocked_open) {
info2382drivers/char/cyclades.cif (info->close_delay) {
info2384drivers/char/cyclades.ccurrent->timeout = jiffies + info->close_delay;
info2387drivers/char/cyclades.cwake_up_interruptible(&info->open_wait);
info2389drivers/char/cyclades.cinfo->flags &= ~(ASYNC_NORMAL_ACTIVE|ASYNC_CALLOUT_ACTIVE|
info2391drivers/char/cyclades.cwake_up_interruptible(&info->close_wait);
info2408drivers/char/cyclades.cstruct cyclades_port * info = (struct cyclades_port *)tty->driver_data;
info2411drivers/char/cyclades.cprintk("cy_hangup ttyC%d\n", info->line); /* */
info2414drivers/char/cyclades.cif (serial_paranoia_check(info, tty->device, "cy_hangup"))
info2417drivers/char/cyclades.cshutdown(info);
info2418drivers/char/cyclades.cinfo->event = 0;
info2419drivers/char/cyclades.cinfo->count = 0;
info2423drivers/char/cyclades.cinfo->tty = 0;
info2424drivers/char/cyclades.cinfo->flags &= ~(ASYNC_NORMAL_ACTIVE|ASYNC_CALLOUT_ACTIVE);
info2425drivers/char/cyclades.cwake_up_interruptible(&info->open_wait);
info2438drivers/char/cyclades.cstruct cyclades_port *info)
info2451drivers/char/cyclades.cif (info->flags & ASYNC_CLOSING) {
info2452drivers/char/cyclades.cinterruptible_sleep_on(&info->close_wait);
info2453drivers/char/cyclades.cif (info->flags & ASYNC_HUP_NOTIFY){
info2465drivers/char/cyclades.cif (info->flags & ASYNC_NORMAL_ACTIVE){
info2468drivers/char/cyclades.cif ((info->flags & ASYNC_CALLOUT_ACTIVE) &&
info2469drivers/char/cyclades.c(info->flags & ASYNC_SESSION_LOCKOUT) &&
info2470drivers/char/cyclades.c(info->session != current->session)){
info2473drivers/char/cyclades.cif ((info->flags & ASYNC_CALLOUT_ACTIVE) &&
info2474drivers/char/cyclades.c(info->flags & ASYNC_PGRP_LOCKOUT) &&
info2475drivers/char/cyclades.c(info->pgrp != current->pgrp)){
info2478drivers/char/cyclades.cinfo->flags |= ASYNC_CALLOUT_ACTIVE;
info2487drivers/char/cyclades.cif (info->flags & ASYNC_CALLOUT_ACTIVE){
info2490drivers/char/cyclades.cinfo->flags |= ASYNC_NORMAL_ACTIVE;
info2502drivers/char/cyclades.cadd_wait_queue(&info->open_wait, &wait);
info2505drivers/char/cyclades.cinfo->line, info->count);/**/
info2507drivers/char/cyclades.cinfo->count--;
info2509drivers/char/cyclades.cprintk("cyc: %d(%d): decrementing count to %d\n", __LINE__, current->pid, info->count);
info2511drivers/char/cyclades.cinfo->blocked_open++;
info2513drivers/char/cyclades.ccinfo = &cy_card[info->card];
info2514drivers/char/cyclades.cchannel = info->line - cinfo->first_line;
info2522drivers/char/cyclades.cif (!(info->flags & ASYNC_CALLOUT_ACTIVE)){
info2535drivers/char/cyclades.c|| !(info->flags & ASYNC_INITIALIZED) ){
info2536drivers/char/cyclades.cif (info->flags & ASYNC_HUP_NOTIFY) {
info2546drivers/char/cyclades.cif (!(info->flags & ASYNC_CALLOUT_ACTIVE)
info2547drivers/char/cyclades.c&& !(info->flags & ASYNC_CLOSING)
info2560drivers/char/cyclades.cinfo->line, info->count);/**/
info2565drivers/char/cyclades.cremove_wait_queue(&info->open_wait, &wait);
info2567drivers/char/cyclades.cinfo->count++;
info2569drivers/char/cyclades.cprintk("cyc: %d(%d): incrementing count to %d\n", __LINE__, current->pid, info->count);
info2572drivers/char/cyclades.cinfo->blocked_open--;
info2575drivers/char/cyclades.cinfo->line, info->count);/**/
info2579drivers/char/cyclades.cinfo->flags |= ASYNC_NORMAL_ACTIVE;
info2590drivers/char/cyclades.cstruct cyclades_port  *info;
info2598drivers/char/cyclades.cinfo = &cy_port[line];
info2599drivers/char/cyclades.cif (info->line < 0){
info2603drivers/char/cyclades.cprintk("cy_open ttyC%d\n", info->line); /* */
info2605drivers/char/cyclades.cif (serial_paranoia_check(info, tty->device, "cy_open")){
info2609drivers/char/cyclades.cprintk("cy_open ttyC%d, count = %d\n", info->line, info->count);/**/
info2611drivers/char/cyclades.cinfo->count++;
info2613drivers/char/cyclades.cprintk("cyc: %d(%d): incrementing count to %d\n", __LINE__, current->pid, info->count);
info2615drivers/char/cyclades.ctty->driver_data = info;
info2616drivers/char/cyclades.cinfo->tty = tty;
info2625drivers/char/cyclades.cif ((info->count == 1) && (info->flags & ASYNC_SPLIT_TERMIOS)) {
info2627drivers/char/cyclades.c*tty->termios = info->normal_termios;
info2629drivers/char/cyclades.c*tty->termios = info->callout_termios;
info2634drivers/char/cyclades.cretval = startup(info);
info2639drivers/char/cyclades.cretval = block_til_ready(tty, filp, info);
info2648drivers/char/cyclades.cinfo->session = current->session;
info2649drivers/char/cyclades.cinfo->pgrp = current->pgrp;
info2765drivers/char/cyclades.cstruct cyclades_port  *info;
info2865drivers/char/cyclades.cinfo = &cy_port[port];
info2866drivers/char/cyclades.cinfo->magic = CYCLADES_MAGIC;
info2867drivers/char/cyclades.cinfo->type = PORT_CIRRUS;
info2868drivers/char/cyclades.cinfo->card = board;
info2869drivers/char/cyclades.cinfo->line = port;
info2870drivers/char/cyclades.cinfo->flags = STD_COM_FLAGS;
info2871drivers/char/cyclades.cinfo->tty = 0;
info2872drivers/char/cyclades.cinfo->xmit_fifo_size = 12;
info2873drivers/char/cyclades.cinfo->cor1 = CyPARITY_NONE|Cy_1_STOP|Cy_8_BITS;
info2874drivers/char/cyclades.cinfo->cor2 = CyETC;
info2875drivers/char/cyclades.cinfo->cor3 = 0x08; /* _very_ small receive threshold */
info2876drivers/char/cyclades.cinfo->cor4 = 0;
info2877drivers/char/cyclades.cinfo->cor5 = 0;
info2878drivers/char/cyclades.cinfo->tbpr = baud_bpr[13]; /* Tx BPR */
info2879drivers/char/cyclades.cinfo->tco = baud_co[13]; /* Tx CO */
info2880drivers/char/cyclades.cinfo->rbpr = baud_bpr[13]; /* Rx BPR */
info2881drivers/char/cyclades.cinfo->rco = baud_co[13]; /* Rx CO */
info2882drivers/char/cyclades.cinfo->close_delay = 0;
info2883drivers/char/cyclades.cinfo->x_char = 0;
info2884drivers/char/cyclades.cinfo->event = 0;
info2885drivers/char/cyclades.cinfo->count = 0;
info2889drivers/char/cyclades.cinfo->blocked_open = 0;
info2890drivers/char/cyclades.cinfo->default_threshold = 0;
info2891drivers/char/cyclades.cinfo->default_timeout = 0;
info2892drivers/char/cyclades.cinfo->tqueue.routine = do_softint;
info2893drivers/char/cyclades.cinfo->tqueue.data = info;
info2894drivers/char/cyclades.cinfo->callout_termios =cy_callout_driver.init_termios;
info2895drivers/char/cyclades.cinfo->normal_termios = cy_serial_driver.init_termios;
info2896drivers/char/cyclades.cinfo->open_wait = 0;
info2897drivers/char/cyclades.cinfo->close_wait = 0;
info2900drivers/char/cyclades.cinfo->read_status_mask = CyTIMEOUT| CySPECHAR| CyBREAK
info3123drivers/char/cyclades.cstruct cyclades_port * info;
info3126drivers/char/cyclades.cinfo = &cy_port[line_num];
info3127drivers/char/cyclades.ccard = info->card;
info3129drivers/char/cyclades.cchannel = (info->line) - (cy_card[card].first_line);
info3141drivers/char/cyclades.cinfo->card, info->line, info->flags);
info3143drivers/char/cyclades.c(long)info->tty, info->read_status_mask,
info3144drivers/char/cyclades.cinfo->timeout, info->xmit_fifo_size);
info3146drivers/char/cyclades.cinfo->cor1, info->cor2, info->cor3, info->cor4, info->cor5);
info3148drivers/char/cyclades.cinfo->tbpr, info->tco, info->rbpr, info->rco);
info3150drivers/char/cyclades.cinfo->close_delay, info->event, info->count);
info3152drivers/char/cyclades.cinfo->x_char, info->blocked_open);
info3154drivers/char/cyclades.cinfo->session, info->pgrp, (long)info->open_wait);
info93drivers/char/serial.cstatic void autoconfig(struct async_struct * info);
info94drivers/char/serial.cstatic void change_speed(struct async_struct *info);
info208drivers/char/serial.cstatic inline int serial_paranoia_check(struct async_struct *info,
info217drivers/char/serial.cif (!info) {
info221drivers/char/serial.cif (info->magic != SERIAL_MAGIC) {
info236drivers/char/serial.cstatic inline unsigned int serial_in(struct async_struct *info, int offset)
info239drivers/char/serial.cif (info->hub6) {
info240drivers/char/serial.coutb(info->hub6 - 1 + offset, info->port);
info241drivers/char/serial.creturn inb(info->port+1);
info244drivers/char/serial.creturn inb(info->port + offset);
info247drivers/char/serial.cstatic inline unsigned int serial_inp(struct async_struct *info, int offset)
info250drivers/char/serial.cif (info->hub6) {
info251drivers/char/serial.coutb(info->hub6 - 1 + offset, info->port);
info252drivers/char/serial.creturn inb_p(info->port+1);
info256drivers/char/serial.creturn inb(info->port + offset);
info258drivers/char/serial.creturn inb_p(info->port + offset);
info262drivers/char/serial.cstatic inline void serial_out(struct async_struct *info, int offset, int value)
info265drivers/char/serial.cif (info->hub6) {
info266drivers/char/serial.coutb(info->hub6 - 1 + offset, info->port);
info267drivers/char/serial.coutb(value, info->port+1);
info270drivers/char/serial.coutb(value, info->port+offset);
info273drivers/char/serial.cstatic inline void serial_outp(struct async_struct *info, int offset,
info277drivers/char/serial.cif (info->hub6) {
info278drivers/char/serial.coutb(info->hub6 - 1 + offset, info->port);
info279drivers/char/serial.coutb_p(value, info->port+1);
info283drivers/char/serial.coutb(value, info->port+offset);
info285drivers/char/serial.coutb_p(value, info->port+offset);
info299drivers/char/serial.cstruct async_struct *info = (struct async_struct *)tty->driver_data;
info302drivers/char/serial.cif (serial_paranoia_check(info, tty->device, "rs_stop"))
info306drivers/char/serial.cif (info->IER & UART_IER_THRI) {
info307drivers/char/serial.cinfo->IER &= ~UART_IER_THRI;
info308drivers/char/serial.cserial_out(info, UART_IER, info->IER);
info315drivers/char/serial.cstruct async_struct *info = (struct async_struct *)tty->driver_data;
info318drivers/char/serial.cif (serial_paranoia_check(info, tty->device, "rs_start"))
info322drivers/char/serial.cif (info->xmit_cnt && info->xmit_buf && !(info->IER & UART_IER_THRI)) {
info323drivers/char/serial.cinfo->IER |= UART_IER_THRI;
info324drivers/char/serial.cserial_out(info, UART_IER, info->IER);
info365drivers/char/serial.cstatic _INLINE_ void rs_sched_event(struct async_struct *info,
info368drivers/char/serial.cinfo->event |= 1 << event;
info369drivers/char/serial.cqueue_task_irq_off(&info->tqueue, &tq_serial);
info373drivers/char/serial.cstatic _INLINE_ void receive_chars(struct async_struct *info,
info376drivers/char/serial.cstruct tty_struct *tty = info->tty;
info381drivers/char/serial.cch = serial_inp(info, UART_RX);
info382drivers/char/serial.cif (*status & info->ignore_status_mask) {
info393drivers/char/serial.cif (info->flags & ASYNC_SAK)
info405drivers/char/serial.c*status = serial_inp(info, UART_LSR) & info->read_status_mask;
info413drivers/char/serial.cstatic _INLINE_ void transmit_chars(struct async_struct *info, int *intr_done)
info417drivers/char/serial.cif (info->x_char) {
info418drivers/char/serial.cserial_outp(info, UART_TX, info->x_char);
info419drivers/char/serial.cinfo->x_char = 0;
info424drivers/char/serial.cif ((info->xmit_cnt <= 0) || info->tty->stopped ||
info425drivers/char/serial.cinfo->tty->hw_stopped) {
info426drivers/char/serial.cinfo->IER &= ~UART_IER_THRI;
info427drivers/char/serial.cserial_out(info, UART_IER, info->IER);
info431drivers/char/serial.ccount = info->xmit_fifo_size;
info433drivers/char/serial.cserial_out(info, UART_TX, info->xmit_buf[info->xmit_tail++]);
info434drivers/char/serial.cinfo->xmit_tail = info->xmit_tail & (SERIAL_XMIT_SIZE-1);
info435drivers/char/serial.cif (--info->xmit_cnt <= 0)
info439drivers/char/serial.cif (info->xmit_cnt < WAKEUP_CHARS)
info440drivers/char/serial.crs_sched_event(info, RS_EVENT_WRITE_WAKEUP);
info448drivers/char/serial.cif (info->xmit_cnt <= 0) {
info449drivers/char/serial.cinfo->IER &= ~UART_IER_THRI;
info450drivers/char/serial.cserial_out(info, UART_IER, info->IER);
info454drivers/char/serial.cstatic _INLINE_ void check_modem_status(struct async_struct *info)
info458drivers/char/serial.cstatus = serial_in(info, UART_MSR);
info463drivers/char/serial.cinfo->icount.rng++;
info465drivers/char/serial.cinfo->icount.dsr++;
info467drivers/char/serial.cinfo->icount.dcd++;
info469drivers/char/serial.cinfo->icount.cts++;
info470drivers/char/serial.cwake_up_interruptible(&info->delta_msr_wait);
info473drivers/char/serial.cif ((info->flags & ASYNC_CHECK_CD) && (status & UART_MSR_DDCD)) {
info475drivers/char/serial.cprintk("ttys%d CD now %s...", info->line,
info479drivers/char/serial.cwake_up_interruptible(&info->open_wait);
info480drivers/char/serial.celse if (!((info->flags & ASYNC_CALLOUT_ACTIVE) &&
info481drivers/char/serial.c(info->flags & ASYNC_CALLOUT_NOHUP))) {
info485drivers/char/serial.cqueue_task_irq_off(&info->tqueue_hangup,
info489drivers/char/serial.cif (info->flags & ASYNC_CTS_FLOW) {
info490drivers/char/serial.cif (info->tty->hw_stopped) {
info495drivers/char/serial.cinfo->tty->hw_stopped = 0;
info496drivers/char/serial.cinfo->IER |= UART_IER_THRI;
info497drivers/char/serial.cserial_out(info, UART_IER, info->IER);
info498drivers/char/serial.crs_sched_event(info, RS_EVENT_WRITE_WAKEUP);
info506drivers/char/serial.cinfo->tty->hw_stopped = 1;
info507drivers/char/serial.cinfo->IER &= ~UART_IER_THRI;
info508drivers/char/serial.cserial_out(info, UART_IER, info->IER);
info520drivers/char/serial.cstruct async_struct * info;
info530drivers/char/serial.cinfo = IRQ_ports[irq];
info531drivers/char/serial.cif (!info)
info539drivers/char/serial.cif (!info->tty ||
info540drivers/char/serial.c(serial_in(info, UART_IIR) & UART_IIR_NO_INT)) {
info542drivers/char/serial.cend_mark = info;
info547drivers/char/serial.cinfo->last_active = jiffies;
info549drivers/char/serial.cstatus = serial_inp(info, UART_LSR) & info->read_status_mask;
info554drivers/char/serial.creceive_chars(info, &status);
info555drivers/char/serial.ccheck_modem_status(info);
info557drivers/char/serial.ctransmit_chars(info, 0);
info560drivers/char/serial.cinfo = info->next_port;
info561drivers/char/serial.cif (!info) {
info562drivers/char/serial.cinfo = IRQ_ports[irq];
info571drivers/char/serial.c} while (end_mark != info);
info574drivers/char/serial.cinfo->irq, first_multi, inb(multi->port_monitor));
info588drivers/char/serial.cstruct async_struct * info;
info595drivers/char/serial.cinfo = IRQ_ports[irq];
info596drivers/char/serial.cif (!info || !info->tty)
info604drivers/char/serial.cstatus = serial_inp(info, UART_LSR) & info->read_status_mask;
info609drivers/char/serial.creceive_chars(info, &status);
info610drivers/char/serial.ccheck_modem_status(info);
info612drivers/char/serial.ctransmit_chars(info, 0);
info619drivers/char/serial.c} while (!(serial_in(info, UART_IIR) & UART_IIR_NO_INT));
info620drivers/char/serial.cinfo->last_active = jiffies;
info623drivers/char/serial.cinfo->irq, first_multi, inb(multi->port_monitor));
info635drivers/char/serial.cstruct async_struct * info;
info644drivers/char/serial.cinfo = IRQ_ports[irq];
info645drivers/char/serial.cif (!info)
info657drivers/char/serial.cif (!info->tty ||
info658drivers/char/serial.c(serial_in(info, UART_IIR) & UART_IIR_NO_INT))
info661drivers/char/serial.cinfo->last_active = jiffies;
info663drivers/char/serial.cstatus = serial_inp(info, UART_LSR) & info->read_status_mask;
info668drivers/char/serial.creceive_chars(info, &status);
info669drivers/char/serial.ccheck_modem_status(info);
info671drivers/char/serial.ctransmit_chars(info, 0);
info674drivers/char/serial.cinfo = info->next_port;
info675drivers/char/serial.cif (info)
info678drivers/char/serial.cinfo = IRQ_ports[irq];
info687drivers/char/serial.cinfo->irq, first_multi,
info733drivers/char/serial.cstruct async_struct  *info = (struct async_struct *) private_;
info736drivers/char/serial.ctty = info->tty;
info740drivers/char/serial.cif (clear_bit(RS_EVENT_WRITE_WAKEUP, &info->event)) {
info759drivers/char/serial.cstruct async_struct  *info = (struct async_struct *) private_;
info762drivers/char/serial.ctty = info->tty;
info780drivers/char/serial.cstruct async_struct *info;
info785drivers/char/serial.cinfo = IRQ_ports[i];
info786drivers/char/serial.cif (!info)
info789drivers/char/serial.cif (info->next_port) {
info791drivers/char/serial.cserial_out(info, UART_IER, 0);
info792drivers/char/serial.cinfo->IER |= UART_IER_THRI;
info793drivers/char/serial.cserial_out(info, UART_IER, info->IER);
info794drivers/char/serial.cinfo = info->next_port;
info795drivers/char/serial.c} while (info);
info866drivers/char/serial.cstruct  async_struct  *info;
info869drivers/char/serial.cinfo = IRQ_ports[irq];
info870drivers/char/serial.cif (!info) {
info874drivers/char/serial.cwhile (info) {
info875drivers/char/serial.cif (info->timeout < timeout)
info876drivers/char/serial.ctimeout = info->timeout;
info877drivers/char/serial.cinfo = info->next_port;
info884drivers/char/serial.cstatic int startup(struct async_struct * info)
info899drivers/char/serial.cif (info->flags & ASYNC_INITIALIZED) {
info905drivers/char/serial.cif (!info->port || !info->type) {
info906drivers/char/serial.cif (info->tty)
info907drivers/char/serial.cset_bit(TTY_IO_ERROR, &info->tty->flags);
info912drivers/char/serial.cif (info->xmit_buf)
info915drivers/char/serial.cinfo->xmit_buf = (unsigned char *) page;
info918drivers/char/serial.cprintk("starting up ttys%d (irq %d)...", info->line, info->irq);
info925drivers/char/serial.cif (info->type == PORT_16650) {
info926drivers/char/serial.cserial_outp(info, UART_FCR, (UART_FCR_CLEAR_RCVR |
info928drivers/char/serial.cinfo->xmit_fifo_size = 1; /* disabled for now */
info929drivers/char/serial.c} else if (info->type == PORT_16550A) {
info930drivers/char/serial.cserial_outp(info, UART_FCR, (UART_FCR_CLEAR_RCVR |
info932drivers/char/serial.cinfo->xmit_fifo_size = 16;
info934drivers/char/serial.cinfo->xmit_fifo_size = 1;
info941drivers/char/serial.cif (serial_inp(info, UART_LSR) == 0xff) {
info944drivers/char/serial.cif (info->tty)
info945drivers/char/serial.cset_bit(TTY_IO_ERROR, &info->tty->flags);
info954drivers/char/serial.cif (info->irq && (!IRQ_ports[info->irq] ||
info955drivers/char/serial.c!IRQ_ports[info->irq]->next_port)) {
info956drivers/char/serial.cif (IRQ_ports[info->irq]) {
info957drivers/char/serial.cfree_irq(info->irq, NULL);
info958drivers/char/serial.cif (rs_multiport[info->irq].port1)
info965drivers/char/serial.cretval = request_irq(info->irq, handler, SA_INTERRUPT, "serial", NULL);
info969drivers/char/serial.cif (info->tty)
info971drivers/char/serial.c&info->tty->flags);
info982drivers/char/serial.c(void) serial_inp(info, UART_RX);
info983drivers/char/serial.c(void) serial_inp(info, UART_IIR);
info984drivers/char/serial.c(void) serial_inp(info, UART_MSR);
info989drivers/char/serial.cserial_outp(info, UART_LCR, UART_LCR_WLEN8);  /* reset DLAB */
info990drivers/char/serial.cif (info->flags & ASYNC_FOURPORT) {
info991drivers/char/serial.cinfo->MCR = UART_MCR_DTR | UART_MCR_RTS;
info992drivers/char/serial.cinfo->MCR_noint = UART_MCR_DTR | UART_MCR_OUT1;
info994drivers/char/serial.cinfo->MCR = UART_MCR_DTR | UART_MCR_RTS | UART_MCR_OUT2;
info995drivers/char/serial.cinfo->MCR_noint = UART_MCR_DTR | UART_MCR_RTS;
info998drivers/char/serial.cinfo->MCR |= UART_MCR_OUT1 | UART_MCR_OUT2;
info999drivers/char/serial.cinfo->MCR_noint |= UART_MCR_OUT1 | UART_MCR_OUT2;
info1001drivers/char/serial.cif (info->irq == 0)
info1002drivers/char/serial.cinfo->MCR = info->MCR_noint;
info1003drivers/char/serial.cserial_outp(info, UART_MCR, info->MCR);
info1008drivers/char/serial.cinfo->IER = UART_IER_MSI | UART_IER_RLSI | UART_IER_RDI;
info1009drivers/char/serial.cserial_outp(info, UART_IER, info->IER);  /* enable interrupts */
info1011drivers/char/serial.cif (info->flags & ASYNC_FOURPORT) {
info1013drivers/char/serial.cICP = (info->port & 0xFE0) | 0x01F;
info1021drivers/char/serial.c(void)serial_inp(info, UART_LSR);
info1022drivers/char/serial.c(void)serial_inp(info, UART_RX);
info1023drivers/char/serial.c(void)serial_inp(info, UART_IIR);
info1024drivers/char/serial.c(void)serial_inp(info, UART_MSR);
info1026drivers/char/serial.cif (info->tty)
info1027drivers/char/serial.cclear_bit(TTY_IO_ERROR, &info->tty->flags);
info1028drivers/char/serial.cinfo->xmit_cnt = info->xmit_head = info->xmit_tail = 0;
info1033drivers/char/serial.cinfo->prev_port = 0;
info1034drivers/char/serial.cinfo->next_port = IRQ_ports[info->irq];
info1035drivers/char/serial.cif (info->next_port)
info1036drivers/char/serial.cinfo->next_port->prev_port = info;
info1037drivers/char/serial.cIRQ_ports[info->irq] = info;
info1038drivers/char/serial.cfigure_IRQ_timeout(info->irq);
info1049drivers/char/serial.cchange_speed(info);
info1051drivers/char/serial.cinfo->flags |= ASYNC_INITIALIZED;
info1060drivers/char/serial.cstatic void shutdown(struct async_struct * info)
info1065drivers/char/serial.cif (!(info->flags & ASYNC_INITIALIZED))
info1069drivers/char/serial.cprintk("Shutting down serial port %d (irq %d)....", info->line,
info1070drivers/char/serial.cinfo->irq);
info1078drivers/char/serial.cif (info->next_port)
info1079drivers/char/serial.cinfo->next_port->prev_port = info->prev_port;
info1080drivers/char/serial.cif (info->prev_port)
info1081drivers/char/serial.cinfo->prev_port->next_port = info->next_port;
info1083drivers/char/serial.cIRQ_ports[info->irq] = info->next_port;
info1084drivers/char/serial.cfigure_IRQ_timeout(info->irq);
info1089drivers/char/serial.cif (info->irq && (!IRQ_ports[info->irq] ||
info1090drivers/char/serial.c!IRQ_ports[info->irq]->next_port)) {
info1091drivers/char/serial.cif (IRQ_ports[info->irq]) {
info1092drivers/char/serial.cfree_irq(info->irq, NULL);
info1093drivers/char/serial.cretval = request_irq(info->irq, rs_interrupt_single, SA_INTERRUPT, "serial", NULL);
info1099drivers/char/serial.cfree_irq(info->irq, NULL);
info1102drivers/char/serial.cif (info->xmit_buf) {
info1103drivers/char/serial.cfree_page((unsigned long) info->xmit_buf);
info1104drivers/char/serial.cinfo->xmit_buf = 0;
info1107drivers/char/serial.cinfo->IER = 0;
info1108drivers/char/serial.cserial_outp(info, UART_IER, 0x00);  /* disable all intrs */
info1109drivers/char/serial.cif (info->flags & ASYNC_FOURPORT) {
info1111drivers/char/serial.c(void) inb((info->port & 0xFE0) | 0x01F);
info1114drivers/char/serial.cif (!info->tty || (info->tty->termios->c_cflag & HUPCL)) {
info1115drivers/char/serial.cinfo->MCR &= ~(UART_MCR_DTR|UART_MCR_RTS);
info1116drivers/char/serial.cinfo->MCR_noint &= ~(UART_MCR_DTR|UART_MCR_RTS);
info1118drivers/char/serial.cserial_outp(info, UART_MCR, info->MCR_noint);
info1121drivers/char/serial.cserial_outp(info, UART_FCR, (UART_FCR_CLEAR_RCVR |
info1123drivers/char/serial.c(void)serial_in(info, UART_RX);    /* read data port to reset things */
info1125drivers/char/serial.cif (info->tty)
info1126drivers/char/serial.cset_bit(TTY_IO_ERROR, &info->tty->flags);
info1128drivers/char/serial.cinfo->flags &= ~ASYNC_INITIALIZED;
info1136drivers/char/serial.cstatic void change_speed(struct async_struct *info)
info1143drivers/char/serial.cif (!info->tty || !info->tty->termios)
info1145drivers/char/serial.ccflag = info->tty->termios->c_cflag;
info1146drivers/char/serial.cif (!(port = info->port))
info1152drivers/char/serial.cinfo->tty->termios->c_cflag &= ~CBAUDEX;
info1157drivers/char/serial.cif ((info->flags & ASYNC_SPD_MASK) == ASYNC_SPD_HI)
info1159drivers/char/serial.cif ((info->flags & ASYNC_SPD_MASK) == ASYNC_SPD_VHI)
info1161drivers/char/serial.cif ((info->flags & ASYNC_SPD_MASK) == ASYNC_SPD_CUST)
info1162drivers/char/serial.cquot = info->custom_divisor;
info1165drivers/char/serial.cinfo->timeout = ((info->xmit_fifo_size*HZ*15*quot) /
info1166drivers/char/serial.cinfo->baud_base) + 2;
info1168drivers/char/serial.cquot = (2*info->baud_base / 269);
info1169drivers/char/serial.cinfo->timeout = (info->xmit_fifo_size*HZ*30/269) + 2;
info1171drivers/char/serial.cquot = info->baud_base / baud_table[i];
info1172drivers/char/serial.cinfo->timeout = (info->xmit_fifo_size*HZ*15/baud_table[i]) + 2;
info1175drivers/char/serial.cinfo->timeout = 0;
info1178drivers/char/serial.cinfo->MCR |= UART_MCR_DTR;
info1179drivers/char/serial.cinfo->MCR_noint |= UART_MCR_DTR;
info1181drivers/char/serial.cserial_out(info, UART_MCR, info->MCR);
info1184drivers/char/serial.cinfo->MCR &= ~UART_MCR_DTR;
info1185drivers/char/serial.cinfo->MCR_noint &= ~UART_MCR_DTR;
info1187drivers/char/serial.cserial_out(info, UART_MCR, info->MCR);
info1206drivers/char/serial.cif (info->type == PORT_16550A) {
info1207drivers/char/serial.cif ((info->baud_base / quot) < 2400)
info1211drivers/char/serial.c} else if (info->type == PORT_16650) {
info1227drivers/char/serial.cinfo->IER &= ~UART_IER_MSI;
info1229drivers/char/serial.cinfo->flags |= ASYNC_CTS_FLOW;
info1230drivers/char/serial.cinfo->IER |= UART_IER_MSI;
info1232drivers/char/serial.cinfo->flags &= ~ASYNC_CTS_FLOW;
info1234drivers/char/serial.cinfo->flags &= ~ASYNC_CHECK_CD;
info1236drivers/char/serial.cinfo->flags |= ASYNC_CHECK_CD;
info1237drivers/char/serial.cinfo->IER |= UART_IER_MSI;
info1239drivers/char/serial.cserial_out(info, UART_IER, info->IER);
info1244drivers/char/serial.cinfo->read_status_mask = UART_LSR_OE | UART_LSR_THRE | UART_LSR_DR;
info1245drivers/char/serial.cif (I_INPCK(info->tty))
info1246drivers/char/serial.cinfo->read_status_mask |= UART_LSR_FE | UART_LSR_PE;
info1247drivers/char/serial.cif (I_BRKINT(info->tty) || I_PARMRK(info->tty))
info1248drivers/char/serial.cinfo->read_status_mask |= UART_LSR_BI;
info1250drivers/char/serial.cinfo->ignore_status_mask = 0;
info1251drivers/char/serial.cif (I_IGNPAR(info->tty)) {
info1252drivers/char/serial.cinfo->ignore_status_mask |= UART_LSR_PE | UART_LSR_FE;
info1253drivers/char/serial.cinfo->read_status_mask |= UART_LSR_PE | UART_LSR_FE;
info1255drivers/char/serial.cif (I_IGNBRK(info->tty)) {
info1256drivers/char/serial.cinfo->ignore_status_mask |= UART_LSR_BI;
info1257drivers/char/serial.cinfo->read_status_mask |= UART_LSR_BI;
info1262drivers/char/serial.cif (I_IGNPAR(info->tty)) {
info1263drivers/char/serial.cinfo->ignore_status_mask |= UART_LSR_OE;
info1264drivers/char/serial.cinfo->read_status_mask |= UART_LSR_OE;
info1269drivers/char/serial.cserial_outp(info, UART_LCR, cval | UART_LCR_DLAB);  /* set DLAB */
info1270drivers/char/serial.cserial_outp(info, UART_DLL, quot & 0xff);  /* LS of divisor */
info1271drivers/char/serial.cserial_outp(info, UART_DLM, quot >> 8);    /* MS of divisor */
info1272drivers/char/serial.cserial_outp(info, UART_LCR, cval);    /* reset DLAB */
info1273drivers/char/serial.cserial_outp(info, UART_FCR, fcr);   /* set fcr */
info1279drivers/char/serial.cstruct async_struct *info = (struct async_struct *)tty->driver_data;
info1282drivers/char/serial.cif (serial_paranoia_check(info, tty->device, "rs_put_char"))
info1285drivers/char/serial.cif (!tty || !info->xmit_buf)
info1289drivers/char/serial.cif (info->xmit_cnt >= SERIAL_XMIT_SIZE - 1) {
info1294drivers/char/serial.cinfo->xmit_buf[info->xmit_head++] = ch;
info1295drivers/char/serial.cinfo->xmit_head &= SERIAL_XMIT_SIZE-1;
info1296drivers/char/serial.cinfo->xmit_cnt++;
info1302drivers/char/serial.cstruct async_struct *info = (struct async_struct *)tty->driver_data;
info1305drivers/char/serial.cif (serial_paranoia_check(info, tty->device, "rs_flush_chars"))
info1308drivers/char/serial.cif (info->xmit_cnt <= 0 || tty->stopped || tty->hw_stopped ||
info1309drivers/char/serial.c!info->xmit_buf)
info1313drivers/char/serial.cinfo->IER |= UART_IER_THRI;
info1314drivers/char/serial.cserial_out(info, UART_IER, info->IER);
info1322drivers/char/serial.cstruct async_struct *info = (struct async_struct *)tty->driver_data;
info1325drivers/char/serial.cif (serial_paranoia_check(info, tty->device, "rs_write"))
info1328drivers/char/serial.cif (!tty || !info->xmit_buf || !tmp_buf)
info1336drivers/char/serial.cc = MIN(count, MIN(SERIAL_XMIT_SIZE - info->xmit_cnt - 1,
info1337drivers/char/serial.cSERIAL_XMIT_SIZE - info->xmit_head));
info1343drivers/char/serial.cc = MIN(c, MIN(SERIAL_XMIT_SIZE - info->xmit_cnt - 1,
info1344drivers/char/serial.cSERIAL_XMIT_SIZE - info->xmit_head));
info1345drivers/char/serial.cmemcpy(info->xmit_buf + info->xmit_head, tmp_buf, c);
info1347drivers/char/serial.cmemcpy(info->xmit_buf + info->xmit_head, buf, c);
info1348drivers/char/serial.cinfo->xmit_head = (info->xmit_head + c) & (SERIAL_XMIT_SIZE-1);
info1349drivers/char/serial.cinfo->xmit_cnt += c;
info1357drivers/char/serial.cif (info->xmit_cnt && !tty->stopped && !tty->hw_stopped &&
info1358drivers/char/serial.c!(info->IER & UART_IER_THRI)) {
info1359drivers/char/serial.cinfo->IER |= UART_IER_THRI;
info1360drivers/char/serial.cserial_out(info, UART_IER, info->IER);
info1368drivers/char/serial.cstruct async_struct *info = (struct async_struct *)tty->driver_data;
info1371drivers/char/serial.cif (serial_paranoia_check(info, tty->device, "rs_write_room"))
info1373drivers/char/serial.cret = SERIAL_XMIT_SIZE - info->xmit_cnt - 1;
info1381drivers/char/serial.cstruct async_struct *info = (struct async_struct *)tty->driver_data;
info1383drivers/char/serial.cif (serial_paranoia_check(info, tty->device, "rs_chars_in_buffer"))
info1385drivers/char/serial.creturn info->xmit_cnt;
info1390drivers/char/serial.cstruct async_struct *info = (struct async_struct *)tty->driver_data;
info1392drivers/char/serial.cif (serial_paranoia_check(info, tty->device, "rs_flush_buffer"))
info1395drivers/char/serial.cinfo->xmit_cnt = info->xmit_head = info->xmit_tail = 0;
info1413drivers/char/serial.cstruct async_struct *info = (struct async_struct *)tty->driver_data;
info1421drivers/char/serial.cif (serial_paranoia_check(info, tty->device, "rs_throttle"))
info1425drivers/char/serial.cinfo->x_char = STOP_CHAR(tty);
info1427drivers/char/serial.cinfo->MCR &= ~UART_MCR_RTS;
info1428drivers/char/serial.cinfo->MCR_noint &= ~UART_MCR_RTS;
info1430drivers/char/serial.cserial_out(info, UART_MCR, info->MCR);
info1436drivers/char/serial.cstruct async_struct *info = (struct async_struct *)tty->driver_data;
info1444drivers/char/serial.cif (serial_paranoia_check(info, tty->device, "rs_unthrottle"))
info1448drivers/char/serial.cif (info->x_char)
info1449drivers/char/serial.cinfo->x_char = 0;
info1451drivers/char/serial.cinfo->x_char = START_CHAR(tty);
info1453drivers/char/serial.cinfo->MCR |= UART_MCR_RTS;
info1454drivers/char/serial.cinfo->MCR_noint |= UART_MCR_RTS;
info1456drivers/char/serial.cserial_out(info, UART_MCR, info->MCR);
info1466drivers/char/serial.cstatic int get_serial_info(struct async_struct * info,
info1474drivers/char/serial.ctmp.type = info->type;
info1475drivers/char/serial.ctmp.line = info->line;
info1476drivers/char/serial.ctmp.port = info->port;
info1477drivers/char/serial.ctmp.irq = info->irq;
info1478drivers/char/serial.ctmp.flags = info->flags;
info1479drivers/char/serial.ctmp.baud_base = info->baud_base;
info1480drivers/char/serial.ctmp.close_delay = info->close_delay;
info1481drivers/char/serial.ctmp.closing_wait = info->closing_wait;
info1482drivers/char/serial.ctmp.custom_divisor = info->custom_divisor;
info1483drivers/char/serial.ctmp.hub6 = info->hub6;
info1488drivers/char/serial.cstatic int set_serial_info(struct async_struct * info,
info1499drivers/char/serial.cold_info = *info;
info1501drivers/char/serial.cchange_irq = new_serial.irq != info->irq;
info1502drivers/char/serial.cchange_port = (new_serial.port != info->port) || (new_serial.hub6 != info->hub6);
info1506drivers/char/serial.c(new_serial.baud_base != info->baud_base) ||
info1507drivers/char/serial.c(new_serial.type != info->type) ||
info1508drivers/char/serial.c(new_serial.close_delay != info->close_delay) ||
info1510drivers/char/serial.c(info->flags & ~ASYNC_USR_MASK)))
info1512drivers/char/serial.cinfo->flags = ((info->flags & ~ASYNC_USR_MASK) |
info1514drivers/char/serial.cinfo->custom_divisor = new_serial.custom_divisor;
info1529drivers/char/serial.cif ((info != &rs_table[i]) &&
info1535drivers/char/serial.cif ((change_port || change_irq) && (info->count > 1))
info1543drivers/char/serial.cinfo->baud_base = new_serial.baud_base;
info1544drivers/char/serial.cinfo->flags = ((info->flags & ~ASYNC_FLAGS) |
info1546drivers/char/serial.cinfo->custom_divisor = new_serial.custom_divisor;
info1547drivers/char/serial.cinfo->type = new_serial.type;
info1548drivers/char/serial.cinfo->close_delay = new_serial.close_delay * HZ/100;
info1549drivers/char/serial.cinfo->closing_wait = new_serial.closing_wait * HZ/100;
info1551drivers/char/serial.crelease_region(info->port,8);
info1557drivers/char/serial.cshutdown(info);
info1558drivers/char/serial.cinfo->irq = new_serial.irq;
info1559drivers/char/serial.cinfo->port = new_serial.port;
info1560drivers/char/serial.cinfo->hub6 = new_serial.hub6;
info1562drivers/char/serial.cif(info->type != PORT_UNKNOWN)
info1563drivers/char/serial.crequest_region(info->port,8,"serial(set)");
info1567drivers/char/serial.cif (!info->port || !info->type)
info1569drivers/char/serial.cif (info->flags & ASYNC_INITIALIZED) {
info1571drivers/char/serial.c(info->flags & ASYNC_SPD_MASK)) ||
info1572drivers/char/serial.c(old_info.custom_divisor != info->custom_divisor))
info1573drivers/char/serial.cchange_speed(info);
info1575drivers/char/serial.cretval = startup(info);
info1590drivers/char/serial.cstatic int get_lsr_info(struct async_struct * info, unsigned int *value)
info1596drivers/char/serial.cstatus = serial_in(info, UART_LSR);
info1604drivers/char/serial.cstatic int get_modem_info(struct async_struct * info, unsigned int *value)
info1609drivers/char/serial.ccontrol = info->MCR;
info1611drivers/char/serial.cstatus = serial_in(info, UART_MSR);
info1623drivers/char/serial.cstatic int set_modem_info(struct async_struct * info, unsigned int cmd,
info1636drivers/char/serial.cinfo->MCR |= UART_MCR_RTS;
info1637drivers/char/serial.cinfo->MCR_noint |= UART_MCR_RTS;
info1640drivers/char/serial.cinfo->MCR |= UART_MCR_DTR;
info1641drivers/char/serial.cinfo->MCR_noint |= UART_MCR_DTR;
info1646drivers/char/serial.cinfo->MCR &= ~UART_MCR_RTS;
info1647drivers/char/serial.cinfo->MCR_noint &= ~UART_MCR_RTS;
info1650drivers/char/serial.cinfo->MCR &= ~UART_MCR_DTR;
info1651drivers/char/serial.cinfo->MCR_noint &= ~UART_MCR_DTR;
info1655drivers/char/serial.cinfo->MCR = ((info->MCR & ~(UART_MCR_RTS | UART_MCR_DTR))
info1658drivers/char/serial.cinfo->MCR_noint = ((info->MCR_noint
info1667drivers/char/serial.cserial_out(info, UART_MCR, info->MCR);
info1672drivers/char/serial.cstatic int do_autoconfig(struct async_struct * info)
info1679drivers/char/serial.cif (info->count > 1)
info1682drivers/char/serial.cshutdown(info);
info1685drivers/char/serial.cautoconfig(info);
info1688drivers/char/serial.cretval = startup(info);
info1698drivers/char/serial.cstatic void send_break(  struct async_struct * info, int duration)
info1700drivers/char/serial.cif (!info->port)
info1705drivers/char/serial.cserial_out(info, UART_LCR, serial_inp(info, UART_LCR) | UART_LCR_SBC);
info1707drivers/char/serial.cserial_out(info, UART_LCR, serial_inp(info, UART_LCR) & ~UART_LCR_SBC);
info1755drivers/char/serial.cstatic int get_multiport_struct(struct async_struct * info,
info1761drivers/char/serial.cmulti = &rs_multiport[info->irq];
info1781drivers/char/serial.cret.irq = info->irq;
info1788drivers/char/serial.cstatic int set_multiport_struct(struct async_struct * info,
info1804drivers/char/serial.cif (new_multi.irq != info->irq || info->irq == 0 ||
info1805drivers/char/serial.c!IRQ_ports[info->irq])
info1808drivers/char/serial.cmulti = &rs_multiport[info->irq];
info1847drivers/char/serial.cif (IRQ_ports[info->irq]->next_port &&
info1849drivers/char/serial.cfree_irq(info->irq, NULL);
info1855drivers/char/serial.cretval = request_irq(info->irq, handler, SA_INTERRUPT,
info1870drivers/char/serial.cstruct async_struct * info = (struct async_struct *)tty->driver_data;
info1875drivers/char/serial.cif (serial_paranoia_check(info, tty->device, "rs_ioctl"))
info1893drivers/char/serial.csend_break(info, HZ/4);  /* 1/4 second */
info1900drivers/char/serial.csend_break(info, arg ? arg*(HZ/10) : HZ/4);
info1920drivers/char/serial.creturn get_modem_info(info, (unsigned int *) arg);
info1924drivers/char/serial.creturn set_modem_info(info, cmd, (unsigned int *) arg);
info1930drivers/char/serial.creturn get_serial_info(info,
info1933drivers/char/serial.creturn set_serial_info(info,
info1936drivers/char/serial.creturn do_autoconfig(info);
info1952drivers/char/serial.creturn get_lsr_info(info, (unsigned int *) arg);
info1968drivers/char/serial.cinfo, sizeof(struct async_struct));
info1976drivers/char/serial.creturn get_multiport_struct(info,
info1979drivers/char/serial.creturn set_multiport_struct(info,
info1989drivers/char/serial.ccprev = info->icount;  /* note the counters on entry */
info1992drivers/char/serial.cinterruptible_sleep_on(&info->delta_msr_wait);
info1997drivers/char/serial.ccnow = info->icount;  /* atomic copy */
info2021drivers/char/serial.ccnow = info->icount;
info2038drivers/char/serial.cstruct async_struct *info = (struct async_struct *)tty->driver_data;
info2043drivers/char/serial.cchange_speed(info);
info2060drivers/char/serial.cwake_up_interruptible(&info->open_wait);
info2076drivers/char/serial.cstruct async_struct * info = (struct async_struct *)tty->driver_data;
info2080drivers/char/serial.cif (!info || serial_paranoia_check(info, tty->device, "rs_close"))
info2091drivers/char/serial.cprintk("rs_close ttys%d, count = %d\n", info->line, info->count);
info2093drivers/char/serial.cif ((tty->count == 1) && (info->count != 1)) {
info2102drivers/char/serial.c"info->count is %d\n", info->count);
info2103drivers/char/serial.cinfo->count = 1;
info2105drivers/char/serial.cif (--info->count < 0) {
info2107drivers/char/serial.cinfo->line, info->count);
info2108drivers/char/serial.cinfo->count = 0;
info2110drivers/char/serial.cif (info->count) {
info2114drivers/char/serial.cinfo->flags |= ASYNC_CLOSING;
info2119drivers/char/serial.cif (info->flags & ASYNC_NORMAL_ACTIVE)
info2120drivers/char/serial.cinfo->normal_termios = *tty->termios;
info2121drivers/char/serial.cif (info->flags & ASYNC_CALLOUT_ACTIVE)
info2122drivers/char/serial.cinfo->callout_termios = *tty->termios;
info2128drivers/char/serial.cif (info->closing_wait != ASYNC_CLOSING_WAIT_NONE)
info2129drivers/char/serial.ctty_wait_until_sent(tty, info->closing_wait);
info2136drivers/char/serial.cinfo->IER &= ~UART_IER_RLSI;
info2137drivers/char/serial.cinfo->read_status_mask &= ~UART_LSR_DR;
info2138drivers/char/serial.cif (info->flags & ASYNC_INITIALIZED) {
info2139drivers/char/serial.cserial_out(info, UART_IER, info->IER);
info2146drivers/char/serial.cwhile (!(serial_inp(info, UART_LSR) & UART_LSR_TEMT)) {
info2148drivers/char/serial.ccurrent->timeout = jiffies + info->timeout;
info2154drivers/char/serial.cshutdown(info);
info2160drivers/char/serial.cinfo->event = 0;
info2161drivers/char/serial.cinfo->tty = 0;
info2170drivers/char/serial.cif (info->blocked_open) {
info2171drivers/char/serial.cif (info->close_delay) {
info2173drivers/char/serial.ccurrent->timeout = jiffies + info->close_delay;
info2176drivers/char/serial.cwake_up_interruptible(&info->open_wait);
info2178drivers/char/serial.cinfo->flags &= ~(ASYNC_NORMAL_ACTIVE|ASYNC_CALLOUT_ACTIVE|
info2180drivers/char/serial.cwake_up_interruptible(&info->close_wait);
info2189drivers/char/serial.cstruct async_struct * info = (struct async_struct *)tty->driver_data;
info2191drivers/char/serial.cif (serial_paranoia_check(info, tty->device, "rs_hangup"))
info2195drivers/char/serial.cshutdown(info);
info2196drivers/char/serial.cinfo->event = 0;
info2197drivers/char/serial.cinfo->count = 0;
info2198drivers/char/serial.cinfo->flags &= ~(ASYNC_NORMAL_ACTIVE|ASYNC_CALLOUT_ACTIVE);
info2199drivers/char/serial.cinfo->tty = 0;
info2200drivers/char/serial.cwake_up_interruptible(&info->open_wait);
info2209drivers/char/serial.cstruct async_struct *info)
info2220drivers/char/serial.c(info->flags & ASYNC_CLOSING)) {
info2221drivers/char/serial.cif (info->flags & ASYNC_CLOSING)
info2222drivers/char/serial.cinterruptible_sleep_on(&info->close_wait);
info2224drivers/char/serial.cif (info->flags & ASYNC_HUP_NOTIFY)
info2238drivers/char/serial.cif (info->flags & ASYNC_NORMAL_ACTIVE)
info2240drivers/char/serial.cif ((info->flags & ASYNC_CALLOUT_ACTIVE) &&
info2241drivers/char/serial.c(info->flags & ASYNC_SESSION_LOCKOUT) &&
info2242drivers/char/serial.c(info->session != current->session))
info2244drivers/char/serial.cif ((info->flags & ASYNC_CALLOUT_ACTIVE) &&
info2245drivers/char/serial.c(info->flags & ASYNC_PGRP_LOCKOUT) &&
info2246drivers/char/serial.c(info->pgrp != current->pgrp))
info2248drivers/char/serial.cinfo->flags |= ASYNC_CALLOUT_ACTIVE;
info2258drivers/char/serial.cif (info->flags & ASYNC_CALLOUT_ACTIVE)
info2260drivers/char/serial.cinfo->flags |= ASYNC_NORMAL_ACTIVE;
info2264drivers/char/serial.cif (info->flags & ASYNC_CALLOUT_ACTIVE) {
info2265drivers/char/serial.cif (info->normal_termios.c_cflag & CLOCAL)
info2280drivers/char/serial.cadd_wait_queue(&info->open_wait, &wait);
info2283drivers/char/serial.cinfo->line, info->count);
info2287drivers/char/serial.cinfo->count--;
info2289drivers/char/serial.cinfo->blocked_open++;
info2292drivers/char/serial.cif (!(info->flags & ASYNC_CALLOUT_ACTIVE))
info2293drivers/char/serial.cserial_out(info, UART_MCR,
info2294drivers/char/serial.cserial_inp(info, UART_MCR) |
info2299drivers/char/serial.c!(info->flags & ASYNC_INITIALIZED)) {
info2301drivers/char/serial.cif (info->flags & ASYNC_HUP_NOTIFY)
info2310drivers/char/serial.cif (!(info->flags & ASYNC_CALLOUT_ACTIVE) &&
info2311drivers/char/serial.c!(info->flags & ASYNC_CLOSING) &&
info2312drivers/char/serial.c(do_clocal || (serial_in(info, UART_MSR) &
info2321drivers/char/serial.cinfo->line, info->count);
info2326drivers/char/serial.cremove_wait_queue(&info->open_wait, &wait);
info2328drivers/char/serial.cinfo->count++;
info2329drivers/char/serial.cinfo->blocked_open--;
info2332drivers/char/serial.cinfo->line, info->count);
info2336drivers/char/serial.cinfo->flags |= ASYNC_NORMAL_ACTIVE;
info2348drivers/char/serial.cstruct async_struct  *info;
info2355drivers/char/serial.cinfo = rs_table + line;
info2356drivers/char/serial.cif (serial_paranoia_check(info, tty->device, "rs_open"))
info2360drivers/char/serial.cprintk("rs_open %s%d, count = %d\n", tty->driver.name, info->line,
info2361drivers/char/serial.cinfo->count);
info2363drivers/char/serial.cinfo->count++;
info2364drivers/char/serial.ctty->driver_data = info;
info2365drivers/char/serial.cinfo->tty = tty;
info2380drivers/char/serial.cretval = startup(info);
info2384drivers/char/serial.cretval = block_til_ready(tty, filp, info);
info2393drivers/char/serial.cif ((info->count == 1) && (info->flags & ASYNC_SPLIT_TERMIOS)) {
info2395drivers/char/serial.c*tty->termios = info->normal_termios;
info2397drivers/char/serial.c*tty->termios = info->callout_termios;
info2398drivers/char/serial.cchange_speed(info);
info2401drivers/char/serial.cinfo->session = current->session;
info2402drivers/char/serial.cinfo->pgrp = current->pgrp;
info2405drivers/char/serial.cprintk("rs_open ttys%d successful...", info->line);
info2443drivers/char/serial.cstatic int get_auto_irq(struct async_struct *info)
info2446drivers/char/serial.cunsigned short ICP=0, port = info->port;
info2454drivers/char/serial.csave_IER = serial_inp(info, UART_IER);
info2455drivers/char/serial.csave_MCR = serial_inp(info, UART_MCR);
info2456drivers/char/serial.cif (info->flags & ASYNC_FOURPORT)  {
info2457drivers/char/serial.cserial_outp(info, UART_MCR, UART_MCR_DTR | UART_MCR_RTS);
info2458drivers/char/serial.cserial_outp(info, UART_IER, 0x0f);  /* enable all intrs */
info2464drivers/char/serial.cserial_outp(info, UART_MCR,
info2466drivers/char/serial.cserial_outp(info, UART_IER, 0x0f);  /* enable all intrs */
info2472drivers/char/serial.c(void)serial_inp(info, UART_LSR);
info2473drivers/char/serial.c(void)serial_inp(info, UART_RX);
info2474drivers/char/serial.c(void)serial_inp(info, UART_IIR);
info2475drivers/char/serial.c(void)serial_inp(info, UART_MSR);
info2486drivers/char/serial.cserial_outp(info, UART_IER, save_IER);
info2487drivers/char/serial.cserial_outp(info, UART_MCR, save_MCR);
info2488drivers/char/serial.cif (info->flags & ASYNC_FOURPORT)
info2498drivers/char/serial.cstatic int do_auto_irq(struct async_struct * info)
info2500drivers/char/serial.cunsigned     port = info->port;
info2516drivers/char/serial.cirq_try_1 = get_auto_irq(info);
info2518drivers/char/serial.cirq_try_2 = get_auto_irq(info);
info2537drivers/char/serial.cstatic void autoconfig(struct async_struct * info)
info2540drivers/char/serial.cunsigned port = info->port;
info2543drivers/char/serial.cinfo->type = PORT_UNKNOWN;
info2559drivers/char/serial.cscratch = serial_inp(info, UART_IER);
info2560drivers/char/serial.cserial_outp(info, UART_IER, 0);
info2562drivers/char/serial.cscratch2 = serial_inp(info, UART_IER);
info2563drivers/char/serial.cserial_outp(info, UART_IER, scratch);
info2578drivers/char/serial.cif (!(info->flags & ASYNC_SKIP_TEST)) {
info2579drivers/char/serial.cscratch = serial_inp(info, UART_MCR);
info2580drivers/char/serial.cserial_outp(info, UART_MCR, UART_MCR_LOOP | scratch);
info2581drivers/char/serial.cscratch2 = serial_inp(info, UART_MSR);
info2582drivers/char/serial.cserial_outp(info, UART_MCR, UART_MCR_LOOP | 0x0A);
info2583drivers/char/serial.cstatus1 = serial_inp(info, UART_MSR) & 0xF0;
info2584drivers/char/serial.cserial_outp(info, UART_MCR, scratch);
info2585drivers/char/serial.cserial_outp(info, UART_MSR, scratch2);
info2596drivers/char/serial.cif (info->flags & ASYNC_AUTO_IRQ)
info2597drivers/char/serial.cinfo->irq = do_auto_irq(info);
info2599drivers/char/serial.cscratch2 = serial_in(info, UART_LCR);
info2600drivers/char/serial.cserial_outp(info, UART_LCR, scratch2 | UART_LCR_DLAB);
info2601drivers/char/serial.cserial_outp(info, UART_EFR, 0);  /* EFR is the same as FCR */
info2602drivers/char/serial.cserial_outp(info, UART_LCR, scratch2);
info2603drivers/char/serial.cserial_outp(info, UART_FCR, UART_FCR_ENABLE_FIFO);
info2604drivers/char/serial.cscratch = serial_in(info, UART_IIR) >> 6;
info2605drivers/char/serial.cinfo->xmit_fifo_size = 1;
info2608drivers/char/serial.cinfo->type = PORT_16450;
info2611drivers/char/serial.cinfo->type = PORT_UNKNOWN;
info2614drivers/char/serial.cinfo->type = PORT_16550;
info2617drivers/char/serial.cserial_outp(info, UART_LCR, scratch2 | UART_LCR_DLAB);
info2618drivers/char/serial.cif (serial_in(info, UART_EFR) == 0) {
info2619drivers/char/serial.cinfo->type = PORT_16650;
info2620drivers/char/serial.cinfo->xmit_fifo_size = 32;
info2622drivers/char/serial.cinfo->type = PORT_16550A;
info2623drivers/char/serial.cinfo->xmit_fifo_size = 16;
info2625drivers/char/serial.cserial_outp(info, UART_LCR, scratch2);
info2628drivers/char/serial.cif (info->type == PORT_16450) {
info2629drivers/char/serial.cscratch = serial_in(info, UART_SCR);
info2630drivers/char/serial.cserial_outp(info, UART_SCR, 0xa5);
info2631drivers/char/serial.cstatus1 = serial_in(info, UART_SCR);
info2632drivers/char/serial.cserial_outp(info, UART_SCR, 0x5a);
info2633drivers/char/serial.cstatus2 = serial_in(info, UART_SCR);
info2634drivers/char/serial.cserial_outp(info, UART_SCR, scratch);
info2637drivers/char/serial.cinfo->type = PORT_8250;
info2639drivers/char/serial.crequest_region(info->port,8,"serial(auto)");
info2649drivers/char/serial.cserial_outp(info, UART_MCR, 0x0c);
info2651drivers/char/serial.cserial_outp(info, UART_MCR, 0x00);
info2653drivers/char/serial.cserial_outp(info, UART_FCR, (UART_FCR_CLEAR_RCVR |
info2655drivers/char/serial.c(void)serial_in(info, UART_RX);
info2666drivers/char/serial.cstruct async_struct * info;
info2733drivers/char/serial.cfor (i = 0, info = rs_table; i < NR_PORTS; i++,info++) {
info2734drivers/char/serial.cinfo->magic = SERIAL_MAGIC;
info2735drivers/char/serial.cinfo->line = i;
info2736drivers/char/serial.cinfo->tty = 0;
info2737drivers/char/serial.cinfo->type = PORT_UNKNOWN;
info2738drivers/char/serial.cinfo->custom_divisor = 0;
info2739drivers/char/serial.cinfo->close_delay = 5*HZ/10;
info2740drivers/char/serial.cinfo->closing_wait = 30*HZ;
info2741drivers/char/serial.cinfo->x_char = 0;
info2742drivers/char/serial.cinfo->event = 0;
info2743drivers/char/serial.cinfo->count = 0;
info2744drivers/char/serial.cinfo->blocked_open = 0;
info2745drivers/char/serial.cinfo->tqueue.routine = do_softint;
info2746drivers/char/serial.cinfo->tqueue.data = info;
info2747drivers/char/serial.cinfo->tqueue_hangup.routine = do_serial_hangup;
info2748drivers/char/serial.cinfo->tqueue_hangup.data = info;
info2749drivers/char/serial.cinfo->callout_termios =callout_driver.init_termios;
info2750drivers/char/serial.cinfo->normal_termios = serial_driver.init_termios;
info2751drivers/char/serial.cinfo->open_wait = 0;
info2752drivers/char/serial.cinfo->close_wait = 0;
info2753drivers/char/serial.cinfo->delta_msr_wait = 0;
info2754drivers/char/serial.cinfo->icount.cts = info->icount.dsr = 
info2755drivers/char/serial.cinfo->icount.rng = info->icount.dcd = 0;
info2756drivers/char/serial.cinfo->next_port = 0;
info2757drivers/char/serial.cinfo->prev_port = 0;
info2758drivers/char/serial.cif (info->irq == 2)
info2759drivers/char/serial.cinfo->irq = 9;
info2760drivers/char/serial.cif (!(info->flags & ASYNC_BOOT_AUTOCONF))
info2762drivers/char/serial.cautoconfig(info);
info2763drivers/char/serial.cif (info->type == PORT_UNKNOWN)
info2765drivers/char/serial.cprintk("tty%02d%s at 0x%04x (irq = %d)", info->line, 
info2766drivers/char/serial.c(info->flags & ASYNC_FOURPORT) ? " FourPort" : "",
info2767drivers/char/serial.cinfo->port, info->irq);
info2768drivers/char/serial.cswitch (info->type) {
info2800drivers/char/serial.cstruct async_struct *info;
info2818drivers/char/serial.cinfo = &rs_table[i];
info2825drivers/char/serial.cinfo->irq = req->irq;
info2826drivers/char/serial.cinfo->port = req->port;
info2827drivers/char/serial.cautoconfig(info);
info2828drivers/char/serial.cif (info->type == PORT_UNKNOWN) {
info2833drivers/char/serial.cprintk("tty%02d at 0x%04x (irq = %d)", info->line, 
info2834drivers/char/serial.cinfo->port, info->irq);
info2835drivers/char/serial.cswitch (info->type) {
info2848drivers/char/serial.creturn info->line;
info2854drivers/char/serial.cstruct async_struct *info = &rs_table[line];
info2858drivers/char/serial.cif (info->tty)
info2859drivers/char/serial.ctty_hangup(info->tty);
info2860drivers/char/serial.cinfo->type = PORT_UNKNOWN;
info2861drivers/char/serial.cprintk("tty%02d unloaded\n", info->line);
info359drivers/isdn/isdn_common.cisdn_tty_modem_result(2, &dev->mdm.info[mi]);
info419drivers/isdn/isdn_common.cif (dev->mdm.info[mi].flags &
info446drivers/isdn/isdn_common.cif (dev->mdm.info[mi].flags &
info450drivers/isdn/isdn_common.cisdn_tty_modem_result(7, &dev->mdm.info[mi]);
info453drivers/isdn/isdn_common.cisdn_tty_modem_result(3, &dev->mdm.info[mi]);
info457drivers/isdn/isdn_common.cisdn_tty_modem_hup(&dev->mdm.info[mi]);
info480drivers/isdn/isdn_common.cif (dev->mdm.info[mi].flags &
info486drivers/isdn/isdn_common.cisdn_tty_modem_result(5, &dev->mdm.info[mi]);
info502drivers/isdn/isdn_common.cif (dev->mdm.info[mi].flags &
info506drivers/isdn/isdn_common.cisdn_tty_modem_result(3, &dev->mdm.info[mi]);
info510drivers/isdn/isdn_common.cisdn_tty_modem_hup(&dev->mdm.info[mi]);
info525drivers/isdn/isdn_common.cif (dev->mdm.info[mi].flags &
info529drivers/isdn/isdn_common.cisdn_tty_modem_result(6, &dev->mdm.info[mi]);
info533drivers/isdn/isdn_common.cisdn_tty_modem_result(3, &dev->mdm.info[mi]);
info548drivers/isdn/isdn_common.cdev->mdm.info[i].isdn_driver = -1;
info549drivers/isdn/isdn_common.cdev->mdm.info[i].isdn_channel = -1;
info1821drivers/isdn/isdn_common.ckfree(dev->mdm.info[i].xmit_buf);
info1877drivers/isdn/isdn_common.ckfree(dev->mdm.info[i].xmit_buf - 4);
info62drivers/isdn/isdn_tty.cif ((tty = dev->mdm.info[i].tty)) {
info63drivers/isdn/isdn_tty.cif (dev->mdm.info[i].MCR & UART_MCR_RTS) {
info94drivers/isdn/isdn_tty.cmodem_info *info;
info102drivers/isdn/isdn_tty.cinfo = &dev->mdm.info[midx];
info103drivers/isdn/isdn_tty.cif ((tty = info->tty)) {
info104drivers/isdn/isdn_tty.cif (info->MCR & UART_MCR_RTS) {
info107drivers/isdn/isdn_tty.cr = isdn_readbchan(info->isdn_driver, info->isdn_channel,
info142drivers/isdn/isdn_tty.cstatic void isdn_tty_dial(char *n, modem_info * info, atemu * m)
info153drivers/isdn/isdn_tty.cisdn_tty_modem_result(6, info);
info156drivers/isdn/isdn_tty.cinfo->isdn_driver = dev->drvmap[i];
info157drivers/isdn/isdn_tty.cinfo->isdn_channel = dev->chanmap[i];
info158drivers/isdn/isdn_tty.cinfo->drv_index = i;
info159drivers/isdn/isdn_tty.cdev->m_idx[i] = info->line;
info163drivers/isdn/isdn_tty.ccmd.driver = info->isdn_driver;
info164drivers/isdn/isdn_tty.ccmd.arg = info->isdn_channel;
info166drivers/isdn/isdn_tty.cdev->drv[info->isdn_driver]->interface->command(&cmd);
info167drivers/isdn/isdn_tty.cstrcpy(cmd.num, isdn_map_eaz2msn(m->msn, info->isdn_driver));
info168drivers/isdn/isdn_tty.ccmd.driver = info->isdn_driver;
info170drivers/isdn/isdn_tty.cdev->drv[info->isdn_driver]->interface->command(&cmd);
info171drivers/isdn/isdn_tty.ccmd.driver = info->isdn_driver;
info173drivers/isdn/isdn_tty.ccmd.arg = info->isdn_channel + (m->mdmreg[14] << 8);
info174drivers/isdn/isdn_tty.cdev->drv[info->isdn_driver]->interface->command(&cmd);
info175drivers/isdn/isdn_tty.ccmd.driver = info->isdn_driver;
info177drivers/isdn/isdn_tty.ccmd.arg = info->isdn_channel + (m->mdmreg[15] << 8);
info178drivers/isdn/isdn_tty.cdev->drv[info->isdn_driver]->interface->command(&cmd);
info179drivers/isdn/isdn_tty.ccmd.driver = info->isdn_driver;
info180drivers/isdn/isdn_tty.ccmd.arg = info->isdn_channel;
info181drivers/isdn/isdn_tty.csprintf(cmd.num, "%s,%s,%d,%d", n, isdn_map_eaz2msn(m->msn, info->isdn_driver),
info184drivers/isdn/isdn_tty.cdev->mdm.dialing[info->line] = 1;
info187drivers/isdn/isdn_tty.cdev->drv[info->isdn_driver]->interface->command(&cmd);
info193drivers/isdn/isdn_tty.cvoid isdn_tty_modem_hup(modem_info * info)
info197drivers/isdn/isdn_tty.cdev->mdm.rcvsched[info->line] = 0;
info198drivers/isdn/isdn_tty.cdev->mdm.online[info->line] = 0;
info199drivers/isdn/isdn_tty.cif (info->isdn_driver >= 0) {
info200drivers/isdn/isdn_tty.ccmd.driver = info->isdn_driver;
info202drivers/isdn/isdn_tty.ccmd.arg = info->isdn_channel;
info203drivers/isdn/isdn_tty.cdev->drv[info->isdn_driver]->interface->command(&cmd);
info204drivers/isdn/isdn_tty.cisdn_all_eaz(info->isdn_driver, info->isdn_channel);
info205drivers/isdn/isdn_tty.cisdn_free_channel(info->isdn_driver, info->isdn_channel, ISDN_USAGE_MODEM);
info207drivers/isdn/isdn_tty.cdev->m_idx[info->drv_index] = -1;
info208drivers/isdn/isdn_tty.cinfo->isdn_driver = -1;
info209drivers/isdn/isdn_tty.cinfo->isdn_channel = -1;
info210drivers/isdn/isdn_tty.cinfo->drv_index = -1;
info213drivers/isdn/isdn_tty.cstatic inline int isdn_tty_paranoia_check(modem_info * info, dev_t device, const char *routine)
info216drivers/isdn/isdn_tty.cif (!info) {
info221drivers/isdn/isdn_tty.cif (info->magic != ISDN_ASYNC_MAGIC) {
info234drivers/isdn/isdn_tty.cstatic void isdn_tty_change_speed(modem_info * info)
info239drivers/isdn/isdn_tty.cif (!info->tty || !info->tty->termios)
info241drivers/isdn/isdn_tty.ccflag = info->tty->termios->c_cflag;
info247drivers/isdn/isdn_tty.cinfo->tty->termios->c_cflag &= ~CBAUDEX;
info252drivers/isdn/isdn_tty.cinfo->MCR |= UART_MCR_DTR;
info254drivers/isdn/isdn_tty.cinfo->MCR &= ~UART_MCR_DTR;
info255drivers/isdn/isdn_tty.cisdn_tty_modem_reset_regs(&dev->mdm.atmodem[info->line], 0);
info256drivers/isdn/isdn_tty.cif (dev->mdm.online[info->line]) {
info260drivers/isdn/isdn_tty.cisdn_tty_modem_hup(info);
info261drivers/isdn/isdn_tty.cisdn_tty_modem_result(3, info);
info276drivers/isdn/isdn_tty.cinfo->flags |= ISDN_ASYNC_CTS_FLOW;
info278drivers/isdn/isdn_tty.cinfo->flags &= ~ISDN_ASYNC_CTS_FLOW;
info280drivers/isdn/isdn_tty.cinfo->flags &= ~ISDN_ASYNC_CHECK_CD;
info282drivers/isdn/isdn_tty.cinfo->flags |= ISDN_ASYNC_CHECK_CD;
info286drivers/isdn/isdn_tty.cstatic int isdn_tty_startup(modem_info * info)
info290drivers/isdn/isdn_tty.cif (info->flags & ISDN_ASYNC_INITIALIZED)
info292drivers/isdn/isdn_tty.cif (!info->type) {
info293drivers/isdn/isdn_tty.cif (info->tty)
info294drivers/isdn/isdn_tty.cset_bit(TTY_IO_ERROR, &info->tty->flags);
info301drivers/isdn/isdn_tty.cprintk(KERN_DEBUG "starting up ttyi%d ...\n", info->line);
info306drivers/isdn/isdn_tty.cinfo->MCR = UART_MCR_DTR | UART_MCR_RTS | UART_MCR_OUT2;
info307drivers/isdn/isdn_tty.cif (info->tty)
info308drivers/isdn/isdn_tty.cclear_bit(TTY_IO_ERROR, &info->tty->flags);
info312drivers/isdn/isdn_tty.cisdn_tty_change_speed(info);
info314drivers/isdn/isdn_tty.cinfo->flags |= ISDN_ASYNC_INITIALIZED;
info315drivers/isdn/isdn_tty.cdev->mdm.msr[info->line] |= UART_MSR_DSR;
info317drivers/isdn/isdn_tty.cinfo->send_outstanding = 0;
info327drivers/isdn/isdn_tty.cstatic void isdn_tty_shutdown(modem_info * info)
info331drivers/isdn/isdn_tty.cif (!(info->flags & ISDN_ASYNC_INITIALIZED))
info334drivers/isdn/isdn_tty.cprintk(KERN_DEBUG "Shutting down isdnmodem port %d ....\n", info->line);
info338drivers/isdn/isdn_tty.cif (!info->tty || (info->tty->termios->c_cflag & HUPCL)) {
info339drivers/isdn/isdn_tty.cinfo->MCR &= ~(UART_MCR_DTR | UART_MCR_RTS);
info340drivers/isdn/isdn_tty.cisdn_tty_modem_reset_regs(&dev->mdm.atmodem[info->line], 0);
info341drivers/isdn/isdn_tty.cif (dev->mdm.online[info->line]) {
info345drivers/isdn/isdn_tty.cisdn_tty_modem_hup(info);
info348drivers/isdn/isdn_tty.cif (info->tty)
info349drivers/isdn/isdn_tty.cset_bit(TTY_IO_ERROR, &info->tty->flags);
info351drivers/isdn/isdn_tty.cinfo->flags &= ~ISDN_ASYNC_INITIALIZED;
info358drivers/isdn/isdn_tty.cmodem_info *info = (modem_info *) tty->driver_data;
info362drivers/isdn/isdn_tty.cif (isdn_tty_paranoia_check(info, tty->device, "isdn_tty_write"))
info369drivers/isdn/isdn_tty.cc = MIN(count, info->xmit_size - info->xmit_count - 1);
info370drivers/isdn/isdn_tty.cif (info->isdn_driver >= 0) {
info372drivers/isdn/isdn_tty.cif (info->isdn_driver != 0) {
info376drivers/isdn/isdn_tty.cint drvidx = info->isdn_driver;
info380drivers/isdn/isdn_tty.ci = dev->drv[info->isdn_driver]->maxbufsize;
info386drivers/isdn/isdn_tty.ci = info->line;
info392drivers/isdn/isdn_tty.cmemcpy_fromfs(&(info->xmit_buf[info->xmit_count]), buf, c);
info394drivers/isdn/isdn_tty.cmemcpy(&(info->xmit_buf[info->xmit_count]), buf, c);
info395drivers/isdn/isdn_tty.cinfo->xmit_count += c;
info400drivers/isdn/isdn_tty.cprintk(KERN_DEBUG "WB1: %d\n", info->xmit_count);
info402drivers/isdn/isdn_tty.cbufptr = info->xmit_buf;
info403drivers/isdn/isdn_tty.cbuflen = info->xmit_count;
info417drivers/isdn/isdn_tty.cif (dev->drv[info->isdn_driver]->interface->
info418drivers/isdn/isdn_tty.cwritebuf(info->isdn_driver, info->isdn_channel, bufptr, buflen, 0) > 0) {
info419drivers/isdn/isdn_tty.cinfo->xmit_count = 0;
info420drivers/isdn/isdn_tty.cinfo->xmit_size = dev->mdm.atmodem[i].mdmreg[16] * 16;
info422drivers/isdn/isdn_tty.cinfo->send_outstanding++;
info437drivers/isdn/isdn_tty.cisdn_tty_modem_hup(info);
info438drivers/isdn/isdn_tty.cisdn_tty_modem_result(3, info);
info440drivers/isdn/isdn_tty.cc = isdn_tty_edit_at(buf, c, info, from_user);
info446drivers/isdn/isdn_tty.cif (info->xmit_count)
info454drivers/isdn/isdn_tty.cmodem_info *info = (modem_info *) tty->driver_data;
info457drivers/isdn/isdn_tty.cif (isdn_tty_paranoia_check(info, tty->device, "isdn_tty_write_room"))
info459drivers/isdn/isdn_tty.cif (!dev->mdm.online[info->line])
info460drivers/isdn/isdn_tty.creturn info->xmit_size - 1;
info461drivers/isdn/isdn_tty.cret = info->xmit_size - info->xmit_count - 1;
info467drivers/isdn/isdn_tty.cmodem_info *info = (modem_info *) tty->driver_data;
info469drivers/isdn/isdn_tty.cif (isdn_tty_paranoia_check(info, tty->device, "isdn_tty_chars_in_buffer"))
info471drivers/isdn/isdn_tty.cif (!dev->mdm.online[info->line])
info473drivers/isdn/isdn_tty.creturn (info->xmit_count);
info478drivers/isdn/isdn_tty.cmodem_info *info = (modem_info *) tty->driver_data;
info481drivers/isdn/isdn_tty.cif (isdn_tty_paranoia_check(info, tty->device, "isdn_tty_flush_buffer"))
info485drivers/isdn/isdn_tty.cinfo->xmit_count = 0;
info495drivers/isdn/isdn_tty.cmodem_info *info = (modem_info *) tty->driver_data;
info497drivers/isdn/isdn_tty.cif (isdn_tty_paranoia_check(info, tty->device, "isdn_tty_flush_chars"))
info499drivers/isdn/isdn_tty.cif (info->xmit_count > 0)
info513drivers/isdn/isdn_tty.cmodem_info *info = (modem_info *) tty->driver_data;
info515drivers/isdn/isdn_tty.cif (isdn_tty_paranoia_check(info, tty->device, "isdn_tty_throttle"))
info518drivers/isdn/isdn_tty.cinfo->x_char = STOP_CHAR(tty);
info519drivers/isdn/isdn_tty.cinfo->MCR &= ~UART_MCR_RTS;
info524drivers/isdn/isdn_tty.cmodem_info *info = (modem_info *) tty->driver_data;
info526drivers/isdn/isdn_tty.cif (isdn_tty_paranoia_check(info, tty->device, "isdn_tty_unthrottle"))
info529drivers/isdn/isdn_tty.cif (info->x_char)
info530drivers/isdn/isdn_tty.cinfo->x_char = 0;
info532drivers/isdn/isdn_tty.cinfo->x_char = START_CHAR(tty);
info534drivers/isdn/isdn_tty.cinfo->MCR |= UART_MCR_RTS;
info553drivers/isdn/isdn_tty.cstatic int isdn_tty_get_lsr_info(modem_info * info, uint * value)
info561drivers/isdn/isdn_tty.cstatus = dev->mdm.msr[info->line];
info569drivers/isdn/isdn_tty.cstatic int isdn_tty_get_modem_info(modem_info * info, uint * value)
info575drivers/isdn/isdn_tty.ccontrol = info->MCR;
info578drivers/isdn/isdn_tty.cstatus = dev->mdm.msr[info->line];
info590drivers/isdn/isdn_tty.cstatic int isdn_tty_set_modem_info(modem_info * info, uint cmd, uint * value)
info597drivers/isdn/isdn_tty.cinfo->MCR |= UART_MCR_RTS;
info600drivers/isdn/isdn_tty.cinfo->MCR |= UART_MCR_DTR;
info605drivers/isdn/isdn_tty.cinfo->MCR &= ~UART_MCR_RTS;
info608drivers/isdn/isdn_tty.cinfo->MCR &= ~UART_MCR_DTR;
info609drivers/isdn/isdn_tty.cisdn_tty_modem_reset_regs(&dev->mdm.atmodem[info->line], 0);
info610drivers/isdn/isdn_tty.cif (dev->mdm.online[info->line]) {
info614drivers/isdn/isdn_tty.cisdn_tty_modem_hup(info);
info615drivers/isdn/isdn_tty.cisdn_tty_modem_result(3, info);
info620drivers/isdn/isdn_tty.cinfo->MCR = ((info->MCR & ~(UART_MCR_RTS | UART_MCR_DTR))
info623drivers/isdn/isdn_tty.cif (!(info->MCR & UART_MCR_DTR)) {
info624drivers/isdn/isdn_tty.cisdn_tty_modem_reset_regs(&dev->mdm.atmodem[info->line], 0);
info625drivers/isdn/isdn_tty.cif (dev->mdm.online[info->line]) {
info629drivers/isdn/isdn_tty.cisdn_tty_modem_hup(info);
info630drivers/isdn/isdn_tty.cisdn_tty_modem_result(3, info);
info643drivers/isdn/isdn_tty.cmodem_info *info = (modem_info *) tty->driver_data;
info647drivers/isdn/isdn_tty.cif (isdn_tty_paranoia_check(info, tty->device, "isdn_tty_ioctl"))
info678drivers/isdn/isdn_tty.creturn isdn_tty_get_modem_info(info, (uint *) arg);
info682drivers/isdn/isdn_tty.creturn isdn_tty_set_modem_info(info, cmd, (uint *) arg);
info688drivers/isdn/isdn_tty.creturn isdn_tty_get_lsr_info(info, (uint *) arg);
info697drivers/isdn/isdn_tty.creturn get_serial_info(info,
info703drivers/isdn/isdn_tty.creturn set_serial_info(info,
info709drivers/isdn/isdn_tty.creturn do_autoconfig(info);
info740drivers/isdn/isdn_tty.cinfo, sizeof(modem_info));
info745drivers/isdn/isdn_tty.cprintk(KERN_DEBUG "unsupp. ioctl 0x%08x on ttyi%d\n", cmd, info->line);
info754drivers/isdn/isdn_tty.cmodem_info *info = (modem_info *) tty->driver_data;
info758drivers/isdn/isdn_tty.cisdn_tty_change_speed(info);
info770drivers/isdn/isdn_tty.cstatic int isdn_tty_block_til_ready(struct tty_struct *tty, struct file *filp, modem_info * info)
info782drivers/isdn/isdn_tty.c(info->flags & ISDN_ASYNC_CLOSING)) {
info783drivers/isdn/isdn_tty.cif (info->flags & ISDN_ASYNC_CLOSING)
info784drivers/isdn/isdn_tty.cinterruptible_sleep_on(&info->close_wait);
info786drivers/isdn/isdn_tty.cif (info->flags & ISDN_ASYNC_HUP_NOTIFY)
info799drivers/isdn/isdn_tty.cif (info->flags & ISDN_ASYNC_NORMAL_ACTIVE)
info801drivers/isdn/isdn_tty.cif ((info->flags & ISDN_ASYNC_CALLOUT_ACTIVE) &&
info802drivers/isdn/isdn_tty.c(info->flags & ISDN_ASYNC_SESSION_LOCKOUT) &&
info803drivers/isdn/isdn_tty.c(info->session != current->session))
info805drivers/isdn/isdn_tty.cif ((info->flags & ISDN_ASYNC_CALLOUT_ACTIVE) &&
info806drivers/isdn/isdn_tty.c(info->flags & ISDN_ASYNC_PGRP_LOCKOUT) &&
info807drivers/isdn/isdn_tty.c(info->pgrp != current->pgrp))
info809drivers/isdn/isdn_tty.cinfo->flags |= ISDN_ASYNC_CALLOUT_ACTIVE;
info817drivers/isdn/isdn_tty.cif (info->flags & ISDN_ASYNC_CALLOUT_ACTIVE)
info819drivers/isdn/isdn_tty.cinfo->flags |= ISDN_ASYNC_NORMAL_ACTIVE;
info822drivers/isdn/isdn_tty.cif (info->flags & ISDN_ASYNC_CALLOUT_ACTIVE) {
info823drivers/isdn/isdn_tty.cif (info->normal_termios.c_cflag & CLOCAL)
info837drivers/isdn/isdn_tty.cadd_wait_queue(&info->open_wait, &wait);
info840drivers/isdn/isdn_tty.cinfo->line, info->count);
info845drivers/isdn/isdn_tty.cinfo->count--;
info847drivers/isdn/isdn_tty.cinfo->blocked_open++;
info851drivers/isdn/isdn_tty.c!(info->flags & ISDN_ASYNC_INITIALIZED)) {
info853drivers/isdn/isdn_tty.cif (info->flags & ISDN_ASYNC_HUP_NOTIFY)
info862drivers/isdn/isdn_tty.cif (!(info->flags & ISDN_ASYNC_CALLOUT_ACTIVE) &&
info863drivers/isdn/isdn_tty.c!(info->flags & ISDN_ASYNC_CLOSING) &&
info865drivers/isdn/isdn_tty.cdev->mdm.msr[info->line] &
info875drivers/isdn/isdn_tty.cinfo->line, info->count);
info880drivers/isdn/isdn_tty.cremove_wait_queue(&info->open_wait, &wait);
info882drivers/isdn/isdn_tty.cinfo->count++;
info883drivers/isdn/isdn_tty.cinfo->blocked_open--;
info886drivers/isdn/isdn_tty.cinfo->line, info->count);
info890drivers/isdn/isdn_tty.cinfo->flags |= ISDN_ASYNC_NORMAL_ACTIVE;
info902drivers/isdn/isdn_tty.cmodem_info *info;
info908drivers/isdn/isdn_tty.cinfo = &dev->mdm.info[line];
info909drivers/isdn/isdn_tty.cif (isdn_tty_paranoia_check(info, tty->device, "isdn_tty_open"))
info913drivers/isdn/isdn_tty.cinfo->line, info->count);
info915drivers/isdn/isdn_tty.cinfo->count++;
info916drivers/isdn/isdn_tty.ctty->driver_data = info;
info917drivers/isdn/isdn_tty.cinfo->tty = tty;
info921drivers/isdn/isdn_tty.cretval = isdn_tty_startup(info);
info928drivers/isdn/isdn_tty.cretval = isdn_tty_block_til_ready(tty, filp, info);
info935drivers/isdn/isdn_tty.cif ((info->count == 1) && (info->flags & ISDN_ASYNC_SPLIT_TERMIOS)) {
info937drivers/isdn/isdn_tty.c*tty->termios = info->normal_termios;
info939drivers/isdn/isdn_tty.c*tty->termios = info->callout_termios;
info940drivers/isdn/isdn_tty.cisdn_tty_change_speed(info);
info942drivers/isdn/isdn_tty.cinfo->session = current->session;
info943drivers/isdn/isdn_tty.cinfo->pgrp = current->pgrp;
info945drivers/isdn/isdn_tty.cprintk(KERN_DEBUG "isdn_tty_open ttyi%d successful...\n", info->line);
info956drivers/isdn/isdn_tty.cmodem_info *info = (modem_info *) tty->driver_data;
info960drivers/isdn/isdn_tty.cif (!info || isdn_tty_paranoia_check(info, tty->device, "isdn_tty_close"))
info972drivers/isdn/isdn_tty.cif ((tty->count == 1) && (info->count != 1)) {
info981drivers/isdn/isdn_tty.c"info->count is %d\n", info->count);
info982drivers/isdn/isdn_tty.cinfo->count = 1;
info984drivers/isdn/isdn_tty.cif (--info->count < 0) {
info986drivers/isdn/isdn_tty.cinfo->line, info->count);
info987drivers/isdn/isdn_tty.cinfo->count = 0;
info989drivers/isdn/isdn_tty.cif (info->count) {
info996drivers/isdn/isdn_tty.cinfo->flags |= ISDN_ASYNC_CLOSING;
info1001drivers/isdn/isdn_tty.cif (info->flags & ISDN_ASYNC_NORMAL_ACTIVE)
info1002drivers/isdn/isdn_tty.cinfo->normal_termios = *tty->termios;
info1003drivers/isdn/isdn_tty.cif (info->flags & ISDN_ASYNC_CALLOUT_ACTIVE)
info1004drivers/isdn/isdn_tty.cinfo->callout_termios = *tty->termios;
info1014drivers/isdn/isdn_tty.cif (info->flags & ISDN_ASYNC_INITIALIZED) {
info1022drivers/isdn/isdn_tty.cwhile (!(dev->mdm.mlr[info->line]
info1031drivers/isdn/isdn_tty.cisdn_tty_shutdown(info);
info1036drivers/isdn/isdn_tty.cinfo->tty = 0;
info1048drivers/isdn/isdn_tty.cif (info->blocked_open) {
info1049drivers/isdn/isdn_tty.cif (info->close_delay) {
info1051drivers/isdn/isdn_tty.ccurrent->timeout = jiffies + info->close_delay;
info1054drivers/isdn/isdn_tty.cwake_up_interruptible(&info->open_wait);
info1056drivers/isdn/isdn_tty.cinfo->flags &= ~(ISDN_ASYNC_NORMAL_ACTIVE | ISDN_ASYNC_CALLOUT_ACTIVE |
info1058drivers/isdn/isdn_tty.cwake_up_interruptible(&info->close_wait);
info1070drivers/isdn/isdn_tty.cmodem_info *info = (modem_info *) tty->driver_data;
info1072drivers/isdn/isdn_tty.cif (isdn_tty_paranoia_check(info, tty->device, "isdn_tty_hangup"))
info1074drivers/isdn/isdn_tty.cisdn_tty_shutdown(info);
info1075drivers/isdn/isdn_tty.cinfo->count = 0;
info1076drivers/isdn/isdn_tty.cinfo->flags &= ~(ISDN_ASYNC_NORMAL_ACTIVE | ISDN_ASYNC_CALLOUT_ACTIVE);
info1077drivers/isdn/isdn_tty.cinfo->tty = 0;
info1078drivers/isdn/isdn_tty.cwake_up_interruptible(&info->open_wait);
info1127drivers/isdn/isdn_tty.cmodem_info *info;
info1183drivers/isdn/isdn_tty.cinfo = &(m->info[i]);
info1184drivers/isdn/isdn_tty.cinfo->magic = ISDN_ASYNC_MAGIC;
info1185drivers/isdn/isdn_tty.cinfo->line = i;
info1186drivers/isdn/isdn_tty.cinfo->tty = 0;
info1187drivers/isdn/isdn_tty.cinfo->close_delay = 50;
info1188drivers/isdn/isdn_tty.cinfo->x_char = 0;
info1189drivers/isdn/isdn_tty.cinfo->count = 0;
info1190drivers/isdn/isdn_tty.cinfo->blocked_open = 0;
info1191drivers/isdn/isdn_tty.cinfo->callout_termios = m->cua_modem.init_termios;
info1192drivers/isdn/isdn_tty.cinfo->normal_termios = m->tty_modem.init_termios;
info1193drivers/isdn/isdn_tty.cinfo->open_wait = 0;
info1194drivers/isdn/isdn_tty.cinfo->close_wait = 0;
info1195drivers/isdn/isdn_tty.cinfo->type = ISDN_PORT_16550A;
info1196drivers/isdn/isdn_tty.cinfo->isdn_driver = -1;
info1197drivers/isdn/isdn_tty.cinfo->isdn_channel = -1;
info1198drivers/isdn/isdn_tty.cinfo->drv_index = -1;
info1199drivers/isdn/isdn_tty.cinfo->xmit_size = ISDN_SERIAL_XMIT_SIZE;
info1200drivers/isdn/isdn_tty.cif (!(info->xmit_buf = kmalloc(ISDN_SERIAL_XMIT_SIZE + 5, GFP_KERNEL))) {
info1204drivers/isdn/isdn_tty.cinfo->xmit_buf += 4;  /* Make room for T.70 header */
info1269drivers/isdn/isdn_tty.cmodem_info *info = &dev->mdm.info[i];
info1274drivers/isdn/isdn_tty.cinfo->flags, info->isdn_driver, info->isdn_channel,
info1277drivers/isdn/isdn_tty.cif ((info->flags & ISDN_ASYNC_NORMAL_ACTIVE) &&
info1278drivers/isdn/isdn_tty.c(info->isdn_driver == -1) &&
info1279drivers/isdn/isdn_tty.c(info->isdn_channel == -1) &&
info1281drivers/isdn/isdn_tty.cinfo->isdn_driver = di;
info1282drivers/isdn/isdn_tty.cinfo->isdn_channel = ch;
info1283drivers/isdn/isdn_tty.cinfo->drv_index = idx;
info1284drivers/isdn/isdn_tty.cdev->m_idx[idx] = info->line;
info1291drivers/isdn/isdn_tty.cinfo->line);
info1292drivers/isdn/isdn_tty.creturn info->line;
info1312drivers/isdn/isdn_tty.cstatic void isdn_tty_at_cout(char *msg, modem_info * info)
info1315drivers/isdn/isdn_tty.catemu *m = &(dev->mdm.atmodem[info->line]);
info1326drivers/isdn/isdn_tty.ctty = info->tty;
info1341drivers/isdn/isdn_tty.cif ((info->flags & ISDN_ASYNC_CLOSING) || (!tty)) {
info1356drivers/isdn/isdn_tty.cstatic void isdn_tty_on_hook(modem_info * info)
info1358drivers/isdn/isdn_tty.cif (info->isdn_channel >= 0) {
info1362drivers/isdn/isdn_tty.cisdn_tty_modem_hup(info);
info1363drivers/isdn/isdn_tty.cisdn_tty_modem_result(3, info);
info1430drivers/isdn/isdn_tty.cvoid isdn_tty_modem_result(int code, modem_info * info)
info1432drivers/isdn/isdn_tty.catemu *m = &dev->mdm.atmodem[info->line];
info1447drivers/isdn/isdn_tty.cdev->mdm.msr[info->line] &= ~UART_MSR_RI;
info1448drivers/isdn/isdn_tty.ccmd.driver = info->isdn_driver;
info1449drivers/isdn/isdn_tty.ccmd.arg = info->isdn_channel;
info1451drivers/isdn/isdn_tty.cdev->drv[info->isdn_driver]->interface->command(&cmd);
info1458drivers/isdn/isdn_tty.cdev->mdm.msr[info->line] &= ~(UART_MSR_DCD | UART_MSR_RI);
info1459drivers/isdn/isdn_tty.cif ((info->flags & ISDN_ASYNC_CLOSING) || (!info->tty)) {
info1467drivers/isdn/isdn_tty.cdev->mdm.online[info->line] = 1;
info1472drivers/isdn/isdn_tty.cisdn_tty_at_cout("\r\n", info);
info1476drivers/isdn/isdn_tty.cisdn_tty_at_cout(s, info);
info1479drivers/isdn/isdn_tty.cisdn_tty_at_cout("CALLER NUMBER: ", info);
info1480drivers/isdn/isdn_tty.cisdn_tty_at_cout(dev->num[info->drv_index], info);
info1481drivers/isdn/isdn_tty.cisdn_tty_at_cout("\r\n", info);
info1483drivers/isdn/isdn_tty.cisdn_tty_at_cout(msg[code], info);
info1486drivers/isdn/isdn_tty.cisdn_tty_at_cout((m->mdmreg[14] != 3) ? "/X.75" : "/HDLC", info);
info1488drivers/isdn/isdn_tty.cisdn_tty_at_cout("/T.70", info);
info1491drivers/isdn/isdn_tty.cisdn_tty_at_cout("\r\n", info);
info1496drivers/isdn/isdn_tty.cif ((info->flags & ISDN_ASYNC_CLOSING) || (!info->tty)) {
info1500drivers/isdn/isdn_tty.cif ((info->flags & ISDN_ASYNC_CHECK_CD) &&
info1501drivers/isdn/isdn_tty.c(!((info->flags & ISDN_ASYNC_CALLOUT_ACTIVE) &&
info1502drivers/isdn/isdn_tty.c(info->flags & ISDN_ASYNC_CALLOUT_NOHUP))))
info1503drivers/isdn/isdn_tty.ctty_hangup(info->tty);
info1511drivers/isdn/isdn_tty.cstatic void isdn_tty_show_profile(int ridx, modem_info * info)
info1515drivers/isdn/isdn_tty.csprintf(v, "%d\r\n", dev->mdm.atmodem[info->line].mdmreg[ridx]);
info1516drivers/isdn/isdn_tty.cisdn_tty_at_cout(v, info);
info1551drivers/isdn/isdn_tty.cstatic void isdn_tty_parse_at(modem_info * info)
info1553drivers/isdn/isdn_tty.catemu *m = &dev->mdm.atmodem[info->line];
info1582drivers/isdn/isdn_tty.cdev->mdm.msr[info->line] &= ~UART_MSR_RI;
info1583drivers/isdn/isdn_tty.ccmd.driver = info->isdn_driver;
info1585drivers/isdn/isdn_tty.ccmd.arg = info->isdn_channel + (m->mdmreg[14] << 8);
info1586drivers/isdn/isdn_tty.cdev->drv[info->isdn_driver]->interface->command(&cmd);
info1587drivers/isdn/isdn_tty.ccmd.driver = info->isdn_driver;
info1589drivers/isdn/isdn_tty.ccmd.arg = info->isdn_channel + (m->mdmreg[15] << 8);
info1590drivers/isdn/isdn_tty.cdev->drv[info->isdn_driver]->interface->command(&cmd);
info1591drivers/isdn/isdn_tty.ccmd.driver = info->isdn_driver;
info1592drivers/isdn/isdn_tty.ccmd.arg = info->isdn_channel;
info1595drivers/isdn/isdn_tty.cfido_modem_info = info;
info1602drivers/isdn/isdn_tty.cdev->drv[info->isdn_driver]->interface->command(&cmd);
info1605drivers/isdn/isdn_tty.cisdn_tty_modem_result(8, info);
info1614drivers/isdn/isdn_tty.cisdn_tty_modem_result(10, info);
info1616drivers/isdn/isdn_tty.cisdn_tty_dial(ds, info, m);
info1618drivers/isdn/isdn_tty.cisdn_tty_modem_result(4, info);
info1633drivers/isdn/isdn_tty.cisdn_tty_modem_result(4, info);
info1643drivers/isdn/isdn_tty.cisdn_tty_on_hook(info);
info1650drivers/isdn/isdn_tty.cisdn_tty_on_hook(info);
info1657drivers/isdn/isdn_tty.cisdn_tty_at_cout("ISDN for Linux  (c) by Fritz Elfert\r\n", info);
info1669drivers/isdn/isdn_tty.cif (dev->mdm.msr[info->line] & UART_MSR_DCD)  /* if B-Channel is up */
info1670drivers/isdn/isdn_tty.cisdn_tty_modem_result(5, info);
info1672drivers/isdn/isdn_tty.cisdn_tty_modem_result(3, info);
info1687drivers/isdn/isdn_tty.cisdn_tty_modem_result(4, info);
info1696drivers/isdn/isdn_tty.cisdn_tty_modem_result(4, info);
info1705drivers/isdn/isdn_tty.cisdn_tty_modem_result(4, info);
info1710drivers/isdn/isdn_tty.cisdn_tty_modem_result(4, info);
info1716drivers/isdn/isdn_tty.cisdn_tty_show_profile(mreg, info);
info1720drivers/isdn/isdn_tty.cisdn_tty_modem_result(4, info);
info1737drivers/isdn/isdn_tty.cisdn_tty_modem_result(4, info);
info1761drivers/isdn/isdn_tty.cisdn_tty_modem_result(4, info);
info1777drivers/isdn/isdn_tty.cisdn_tty_modem_result(4, info);
info1799drivers/isdn/isdn_tty.cisdn_tty_modem_result(4, info);
info1808drivers/isdn/isdn_tty.cisdn_tty_at_cout(rb, info);
info1811drivers/isdn/isdn_tty.cisdn_tty_at_cout(rb, info);
info1822drivers/isdn/isdn_tty.cisdn_tty_modem_result(4, info);
info1843drivers/isdn/isdn_tty.cisdn_tty_modem_result(4, info);
info1848drivers/isdn/isdn_tty.cisdn_tty_modem_result(4, info);
info1853drivers/isdn/isdn_tty.cisdn_tty_modem_result(4, info);
info1857drivers/isdn/isdn_tty.cisdn_tty_modem_result(0, info);
info1874drivers/isdn/isdn_tty.cstatic int isdn_tty_edit_at(const char *p, int count, modem_info * info, int user)
info1876drivers/isdn/isdn_tty.catemu *m = &dev->mdm.atmodem[info->line];
info1894drivers/isdn/isdn_tty.cisdn_tty_at_cout(eb, info);
info1897drivers/isdn/isdn_tty.cisdn_tty_parse_at(info);
info1907drivers/isdn/isdn_tty.cisdn_tty_at_cout("\b", info);
info1915drivers/isdn/isdn_tty.cisdn_tty_at_cout(eb, info);
info1958drivers/isdn/isdn_tty.cisdn_tty_modem_result(0, &dev->mdm.info[midx]);
info1980drivers/isdn/isdn_tty.cisdn_tty_modem_result(2, &dev->mdm.info[midx]);
info1997drivers/isdn/isdn_tty.cmodem_info *info = &(dev->mdm.info[midx]);
info2002drivers/isdn/isdn_tty.cif (info->xmit_count > 0) {
info2003drivers/isdn/isdn_tty.cstruct tty_struct *tty = info->tty;
info2006drivers/isdn/isdn_tty.cprintk(KERN_DEBUG "WB2: %d\n", info->xmit_count);
info2008drivers/isdn/isdn_tty.cbufptr = info->xmit_buf;
info2009drivers/isdn/isdn_tty.cbuflen = info->xmit_count;
info2022drivers/isdn/isdn_tty.cif (dev->drv[info->isdn_driver]->interface->
info2023drivers/isdn/isdn_tty.cwritebuf(info->isdn_driver, info->isdn_channel, bufptr, buflen, 0) > 0) {
info2024drivers/isdn/isdn_tty.cinfo->xmit_count = 0;
info2025drivers/isdn/isdn_tty.cinfo->xmit_size = dev->mdm.atmodem[midx].mdmreg[16] * 16;
info2027drivers/isdn/isdn_tty.cinfo->send_outstanding++;
info2055drivers/isdn/isdn_tty.cmodem_info *info = &dev->mdm.info[i];
info2056drivers/isdn/isdn_tty.cif ((info->isdn_driver == drv) &&
info2057drivers/isdn/isdn_tty.c(info->isdn_channel == chan) &&
info2058drivers/isdn/isdn_tty.c(info->send_outstanding)) {
info2059drivers/isdn/isdn_tty.cif (!(--info->send_outstanding))
info212drivers/isdn/teles/callc.cchanp->para.info = my_atoi(sis);
info335drivers/isdn/teles/callc.csprintf(ic.num, "%s,%d,0,%s", chanp->para.calling, chanp->para.info,
info85drivers/isdn/teles/isdnl3.cswitch (st->pa->info) {
info211drivers/isdn/teles/isdnl3.cst->pa->info = p[2];
info225drivers/isdn/teles/isdnl3.cst->pa->info = 1;
info229drivers/isdn/teles/isdnl3.cst->pa->info = 7;
info233drivers/isdn/teles/isdnl3.cst->pa->info = 2;
info237drivers/isdn/teles/isdnl3.cst->pa->info = 3;
info241drivers/isdn/teles/isdnl3.cst->pa->info = 4;
info244drivers/isdn/teles/isdnl3.cst->pa->info = 0;
info268drivers/isdn/teles/isdnl3.cif (st->pa->info == 7) {
info87drivers/isdn/teles/l3_1TR6.c*p++ = st->pa->info;
info126drivers/isdn/teles/l3_1TR6.cst->pa->info = p[2];
info147drivers/isdn/teles/l3_1TR6.cif (st->pa->info == 7) {
info276drivers/isdn/teles/teles.hint             info;       /* Service-Indicator               */
info232drivers/net/3c505.hstruct Info    info;
info317drivers/net/de4x5.cchar info[100];
info491drivers/pci/pci.cstruct pci_dev_info *info;
info493drivers/pci/pci.cinfo =   pci_lookup_dev(vendor, device);
info494drivers/pci/pci.creturn info ? info->name : "Unknown device";
info735drivers/pci/pci.cstruct pci_dev_info *info;
info780drivers/pci/pci.cinfo = pci_lookup_dev(dev->vendor, dev->device);
info781drivers/pci/pci.cif (!info) {
info786drivers/pci/pci.cif (info->bridge_type != 0xff) {
info788drivers/pci/pci.cinfo->bridge_type, 1);
info723drivers/scsi/AM53C974.cstatic char       info[100];
info725drivers/scsi/AM53C974.csprintf(info, "AM53/79C974 PCscsi driver rev. %d.%d; host I/O address: 0x%x; irq: %d\n", 
info728drivers/scsi/AM53C974.creturn (info);
info3175drivers/scsi/advansys.cstatic char   info[128];
info3182drivers/scsi/advansys.csprintf(info,
info3205drivers/scsi/advansys.csprintf(info,
info3212drivers/scsi/advansys.creturn info;
info9049drivers/scsi/advansys.cuchar dosfar * info
info9052drivers/scsi/advansys.cif (AscScsiSetupCmdQ(asc_dvc, scsiq, info, 8L) == ERR) {
info372drivers/scsi/eata.cstruct eata_info info;
info391drivers/scsi/eata.cif (read_pio(*port_base, (ushort *)&info, (ushort *)&info.ipad[0])) 
info395drivers/scsi/eata.cif (info.sign != EATA_SIGNATURE) return FALSE;
info397drivers/scsi/eata.cif (ntohl(info.data_len) < EATA_2_0A_SIZE) {
info399drivers/scsi/eata.cname, ntohl(info.data_len));
info402drivers/scsi/eata.celse if (ntohl(info.data_len) == EATA_2_0A_SIZE)
info404drivers/scsi/eata.celse if (ntohl(info.data_len) == EATA_2_0B_SIZE)
info409drivers/scsi/eata.cif (protocol_rev != 'A' && info.max_chan > 0)
info412drivers/scsi/eata.cirq = info.irq;
info416drivers/scsi/eata.cif (!info.haaval || info.ata || info.drqvld) {
info418drivers/scsi/eata.cname, info.haaval, info.ata, info.drqvld);
info427drivers/scsi/eata.cif (!info.haaval || info.ata || !info.drqvld) {
info429drivers/scsi/eata.cname, info.haaval, info.ata, info.drqvld);
info434drivers/scsi/eata.cdma_channel = dma_channel_table[3 - info.drqx];
info437drivers/scsi/eata.cif (!info.dmasup)
info440drivers/scsi/eata.cif (subversion == ESA && !info.irq_tr)
info444drivers/scsi/eata.cif (info.second)
info495drivers/scsi/eata.csh[j]->sg_tablesize = (ushort) ntohs(info.scatt_size);
info496drivers/scsi/eata.csh[j]->this_id = (ushort) info.host_addr[3];
info497drivers/scsi/eata.csh[j]->can_queue = (ushort) ntohs(info.queue_size);
info542drivers/scsi/eata.c" max_chan %u.\n", name, protocol_rev, info.isaena, 
info543drivers/scsi/eata.cinfo.forcaddr, info.max_id, info.max_chan);
info546drivers/scsi/eata.cname, info.version, info.sync, ntohl(info.data_len), 
info547drivers/scsi/eata.cntohl(info.cp_len), ntohl(info.sp_len));
info1097drivers/scsi/fdomain.cconst char *info = fdomain_16x0_info( NULL );
info1105drivers/scsi/fdomain.cstrcpy( buffer, info );
info386drivers/scsi/hosts.cif(shpnt->hostt->info)
info387drivers/scsi/hosts.cname = shpnt->hostt->info(shpnt);
info108drivers/scsi/hosts.hconst char *(* info)(struct Scsi_Host *);
info2706drivers/scsi/scsi.cif(tpnt->info)
info2707drivers/scsi/scsi.cname = tpnt->info(shpnt);
info588drivers/scsi/scsi_debug.cint scsi_debug_biosparam(Disk * disk, kdev_t dev, int* info){
info590drivers/scsi/scsi_debug.cinfo[0] = 32;
info591drivers/scsi/scsi_debug.cinfo[1] = 64;
info592drivers/scsi/scsi_debug.cinfo[2] = (size + 2047) >> 11;
info593drivers/scsi/scsi_debug.cif (info[2] >= 1024) info[2] = 1024;
info48drivers/scsi/scsi_ioctl.cif(host->hostt->info)
info49drivers/scsi/scsi_ioctl.cstring = host->hostt->info(host);
info412drivers/scsi/seagate.cconst char *info = seagate_st0x_info(NULL);
info420drivers/scsi/seagate.cstrcpy(buffer,info);
info383drivers/sound/audio.caudio_buf_info  info;
info385drivers/sound/audio.cint             err = DMAbuf_ioctl (dev, cmd, (caddr_t) & info, 1);
info390drivers/sound/audio.cmemcpy_tofs ((&((char *) arg)[0]), (char *) &info, sizeof (info));
info399drivers/sound/audio.caudio_buf_info  info;
info403drivers/sound/audio.cint             err = DMAbuf_ioctl (dev, cmd, (caddr_t) & info, 1);
info409drivers/sound/audio.cinfo.bytes += buf_size - buf_ptr;
info411drivers/sound/audio.cmemcpy_tofs ((&((char *) arg)[0]), (char *) &info, sizeof (info));
info422drivers/sound/audio.cint             info = 1;  /* Revision level of this ioctl() */
info425drivers/sound/audio.cinfo |= DSP_CAP_DUPLEX;
info428drivers/sound/audio.cinfo |= DSP_CAP_COPROC;
info431drivers/sound/audio.cinfo |= DSP_CAP_BATCH;
info434drivers/sound/audio.cinfo |= DSP_CAP_TRIGGER;
info436drivers/sound/audio.cinfo |= DSP_CAP_MMAP;
info438drivers/sound/audio.cmemcpy_tofs ((&((char *) arg)[0]), (char *) &info, sizeof (info));
info188drivers/sound/dev_table.hstruct synth_info *info;
info207drivers/sound/dev_table.hint (*pmgr_interface) (int dev, struct patmgr_info *info);
info231drivers/sound/dev_table.hstruct midi_info info;
info258drivers/sound/dev_table.hstruct sound_timer_info info;
info527drivers/sound/dev_table.hextern int soud_map_buffer (int dev, struct dma_buffparms *dmap, buffmem_desc *info);
info786drivers/sound/dmabuf.caudio_buf_info *info = (audio_buf_info *) arg;
info797drivers/sound/dmabuf.cinfo->fragstotal = dmap->nbufs;
info800drivers/sound/dmabuf.cinfo->fragments = dmap->qlen;
info804drivers/sound/dmabuf.cinfo->fragments = 0;
info807drivers/sound/dmabuf.cinfo->fragments = dmap->nbufs - dmap->qlen;
info812drivers/sound/dmabuf.cif (tmp && info->fragments)
info816drivers/sound/dmabuf.cinfo->fragments -= tmp;
info821drivers/sound/dmabuf.cif (info->fragments < 0)
info822drivers/sound/dmabuf.cinfo->fragments = 0;
info823drivers/sound/dmabuf.celse if (info->fragments > dmap->nbufs)
info824drivers/sound/dmabuf.cinfo->fragments = dmap->nbufs;
info826drivers/sound/dmabuf.cinfo->fragsize = dmap->fragment_size;
info827drivers/sound/dmabuf.cinfo->bytes = info->fragments * dmap->fragment_size;
info830drivers/sound/dmabuf.cinfo->bytes -= dmap->counts[dmap->qhead];
info911drivers/sound/dmabuf.ccount_info      info;
info916drivers/sound/dmabuf.cinfo.bytes = audio_devs[dev]->dmap_in->byte_counter;
info917drivers/sound/dmabuf.cinfo.ptr = get_buffer_pointer (dev, audio_devs[dev]->dmachan2, audio_devs[dev]->dmap_in);
info918drivers/sound/dmabuf.cinfo.blocks = audio_devs[dev]->dmap_in->qlen;
info919drivers/sound/dmabuf.cinfo.bytes += info.ptr;
info920drivers/sound/dmabuf.cmemcpy_tofs ((&((char *) arg)[0]), (char *) &info, sizeof (info));
info931drivers/sound/dmabuf.ccount_info      info;
info936drivers/sound/dmabuf.cinfo.bytes = audio_devs[dev]->dmap_out->byte_counter;
info937drivers/sound/dmabuf.cinfo.ptr = get_buffer_pointer (dev, audio_devs[dev]->dmachan1, audio_devs[dev]->dmap_out);
info938drivers/sound/dmabuf.cinfo.blocks = audio_devs[dev]->dmap_out->qlen;
info939drivers/sound/dmabuf.cinfo.bytes += info.ptr;
info940drivers/sound/dmabuf.cmemcpy_tofs ((&((char *) arg)[0]), (char *) &info, sizeof (info));
info2502drivers/sound/gus_wave.cstruct channel_info *info =
info2505drivers/sound/gus_wave.cguswave_set_instr (dev, voice, info->pgm_num);
info2508drivers/sound/gus_wave.cinfo->controllers[CTL_EXPRESSION];  /* Just msb */
info2510drivers/sound/gus_wave.c(info->controllers[CTL_MAIN_VOLUME] * 100) / 128;
info2512drivers/sound/gus_wave.c(info->controllers[CTL_PAN] * 2) - 128;
info2513drivers/sound/gus_wave.cvoices[voice].bender = info->bender_value;
info294drivers/sound/midi_synth.cmemcpy_tofs ((&((char *) arg)[0]), synth_devs[dev]->info, sizeof (struct synth_info));
info1188drivers/sound/mpu401.cstrcpy (mpu401_midi_operations[num_midis].info.name,
info1194drivers/sound/mpu401.cmpu401_synth_operations[devc->devno]->info =
info1140drivers/sound/opl3.cstruct channel_info *info =
info1144drivers/sound/opl3.cinfo->pgm_num);
info1146drivers/sound/opl3.cdevc->voc[voice].bender = info->bender_value;
info1148drivers/sound/opl3.cinfo->controllers[CTL_MAIN_VOLUME];
info1219drivers/sound/opl3.copl3_operations.info = &devc->fm_info;
info1765drivers/sound/sequencer.cmemcpy_tofs ((&((char *) arg)[0]), (char *) &(midi_devs[dev]->info), sizeof (inf));
info243drivers/sound/sound_switch.cif (!put_status (synth_devs[i]->info->name))
info263drivers/sound/sound_switch.cif (!put_status (midi_devs[i]->info.name))
info279drivers/sound/sound_switch.cif (!put_status (sound_timer_devs[i]->info.name))
info349drivers/sound/sound_timer.cstrcpy (sound_timer.info.name, name);
info729drivers/sound/soundcard.csoud_map_buffer (int dev, struct dma_buffparms *dmap, buffmem_desc * info)
info66fs/minix/dir.cstruct minix_sb_info * info;
info70fs/minix/dir.cinfo = &inode->i_sb->u.minix_sb;
info71fs/minix/dir.cif (filp->f_pos & (info->s_dirsize - 1))
info83fs/minix/dir.cint size = strnlen(de->name, info->s_namelen);
info89fs/minix/dir.coffset += info->s_dirsize;
info90fs/minix/dir.cfilp->f_pos += info->s_dirsize;
info42fs/minix/namei.cstruct minix_sb_info * info)
info47fs/minix/namei.c*offset += info->s_dirsize;
info48fs/minix/namei.cif (!de->inode || len > info->s_namelen)
info53fs/minix/namei.creturn namecompare(len,info->s_namelen,name,de->name);
info69fs/minix/namei.cstruct minix_sb_info * info;
info74fs/minix/namei.cinfo = &dir->i_sb->u.minix_sb;
info75fs/minix/namei.cif (namelen > info->s_namelen) {
info79fs/minix/namei.cnamelen = info->s_namelen;
info93fs/minix/namei.cif (minix_match(namelen,name,bh,&offset,info))
info154fs/minix/namei.cstruct minix_sb_info * info;
info160fs/minix/namei.cinfo = &dir->i_sb->u.minix_sb;
info161fs/minix/namei.cif (namelen > info->s_namelen) {
info165fs/minix/namei.cnamelen = info->s_namelen;
info179fs/minix/namei.coffset += info->s_dirsize;
info186fs/minix/namei.cif (namecompare(namelen, info->s_namelen, name, de->name)) {
info193fs/minix/namei.cfor (i = 0; i < info->s_namelen ; i++)
info309fs/minix/namei.cstruct minix_sb_info * info;
info315fs/minix/namei.cinfo = &dir->i_sb->u.minix_sb;
info332fs/minix/namei.cinode->i_size = 2 * info->s_dirsize;
info344fs/minix/namei.cde = (struct minix_dir_entry *) (dir_block->b_data + info->s_dirsize);
info379fs/minix/namei.cstruct minix_sb_info * info;
info383fs/minix/namei.cinfo = &inode->i_sb->u.minix_sb;
info386fs/minix/namei.coffset = 2*info->s_dirsize;
info387fs/minix/namei.cif (inode->i_size & (info->s_dirsize-1))
info397fs/minix/namei.cde = (struct minix_dir_entry *) (bh->b_data + info->s_dirsize);
info409fs/minix/namei.coffset += info->s_dirsize;
info662fs/minix/namei.c(((struct minix_dir_entry *) ((buffer)+info->s_dirsize))->inode)
info680fs/minix/namei.cstruct minix_sb_info * info;
info683fs/minix/namei.cinfo = &old_dir->i_sb->u.minix_sb;
info321fs/ncpfs/dir.cstruct ncp_volume_info info;
info323fs/ncpfs/dir.cif (ncp_get_volume_info_with_number(server, i, &info) != 0)
info328fs/ncpfs/dir.cif (strlen(info.volume_name) > 0)
info333fs/ncpfs/dir.cinfo.volume_name);
info342fs/ncpfs/dir.cinfo.volume_name);
info345fs/ncpfs/dir.cinfo.volume_name,
info349fs/ncpfs/dir.c"%s\n", info.volume_name);
info446fs/ncpfs/inode.cstruct nw_modify_dos_info info;
info470fs/ncpfs/inode.cmemset(&info, 0, sizeof(info));
info476fs/ncpfs/inode.c&(info.creationTime), &(info.creationDate));
info483fs/ncpfs/inode.c&(info.modifyTime), &(info.modifyDate));
info491fs/ncpfs/inode.c&(dummy), &(info.lastAccessDate));
info500fs/ncpfs/inode.c&info)) != 0)
info23fs/ncpfs/ioctl.cstruct ncp_fs_info info;
info85fs/ncpfs/ioctl.csizeof(info))) != 0)
info90fs/ncpfs/ioctl.cmemcpy_fromfs(&info, (struct ncp_fs_info *)arg,
info91fs/ncpfs/ioctl.csizeof(info));
info93fs/ncpfs/ioctl.cif (info.version != NCP_GET_FS_INFO_VERSION)
info95fs/ncpfs/ioctl.cDPRINTK("info.version invalid: %d\n", info.version);
info99fs/ncpfs/ioctl.cinfo.addr        = server->m.serv_addr;
info100fs/ncpfs/ioctl.cinfo.mounted_uid = server->m.mounted_uid;
info101fs/ncpfs/ioctl.cinfo.connection  = server->connection;
info102fs/ncpfs/ioctl.cinfo.buffer_size = server->buffer_size;
info104fs/ncpfs/ioctl.cmemcpy_tofs((struct ncp_fs_info *)arg, &info, sizeof(info));
info345fs/ncpfs/ncplib_kernel.cstruct nw_modify_dos_info *info)
info356fs/ncpfs/ncplib_kernel.cncp_add_mem(server, info, sizeof(*info));
info126fs/ncpfs/ncplib_kernel.hstruct nw_modify_dos_info *info);
info190fs/umsdos/dir.cstruct umsdos_info info;
info193fs/umsdos/dir.cumsdos_parse (entry.name,entry.name_len,&info);
info194fs/umsdos/dir.cinfo.f_pos = cur_f_pos;
info195fs/umsdos/dir.cumsdos_manglename (&info);
info196fs/umsdos/dir.clret = umsdos_real_lookup (dir,info.fake.fname
info197fs/umsdos/dir.c,info.fake.len,&inode);
info199fs/umsdos/dir.c,info.fake.fname,lret,entry.flags));
info235fs/umsdos/dir.cret = umsdos_writeentry (dir,emd_dir,&info,1);
info674fs/umsdos/dir.cstruct umsdos_info info;
info675fs/umsdos/dir.cret = umsdos_parse (name,len,&info);
info676fs/umsdos/dir.cif (ret == 0) ret = umsdos_findentry (dir,&info,0);
info677fs/umsdos/dir.cPRINTK (("lookup %s pos %lu ret %d len %d ",info.fake.fname,info.f_pos,ret
info678fs/umsdos/dir.c,info.fake.len));
info690fs/umsdos/dir.cret = umsdos_real_lookup (dir,info.fake.fname,info.fake.len,result);
info694fs/umsdos/dir.c,info.fake.fname);
info695fs/umsdos/dir.cumsdos_delentry (dir,&info,S_ISDIR(info.entry.mode));
info697fs/umsdos/dir.cumsdos_lookup_patch (dir,inode,&info.entry,info.f_pos);
info699fs/umsdos/dir.c,info.entry.flags));
info700fs/umsdos/dir.cif (info.entry.flags & UMSDOS_HLINK){
info165fs/umsdos/emd.cstruct umsdos_info *info,
info170fs/umsdos/emd.cstruct umsdos_dirent *entry = &info->entry;
info192fs/umsdos/emd.cfilp.f_pos = info->f_pos;
info194fs/umsdos/emd.cret = umsdos_emd_dir_write(emd_dir,&filp,(char*)entry,info->recsize);
info267fs/umsdos/emd.cstruct umsdos_info *info,    /* Hold name and name_len */
info280fs/umsdos/emd.cstruct umsdos_dirent *entry = &info->entry;
info281fs/umsdos/emd.cint recsize = info->recsize;
info305fs/umsdos/emd.cinfo->f_pos = empty.posok;
info312fs/umsdos/emd.cinfo->f_pos = file_pos;
info335fs/umsdos/emd.cinfo->f_pos = empty.posok;
info343fs/umsdos/emd.cinfo->f_pos = file_pos;
info353fs/umsdos/emd.cumsdos_manglename(info);
info367fs/umsdos/emd.cstruct umsdos_info *info)
info370fs/umsdos/emd.cint ret = umsdos_find (dir,info,&emd_dir);
info374fs/umsdos/emd.cret = umsdos_writeentry(dir,emd_dir,info,0);
info386fs/umsdos/emd.cstruct umsdos_info *info)
info390fs/umsdos/emd.cumsdos_parse ("..LINK",6,info);
info391fs/umsdos/emd.cinfo->entry.name_len = 0;
info392fs/umsdos/emd.cret = umsdos_find (dir,info,&emd_dir);
info400fs/umsdos/emd.cinfo->entry.name_len = sprintf (info->entry.name,"..LINK%ld"
info401fs/umsdos/emd.c,info->f_pos);
info414fs/umsdos/emd.cstruct umsdos_info *info,
info418fs/umsdos/emd.cint ret = umsdos_find (dir,info,&emd_dir);
info420fs/umsdos/emd.cif (info->entry.name_len != 0){
info421fs/umsdos/emd.cif ((isdir != 0) != (S_ISDIR(info->entry.mode) != 0)){
info422fs/umsdos/emd.cif (S_ISDIR(info->entry.mode)){
info428fs/umsdos/emd.cret = umsdos_writeentry(dir,emd_dir,info,1);
info476fs/umsdos/emd.cstruct umsdos_info *info,
info482fs/umsdos/emd.cint ret = umsdos_find (dir,info,&emd_dir);
info485fs/umsdos/emd.cif (S_ISDIR(info->entry.mode)){
info149fs/umsdos/ioctl.cstruct umsdos_info info;
info151fs/umsdos/ioctl.cumsdos_parse (entry.name,entry.name_len,&info);
info152fs/umsdos/ioctl.cinfo.f_pos = f_pos;
info153fs/umsdos/ioctl.cumsdos_manglename(&info);
info157fs/umsdos/ioctl.c,info.fake.fname,info.fake.len+1);
info199fs/umsdos/ioctl.cstruct umsdos_info info;
info202fs/umsdos/ioctl.cmemcpy (&info.entry,&data.umsdos_dirent
info205fs/umsdos/ioctl.c,data.umsdos_dirent.name_len,&info);
info206fs/umsdos/ioctl.cret = umsdos_newentry (dir,&info);
info231fs/umsdos/ioctl.cstruct umsdos_info info;
info234fs/umsdos/ioctl.cmemcpy (&info.entry,&data.umsdos_dirent
info237fs/umsdos/ioctl.c,data.umsdos_dirent.name_len,&info);
info238fs/umsdos/ioctl.cret = umsdos_delentry (dir,&info
info23fs/umsdos/mangle.cvoid umsdos_manglename (struct umsdos_info *info)
info25fs/umsdos/mangle.cif (info->msdos_reject){
info73fs/umsdos/mangle.cchar *pt = info->fake.fname + info->fake.len;
info87fs/umsdos/mangle.cu.entry_num = info->f_pos / UMSDOS_REC_SIZE;
info98fs/umsdos/mangle.cinfo->fake.len += 4;
info99fs/umsdos/mangle.cinfo->msdos_reject = 0;    /* Avoid mangling twice */
info136fs/umsdos/mangle.cstruct umsdos_info *info)
info283fs/umsdos/mangle.cchar *pt = info->fake.fname;
info289fs/umsdos/mangle.cmemcpy (info->fake.fname,fname,msdos_len);
info292fs/umsdos/mangle.cinfo->msdos_reject = 1;
info301fs/umsdos/mangle.cstrncpy (info->fake.fname,fname,len);
info302fs/umsdos/mangle.cinfo->msdos_reject = 0;
info355fs/umsdos/mangle.cif (memcmp(info->fake.fname,tbdev[i],base_len)==0){
info356fs/umsdos/mangle.cmemcpy (basen,info->fake.fname,base_len);
info362fs/umsdos/mangle.cinfo->fake.fname[0] = '-';
info363fs/umsdos/mangle.cstrcpy (info->fake.fname+1,basen);  /* GLU  C'est sur on a un 0 a la fin */
info365fs/umsdos/mangle.cinfo->msdos_reject = 1;
info370fs/umsdos/mangle.cinfo->fake.fname[msdos_len] = '\0';  /* Help doing printk */
info372fs/umsdos/mangle.cinfo->fake.len = msdos_len;
info374fs/umsdos/mangle.cmemcpy (info->entry.name,fname,len);
info375fs/umsdos/mangle.cinfo->entry.name_len = len;
info381fs/umsdos/mangle.cinfo->recsize = umsdos_evalrecsize (len);
info453fs/umsdos/mangle.cstruct umsdos_info info;
info454fs/umsdos/mangle.cint ok = umsdos_parse (pttb->fname,strlen(pttb->fname),&info);
info455fs/umsdos/mangle.cif (strcmp(info.fake.fname,pttb->msname)!=0){
info457fs/umsdos/mangle.cprintf ("%s <> %s\n",info.fake.fname,pttb->msname);
info458fs/umsdos/mangle.c}else if (info.msdos_reject != pttb->msdos_reject){
info460fs/umsdos/mangle.cprintf ("%d <> %d\n",info.msdos_reject,pttb->msdos_reject);
info212fs/umsdos/namei.cstruct umsdos_info info;
info213fs/umsdos/namei.cret = umsdos_parse (name,len,&info);
info216fs/umsdos/namei.cinfo.entry.mode = mode;
info217fs/umsdos/namei.cinfo.entry.rdev = rdev;
info218fs/umsdos/namei.cinfo.entry.flags = flags;
info219fs/umsdos/namei.cinfo.entry.uid = current->fsuid;
info220fs/umsdos/namei.cinfo.entry.gid = (dir->i_mode & S_ISGID)
info222fs/umsdos/namei.cinfo.entry.ctime = info.entry.atime = info.entry.mtime
info224fs/umsdos/namei.cinfo.entry.nlink = 1;
info226fs/umsdos/namei.cret = umsdos_newentry (dir,&info);
info229fs/umsdos/namei.cret = msdos_create (dir,info.fake.fname,info.fake.len
info233fs/umsdos/namei.cumsdos_lookup_patch (dir,inode,&info.entry,info.f_pos);
info236fs/umsdos/namei.c,info.fake.fname,current->pid,info.f_pos));
info263fs/umsdos/namei.c,info.fake.fname,-ret,current->pid,info.f_pos);
info265fs/umsdos/namei.cumsdos_delentry (dir,&info,0);
info268fs/umsdos/namei.c,info.fake.fname,ret,info.f_pos));
info592fs/umsdos/namei.cstruct umsdos_info info;
info593fs/umsdos/namei.cret = umsdos_newhidden (olddir,&info);
info599fs/umsdos/namei.c,olddir,info.entry.name,info.entry.name_len
info685fs/umsdos/namei.cstruct umsdos_info info;
info686fs/umsdos/namei.cret = umsdos_parse (name,len,&info);
info689fs/umsdos/namei.cinfo.entry.mode = mode | S_IFDIR;
info690fs/umsdos/namei.cinfo.entry.rdev = 0;
info691fs/umsdos/namei.cinfo.entry.uid = current->fsuid;
info692fs/umsdos/namei.cinfo.entry.gid = (dir->i_mode & S_ISGID)
info694fs/umsdos/namei.cinfo.entry.ctime = info.entry.atime = info.entry.mtime
info696fs/umsdos/namei.cinfo.entry.flags = 0;
info698fs/umsdos/namei.cinfo.entry.nlink = 1;
info699fs/umsdos/namei.cret = umsdos_newentry (dir,&info);
info703fs/umsdos/namei.cret = msdos_mkdir (dir,info.fake.fname,info.fake.len,mode);
info705fs/umsdos/namei.cumsdos_delentry (dir,&info,1);
info718fs/umsdos/namei.cret = umsdos_real_lookup (dir,info.fake.fname
info719fs/umsdos/namei.c,info.fake.len,&subdir);
info893fs/umsdos/namei.cstruct umsdos_info info;
info895fs/umsdos/namei.cumsdos_parse (name,len,&info);
info898fs/umsdos/namei.cumsdos_findentry (dir,&info,2);
info899fs/umsdos/namei.cret = msdos_rmdir (dir,info.fake.fname
info900fs/umsdos/namei.c,info.fake.len);
info902fs/umsdos/namei.cret = umsdos_delentry (dir,&info,1);
info934fs/umsdos/namei.cstruct umsdos_info info;
info935fs/umsdos/namei.cret = umsdos_parse (name,len,&info);
info938fs/umsdos/namei.cret = umsdos_findentry(dir,&info,1);
info940fs/umsdos/namei.cPRINTK (("UMSDOS_unlink %s ",info.fake.fname));
info943fs/umsdos/namei.ccurrent->fsuid == info.entry.uid ||
info945fs/umsdos/namei.cif (info.entry.flags & UMSDOS_HLINK){
info984fs/umsdos/namei.cret = umsdos_delentry (dir,&info,0);
info986fs/umsdos/namei.cPRINTK (("Avant msdos_unlink %s ",info.fake.fname));
info988fs/umsdos/namei.cret = msdos_unlink_umsdos (dir,info.fake.fname
info989fs/umsdos/namei.c,info.fake.len);
info990fs/umsdos/namei.cPRINTK (("msdos_unlink %s %o ret %d ",info.fake.fname
info991fs/umsdos/namei.c,info.entry.mode,ret));
info27include/asm-alpha/a.out.h__u64 info;    /* after that it looks quite normal.. */
info64include/asm-alpha/a.out.h#define  a_info    ah.info
info65include/asm-i386/processor.hstruct info  *info;
info116include/linux/isdn.hunsigned long info[ISDN_MAX_CHANNELS];
info423include/linux/isdn.hmodem_info         info[ISDN_MAX_CHANNELS];    /* Private data           */
info10include/linux/isdn_ppp.h} info;
info31include/net/icmp.hunsigned long info, struct device *dev);
info18kernel/info.casmlinkage int sys_sysinfo(struct sysinfo *info)
info23kernel/info.cerror = verify_area(VERIFY_WRITE, info, sizeof(struct sysinfo));
info39kernel/info.cmemcpy_tofs(info, &val, sizeof(struct sysinfo));
info254net/ipv4/icmp.cvoid icmp_send(struct sk_buff *skb_in, int type, int code, unsigned long info, struct device *dev)
info323net/ipv4/icmp.cicmp_param.icmph.un.gateway = info;