taglinefilesource code
info679drivers/FPU-emu/fpu_entry.cvoid math_abort(struct info * info, unsigned int signal)
info686drivers/FPU-emu/fpu_entry.c__asm__("movl %0,%%esp ; ret": :"g" (((long) info)-4));
info55drivers/FPU-emu/fpu_proto.hextern void math_abort(struct info *info, unsigned int signal);
info20drivers/FPU-emu/fpu_system.h#define SETUP_DATA_AREA(arg)    FPU_info = (struct info *) &arg
info36drivers/FPU-emu/fpu_system.h#define FPU_info    (I387.soft.info)
info34drivers/FPU-emu/get_address.coffsetof(struct info,___eax),
info35drivers/FPU-emu/get_address.coffsetof(struct info,___ecx),
info36drivers/FPU-emu/get_address.coffsetof(struct info,___edx),
info37drivers/FPU-emu/get_address.coffsetof(struct info,___ebx),
info38drivers/FPU-emu/get_address.coffsetof(struct info,___esp),
info39drivers/FPU-emu/get_address.coffsetof(struct info,___ebp),
info40drivers/FPU-emu/get_address.coffsetof(struct info,___esi),
info41drivers/FPU-emu/get_address.coffsetof(struct info,___edi)
info47drivers/FPU-emu/get_address.coffsetof(struct info,___cs),
info48drivers/FPU-emu/get_address.coffsetof(struct info,___vm86_ds),
info49drivers/FPU-emu/get_address.coffsetof(struct info,___vm86_es),
info50drivers/FPU-emu/get_address.coffsetof(struct info,___vm86_fs),
info51drivers/FPU-emu/get_address.coffsetof(struct info,___vm86_gs),
info52drivers/FPU-emu/get_address.coffsetof(struct info,___ss),
info53drivers/FPU-emu/get_address.coffsetof(struct info,___vm86_ds)
info60drivers/FPU-emu/get_address.coffsetof(struct info,___cs),
info61drivers/FPU-emu/get_address.coffsetof(struct info,___ds),
info62drivers/FPU-emu/get_address.coffsetof(struct info,___es),
info63drivers/FPU-emu/get_address.coffsetof(struct info,___fs),
info64drivers/FPU-emu/get_address.coffsetof(struct info,___gs),
info65drivers/FPU-emu/get_address.coffsetof(struct info,___ss),
info66drivers/FPU-emu/get_address.coffsetof(struct info,___ds)
info64drivers/block/ide-cd.cbyte info[4];
info346drivers/char/cyclades.cserial_paranoia_check(struct cyclades_port *info,
info357drivers/char/cyclades.cif (!info) {
info362drivers/char/cyclades.cif( (long)info < (long)(&cy_port[0])
info363drivers/char/cyclades.c|| (long)(&cy_port[NR_PORTS]) < (long)info ){
info368drivers/char/cyclades.cif (info->magic != CYCLADES_MAGIC) {
info442drivers/char/cyclades.cstruct cyclades_port *info = (struct cyclades_port *)tty->driver_data;
info448drivers/char/cyclades.cprintk("cy_stop ttyC%d\n", info->line); /* */
info451drivers/char/cyclades.cif (serial_paranoia_check(info, tty->device, "cy_stop"))
info454drivers/char/cyclades.ccinfo = &cy_card[info->card];
info455drivers/char/cyclades.cchannel = info->line - cinfo->first_line;
info459drivers/char/cyclades.c(cy_card[info->card].base_addr + chip * CyRegSize);
info473drivers/char/cyclades.cstruct cyclades_port *info = (struct cyclades_port *)tty->driver_data;
info479drivers/char/cyclades.cprintk("cy_start ttyC%d\n", info->line); /* */
info482drivers/char/cyclades.cif (serial_paranoia_check(info, tty->device, "cy_start"))
info485drivers/char/cyclades.ccinfo = &cy_card[info->card];
info486drivers/char/cyclades.cchannel = info->line - cinfo->first_line;
info490drivers/char/cyclades.c(cy_card[info->card].base_addr + chip * CyRegSize);
info508drivers/char/cyclades.ccy_sched_event(struct cyclades_port *info, int event)
info510drivers/char/cyclades.cinfo->event |= 1 << event; /* remember what kind of event and who */
info511drivers/char/cyclades.cqueue_task_irq_off(&info->tqueue, &tq_cyclades); /* it belongs to */
info539drivers/char/cyclades.cstruct cyclades_port *info;
info584drivers/char/cyclades.cinfo = &cy_port[i];
info585drivers/char/cyclades.cinfo->last_active = jiffies;
info590drivers/char/cyclades.cif(info->tty == 0){
info601drivers/char/cyclades.ctty = info->tty;
info605drivers/char/cyclades.cif(data & info->ignore_status_mask){
info610drivers/char/cyclades.cif (data & info->read_status_mask){
info616drivers/char/cyclades.cif (info->flags & ASYNC_SAK){
info698drivers/char/cyclades.cinfo = &cy_port[i];
info699drivers/char/cyclades.cinfo->last_active = jiffies;
info700drivers/char/cyclades.cif(info->tty == 0){
info706drivers/char/cyclades.cchar_count = info->xmit_fifo_size;
info709drivers/char/cyclades.cif(info->x_char) { /* send special char */
info710drivers/char/cyclades.coutch = info->x_char;
info713drivers/char/cyclades.cinfo->x_char = 0;
info716drivers/char/cyclades.cif (info->x_break){
info729drivers/char/cyclades.cbase_addr[CyTDR] = info->x_break*200/HZ;
info733drivers/char/cyclades.cinfo->x_break = 0;
info737drivers/char/cyclades.cif (!info->xmit_cnt){
info741drivers/char/cyclades.cif (info->tty->stopped || info->tty->hw_stopped){
info756drivers/char/cyclades.coutch = info->xmit_buf[info->xmit_tail];
info758drivers/char/cyclades.cinfo->xmit_cnt--;
info759drivers/char/cyclades.cinfo->xmit_tail = (info->xmit_tail + 1)
info764drivers/char/cyclades.cinfo->xmit_cnt--;
info765drivers/char/cyclades.cinfo->xmit_tail = (info->xmit_tail + 1)
info776drivers/char/cyclades.cif (info->xmit_cnt < WAKEUP_CHARS) {
info777drivers/char/cyclades.ccy_sched_event(info, Cy_EVENT_WRITE_WAKEUP);
info791drivers/char/cyclades.cinfo = &cy_port[channel + chip * 4 + cinfo->first_line];
info792drivers/char/cyclades.cinfo->last_active = jiffies;
info799drivers/char/cyclades.cif(info->tty == 0){ /* nowhere to put the data, ignore it */
info803drivers/char/cyclades.c&& (info->flags & ASYNC_CHECK_CD)){
info806drivers/char/cyclades.ccy_sched_event(info, Cy_EVENT_OPEN_WAKEUP);
info807drivers/char/cyclades.c}else if(!((info->flags & ASYNC_CALLOUT_ACTIVE)
info808drivers/char/cyclades.c&&(info->flags & ASYNC_CALLOUT_NOHUP))){
info810drivers/char/cyclades.ccy_sched_event(info, Cy_EVENT_HANGUP);
info814drivers/char/cyclades.c&& (info->flags & ASYNC_CTS_FLOW)){
info815drivers/char/cyclades.cif(info->tty->stopped){
info818drivers/char/cyclades.cinfo->tty->stopped = 0;
info820drivers/char/cyclades.ccy_sched_event(info, Cy_EVENT_WRITE_WAKEUP);
info825drivers/char/cyclades.cinfo->tty->stopped = 1;
info880drivers/char/cyclades.cstruct cyclades_port *info = (struct cyclades_port *) private_;
info883drivers/char/cyclades.ctty = info->tty;
info887drivers/char/cyclades.cif (clear_bit(Cy_EVENT_HANGUP, &info->event)) {
info888drivers/char/cyclades.ctty_hangup(info->tty);
info889drivers/char/cyclades.cwake_up_interruptible(&info->open_wait);
info890drivers/char/cyclades.cinfo->flags &= ~(ASYNC_NORMAL_ACTIVE|
info893drivers/char/cyclades.cif (clear_bit(Cy_EVENT_OPEN_WAKEUP, &info->event)) {
info894drivers/char/cyclades.cwake_up_interruptible(&info->open_wait);
info896drivers/char/cyclades.cif (clear_bit(Cy_EVENT_WRITE_WAKEUP, &info->event)) {
info1076drivers/char/cyclades.cstartup(struct cyclades_port * info)
info1082drivers/char/cyclades.cif (info->flags & ASYNC_INITIALIZED){
info1086drivers/char/cyclades.cif (!info->type){
info1087drivers/char/cyclades.cif (info->tty){
info1088drivers/char/cyclades.cset_bit(TTY_IO_ERROR, &info->tty->flags);
info1092drivers/char/cyclades.cif (!info->xmit_buf){
info1093drivers/char/cyclades.cinfo->xmit_buf = (unsigned char *) get_free_page (GFP_KERNEL);
info1094drivers/char/cyclades.cif (!info->xmit_buf){
info1099drivers/char/cyclades.cconfig_setup(info);
info1101drivers/char/cyclades.ccard = info->card;
info1102drivers/char/cyclades.cchannel = (info->line) - (cy_card[card].first_line);
info1131drivers/char/cyclades.cinfo->flags |= ASYNC_INITIALIZED;
info1133drivers/char/cyclades.cif (info->tty){
info1134drivers/char/cyclades.cclear_bit(TTY_IO_ERROR, &info->tty->flags);
info1136drivers/char/cyclades.cinfo->xmit_cnt = info->xmit_head = info->xmit_tail = 0;
info1147drivers/char/cyclades.cstart_xmit( struct cyclades_port *info )
info1153drivers/char/cyclades.ccard = info->card;
info1154drivers/char/cyclades.cchannel = (info->line) - (cy_card[card].first_line);
info1170drivers/char/cyclades.cshutdown(struct cyclades_port * info)
info1176drivers/char/cyclades.cif (!(info->flags & ASYNC_INITIALIZED)){
info1181drivers/char/cyclades.ccard = info->card;
info1182drivers/char/cyclades.cchannel = info->line - cy_card[card].first_line;
info1200drivers/char/cyclades.cif (info->xmit_buf){
info1201drivers/char/cyclades.cfree_page((unsigned long) info->xmit_buf);
info1202drivers/char/cyclades.cinfo->xmit_buf = 0;
info1206drivers/char/cyclades.cif (!info->tty || (info->tty->termios->c_cflag & HUPCL)) {
info1219drivers/char/cyclades.cif (info->tty){
info1220drivers/char/cyclades.cset_bit(TTY_IO_ERROR, &info->tty->flags);
info1222drivers/char/cyclades.cinfo->flags &= ~ASYNC_INITIALIZED;
info1235drivers/char/cyclades.cconfig_setup(struct cyclades_port * info)
info1243drivers/char/cyclades.cif (!info->tty || !info->tty->termios){
info1246drivers/char/cyclades.cif (info->line == -1){
info1249drivers/char/cyclades.ccflag = info->tty->termios->c_cflag;
info1272drivers/char/cyclades.cinfo->tty->termios->c_cflag &= ~CBAUDEX;
info1276drivers/char/cyclades.cif ((info->flags & ASYNC_SPD_MASK) == ASYNC_SPD_HI)
info1278drivers/char/cyclades.cif ((info->flags & ASYNC_SPD_MASK) == ASYNC_SPD_VHI)
info1281drivers/char/cyclades.cinfo->tbpr = baud_bpr[i]; /* Tx BPR */
info1282drivers/char/cyclades.cinfo->tco = baud_co[i]; /* Tx CO */
info1283drivers/char/cyclades.cinfo->rbpr = baud_bpr[i]; /* Rx BPR */
info1284drivers/char/cyclades.cinfo->rco = baud_co[i]; /* Rx CO */
info1286drivers/char/cyclades.cinfo->timeout = (info->xmit_fifo_size*HZ*30/269) + 2;
info1289drivers/char/cyclades.cinfo->timeout = (info->xmit_fifo_size*HZ*15/baud_table[i]) + 2;
info1292drivers/char/cyclades.cinfo->timeout = 0;
info1299drivers/char/cyclades.cinfo->cor5 = 0;
info1300drivers/char/cyclades.cinfo->cor4 = 0;
info1301drivers/char/cyclades.cinfo->cor3 = baud_cor3[i]; /* receive threshold */
info1302drivers/char/cyclades.cinfo->cor2 = CyETC;
info1305drivers/char/cyclades.cinfo->cor1 = Cy_5_BITS;
info1308drivers/char/cyclades.cinfo->cor1 = Cy_6_BITS;
info1311drivers/char/cyclades.cinfo->cor1 = Cy_7_BITS;
info1314drivers/char/cyclades.cinfo->cor1 = Cy_8_BITS;
info1318drivers/char/cyclades.cinfo->cor1 |= Cy_2_STOP;
info1322drivers/char/cyclades.cinfo->cor1 |= CyPARITY_O;
info1324drivers/char/cyclades.cinfo->cor1 |= CyPARITY_E;
info1327drivers/char/cyclades.cinfo->cor1 |= CyPARITY_NONE;
info1332drivers/char/cyclades.cinfo->flags |= ASYNC_CTS_FLOW;
info1334drivers/char/cyclades.cinfo->flags &= ~ASYNC_CTS_FLOW;
info1336drivers/char/cyclades.cinfo->flags &= ~ASYNC_CHECK_CD;
info1338drivers/char/cyclades.cinfo->flags |= ASYNC_CHECK_CD;
info1341drivers/char/cyclades.ccard = info->card;
info1342drivers/char/cyclades.cchannel = (info->line) - (cy_card[card].first_line);
info1353drivers/char/cyclades.cbase_addr[CyTCOR] = info->tco;
info1354drivers/char/cyclades.cbase_addr[CyTBPR] = info->tbpr;
info1355drivers/char/cyclades.cbase_addr[CyRCOR] = info->rco;
info1356drivers/char/cyclades.cbase_addr[CyRBPR] = info->rbpr;
info1360drivers/char/cyclades.cbase_addr[CySCHR1] = START_CHAR(info->tty);
info1361drivers/char/cyclades.cbase_addr[CySCHR2] = STOP_CHAR(info->tty);
info1362drivers/char/cyclades.cbase_addr[CyCOR1] = info->cor1;
info1363drivers/char/cyclades.cbase_addr[CyCOR2] = info->cor2;
info1364drivers/char/cyclades.cbase_addr[CyCOR3] = info->cor3;
info1365drivers/char/cyclades.cbase_addr[CyCOR4] = info->cor4;
info1366drivers/char/cyclades.cbase_addr[CyCOR5] = info->cor5;
info1374drivers/char/cyclades.cif (C_CLOCAL(info->tty)) {
info1409drivers/char/cyclades.cif (C_CRTSCTS(info->tty)) {
info1410drivers/char/cyclades.cinfo->cor2 |= CyCtsAE;
info1412drivers/char/cyclades.cinfo->cor2 &= ~CyCtsAE;
info1415drivers/char/cyclades.cif (info->tty){
info1416drivers/char/cyclades.cclear_bit(TTY_IO_ERROR, &info->tty->flags);
info1427drivers/char/cyclades.cstruct cyclades_port *info = (struct cyclades_port *)tty->driver_data;
info1431drivers/char/cyclades.cprintk("cy_put_char ttyC%d\n", info->line);
info1434drivers/char/cyclades.cif (serial_paranoia_check(info, tty->device, "cy_put_char"))
info1437drivers/char/cyclades.cif (!tty || !info->xmit_buf)
info1441drivers/char/cyclades.cif (info->xmit_cnt >= PAGE_SIZE - 1) {
info1446drivers/char/cyclades.cinfo->xmit_buf[info->xmit_head++] = ch;
info1447drivers/char/cyclades.cinfo->xmit_head &= PAGE_SIZE - 1;
info1448drivers/char/cyclades.cinfo->xmit_cnt++;
info1456drivers/char/cyclades.cstruct cyclades_port *info = (struct cyclades_port *)tty->driver_data;
info1462drivers/char/cyclades.cprintk("cy_flush_chars ttyC%d\n", info->line); /* */
info1465drivers/char/cyclades.cif (serial_paranoia_check(info, tty->device, "cy_flush_chars"))
info1468drivers/char/cyclades.cif (info->xmit_cnt <= 0 || tty->stopped
info1469drivers/char/cyclades.c|| tty->hw_stopped || !info->xmit_buf)
info1472drivers/char/cyclades.ccard = info->card;
info1473drivers/char/cyclades.cchannel = info->line - cy_card[card].first_line;
info1496drivers/char/cyclades.cstruct cyclades_port *info = (struct cyclades_port *)tty->driver_data;
info1501drivers/char/cyclades.cprintk("cy_write ttyC%d\n", info->line); /* */
info1504drivers/char/cyclades.cif (serial_paranoia_check(info, tty->device, "cy_write")){
info1508drivers/char/cyclades.cif (!tty || !info->xmit_buf || !tmp_buf){
info1514drivers/char/cyclades.cc = MIN(count, MIN(SERIAL_XMIT_SIZE - info->xmit_cnt - 1,
info1515drivers/char/cyclades.cSERIAL_XMIT_SIZE - info->xmit_head));
info1524drivers/char/cyclades.cc = MIN(c, MIN(SERIAL_XMIT_SIZE - info->xmit_cnt - 1,
info1525drivers/char/cyclades.cSERIAL_XMIT_SIZE - info->xmit_head));
info1526drivers/char/cyclades.cmemcpy(info->xmit_buf + info->xmit_head, tmp_buf, c);
info1529drivers/char/cyclades.cmemcpy(info->xmit_buf + info->xmit_head, buf, c);
info1530drivers/char/cyclades.cinfo->xmit_head = (info->xmit_head + c) & (SERIAL_XMIT_SIZE-1);
info1531drivers/char/cyclades.cinfo->xmit_cnt += c;
info1539drivers/char/cyclades.cif (info->xmit_cnt
info1542drivers/char/cyclades.cstart_xmit(info);
info1551drivers/char/cyclades.cstruct cyclades_port *info = (struct cyclades_port *)tty->driver_data;
info1555drivers/char/cyclades.cprintk("cy_write_room ttyC%d\n", info->line); /* */
info1558drivers/char/cyclades.cif (serial_paranoia_check(info, tty->device, "cy_write_room"))
info1560drivers/char/cyclades.cret = PAGE_SIZE - info->xmit_cnt - 1;
info1570drivers/char/cyclades.cstruct cyclades_port *info = (struct cyclades_port *)tty->driver_data;
info1573drivers/char/cyclades.cprintk("cy_chars_in_buffer ttyC%d %d\n", info->line, info->xmit_cnt); /* */
info1576drivers/char/cyclades.cif (serial_paranoia_check(info, tty->device, "cy_chars_in_buffer"))
info1579drivers/char/cyclades.creturn info->xmit_cnt;
info1586drivers/char/cyclades.cstruct cyclades_port *info = (struct cyclades_port *)tty->driver_data;
info1590drivers/char/cyclades.cprintk("cy_flush_buffer ttyC%d\n", info->line); /* */
info1593drivers/char/cyclades.cif (serial_paranoia_check(info, tty->device, "cy_flush_buffer"))
info1596drivers/char/cyclades.cinfo->xmit_cnt = info->xmit_head = info->xmit_tail = 0;
info1612drivers/char/cyclades.cstruct cyclades_port *info = (struct cyclades_port *)tty->driver_data;
info1622drivers/char/cyclades.cprintk("cy_throttle ttyC%d\n", info->line);
info1625drivers/char/cyclades.cif (serial_paranoia_check(info, tty->device, "cy_nthrottle")){
info1630drivers/char/cyclades.cinfo->x_char = STOP_CHAR(tty);
info1634drivers/char/cyclades.ccard = info->card;
info1635drivers/char/cyclades.cchannel = info->line - cy_card[card].first_line;
info1653drivers/char/cyclades.cstruct cyclades_port *info = (struct cyclades_port *)tty->driver_data;
info1663drivers/char/cyclades.cprintk("cy_unthrottle ttyC%d\n", info->line);
info1666drivers/char/cyclades.cif (serial_paranoia_check(info, tty->device, "cy_nthrottle")){
info1671drivers/char/cyclades.cinfo->x_char = START_CHAR(tty);
info1675drivers/char/cyclades.ccard = info->card;
info1676drivers/char/cyclades.cchannel = info->line - cy_card[card].first_line;
info1691drivers/char/cyclades.cget_serial_info(struct cyclades_port * info,
info1695drivers/char/cyclades.cstruct cyclades_card *cinfo = &cy_card[info->card];
info1701drivers/char/cyclades.ctmp.type = info->type;
info1702drivers/char/cyclades.ctmp.line = info->line;
info1703drivers/char/cyclades.ctmp.port = info->card * 0x100 + info->line - cinfo->first_line;
info1705drivers/char/cyclades.ctmp.flags = info->flags;
info1707drivers/char/cyclades.ctmp.close_delay = info->close_delay;
info1715drivers/char/cyclades.cset_serial_info(struct cyclades_port * info,
info1725drivers/char/cyclades.cold_info = *info;
info1728drivers/char/cyclades.cif ((new_serial.close_delay != info->close_delay) ||
info1730drivers/char/cyclades.c(info->flags & ASYNC_FLAGS & ~ASYNC_USR_MASK)))
info1732drivers/char/cyclades.cinfo->flags = ((info->flags & ~ASYNC_USR_MASK) |
info1743drivers/char/cyclades.cinfo->flags = ((info->flags & ~ASYNC_FLAGS) |
info1745drivers/char/cyclades.cinfo->close_delay = new_serial.close_delay;
info1749drivers/char/cyclades.cif (info->flags & ASYNC_INITIALIZED){
info1750drivers/char/cyclades.cconfig_setup(info);
info1753drivers/char/cyclades.creturn startup(info);
info1758drivers/char/cyclades.cget_modem_info(struct cyclades_port * info, unsigned int *value)
info1766drivers/char/cyclades.ccard = info->card;
info1767drivers/char/cyclades.cchannel = (info->line) - (cy_card[card].first_line);
info1789drivers/char/cyclades.cset_modem_info(struct cyclades_port * info, unsigned int cmd,
info1797drivers/char/cyclades.ccard = info->card;
info1798drivers/char/cyclades.cchannel = (info->line) - (cy_card[card].first_line);
info1884drivers/char/cyclades.csend_break( struct cyclades_port * info, int duration)
info1888drivers/char/cyclades.cinfo->x_break = duration;
info1889drivers/char/cyclades.cif (!info->xmit_cnt ) {
info1890drivers/char/cyclades.cstart_xmit(info);
info1900drivers/char/cyclades.cstruct cyclades_port * info = (struct cyclades_port *)tty->driver_data;
info1904drivers/char/cyclades.cprintk("cy_ioctl ttyC%d, cmd = %x arg = %lx\n", info->line, cmd, arg); /* */
info1914drivers/char/cyclades.csend_break(info, HZ/4); /* 1/4 second */
info1921drivers/char/cyclades.csend_break(info, arg ? arg*(HZ/10) : HZ/4);
info1926drivers/char/cyclades.cret_val = set_modem_info(info, cmd, (unsigned int *) arg);
info1952drivers/char/cyclades.cret_val = get_modem_info(info, (unsigned int *) arg);
info1961drivers/char/cyclades.cret_val = get_serial_info(info,
info1965drivers/char/cyclades.cret_val = set_serial_info(info,
info1985drivers/char/cyclades.cstruct cyclades_port *info = (struct cyclades_port *)tty->driver_data;
info1988drivers/char/cyclades.cprintk("cy_set_termios ttyC%d\n", info->line);
info1993drivers/char/cyclades.cconfig_setup(info);
info2003drivers/char/cyclades.cwake_up_interruptible(&info->open_wait);
info2013drivers/char/cyclades.cstruct cyclades_port * info = (struct cyclades_port *)tty->driver_data;
info2017drivers/char/cyclades.cprintk("cy_close ttyC%d\n", info->line);
info2020drivers/char/cyclades.cif (!info
info2021drivers/char/cyclades.c|| serial_paranoia_check(info, tty->device, "cy_close")){
info2025drivers/char/cyclades.cprintk("cy_close ttyC%d, count = %d\n", info->line, info->count);
info2028drivers/char/cyclades.cif ((tty->count == 1) && (info->count != 1)) {
info2037drivers/char/cyclades.c"info->count is %d\n", info->count);
info2038drivers/char/cyclades.cinfo->count = 1;
info2041drivers/char/cyclades.cprintk("cyc: %d: decrementing count to %d\n", __LINE__, info->count - 1);
info2043drivers/char/cyclades.cif (--info->count < 0) {
info2045drivers/char/cyclades.cinfo->line, info->count);
info2049drivers/char/cyclades.cinfo->count = 0;
info2051drivers/char/cyclades.cif (info->count)
info2053drivers/char/cyclades.cinfo->flags |= ASYNC_CLOSING;
info2058drivers/char/cyclades.cif (info->flags & ASYNC_NORMAL_ACTIVE)
info2059drivers/char/cyclades.cinfo->normal_termios = *tty->termios;
info2060drivers/char/cyclades.cif (info->flags & ASYNC_CALLOUT_ACTIVE)
info2061drivers/char/cyclades.cinfo->callout_termios = *tty->termios;
info2062drivers/char/cyclades.cif (info->flags & ASYNC_INITIALIZED)
info2064drivers/char/cyclades.cshutdown(info);
info2069drivers/char/cyclades.cinfo->event = 0;
info2070drivers/char/cyclades.cinfo->tty = 0;
info2079drivers/char/cyclades.cif (info->blocked_open) {
info2080drivers/char/cyclades.cif (info->close_delay) {
info2082drivers/char/cyclades.ccurrent->timeout = jiffies + info->close_delay;
info2085drivers/char/cyclades.cwake_up_interruptible(&info->open_wait);
info2087drivers/char/cyclades.cinfo->flags &= ~(ASYNC_NORMAL_ACTIVE|ASYNC_CALLOUT_ACTIVE|
info2089drivers/char/cyclades.cwake_up_interruptible(&info->close_wait);
info2104drivers/char/cyclades.cstruct cyclades_port * info = (struct cyclades_port *)tty->driver_data;
info2107drivers/char/cyclades.cprintk("cy_hangup ttyC%d\n", info->line); /* */
info2110drivers/char/cyclades.cif (serial_paranoia_check(info, tty->device, "cy_hangup"))
info2113drivers/char/cyclades.cshutdown(info);
info2115drivers/char/cyclades.cinfo->event = 0;
info2116drivers/char/cyclades.cinfo->count = 0;
info2120drivers/char/cyclades.cinfo->tty = 0;
info2122drivers/char/cyclades.cinfo->flags &= ~(ASYNC_NORMAL_ACTIVE|ASYNC_CALLOUT_ACTIVE);
info2123drivers/char/cyclades.cwake_up_interruptible(&info->open_wait);
info2136drivers/char/cyclades.cstruct cyclades_port *info)
info2149drivers/char/cyclades.cif (info->flags & ASYNC_CLOSING) {
info2150drivers/char/cyclades.cinterruptible_sleep_on(&info->close_wait);
info2151drivers/char/cyclades.cif (info->flags & ASYNC_HUP_NOTIFY){
info2163drivers/char/cyclades.cif (info->flags & ASYNC_NORMAL_ACTIVE){
info2166drivers/char/cyclades.cif ((info->flags & ASYNC_CALLOUT_ACTIVE) &&
info2167drivers/char/cyclades.c(info->flags & ASYNC_SESSION_LOCKOUT) &&
info2168drivers/char/cyclades.c(info->session != current->session)){
info2171drivers/char/cyclades.cif ((info->flags & ASYNC_CALLOUT_ACTIVE) &&
info2172drivers/char/cyclades.c(info->flags & ASYNC_PGRP_LOCKOUT) &&
info2173drivers/char/cyclades.c(info->pgrp != current->pgrp)){
info2176drivers/char/cyclades.cinfo->flags |= ASYNC_CALLOUT_ACTIVE;
info2185drivers/char/cyclades.cif (info->flags & ASYNC_CALLOUT_ACTIVE){
info2188drivers/char/cyclades.cinfo->flags |= ASYNC_NORMAL_ACTIVE;
info2200drivers/char/cyclades.cadd_wait_queue(&info->open_wait, &wait);
info2203drivers/char/cyclades.cinfo->line, info->count);/**/
info2205drivers/char/cyclades.cinfo->count--;
info2207drivers/char/cyclades.cprintk("cyc: %d: decrementing count to %d\n", __LINE__, info->count);
info2209drivers/char/cyclades.cinfo->blocked_open++;
info2211drivers/char/cyclades.ccinfo = &cy_card[info->card];
info2212drivers/char/cyclades.cchannel = info->line - cinfo->first_line;
info2219drivers/char/cyclades.cif (!(info->flags & ASYNC_CALLOUT_ACTIVE)){
info2232drivers/char/cyclades.c|| !(info->flags & ASYNC_INITIALIZED) ){
info2233drivers/char/cyclades.cif (info->flags & ASYNC_HUP_NOTIFY) {
info2243drivers/char/cyclades.cif (!(info->flags & ASYNC_CALLOUT_ACTIVE)
info2244drivers/char/cyclades.c&& !(info->flags & ASYNC_CLOSING)
info2257drivers/char/cyclades.cinfo->line, info->count);/**/
info2262drivers/char/cyclades.cremove_wait_queue(&info->open_wait, &wait);
info2264drivers/char/cyclades.cinfo->count++;
info2266drivers/char/cyclades.cprintk("cyc: %d: incrementing count to %d\n", __LINE__, info->count);
info2269drivers/char/cyclades.cinfo->blocked_open--;
info2272drivers/char/cyclades.cinfo->line, info->count);/**/
info2276drivers/char/cyclades.cinfo->flags |= ASYNC_NORMAL_ACTIVE;
info2287drivers/char/cyclades.cstruct cyclades_port  *info;
info2295drivers/char/cyclades.cinfo = &cy_port[line];
info2297drivers/char/cyclades.cprintk("cy_open ttyC%d\n", info->line); /* */
info2299drivers/char/cyclades.cif (serial_paranoia_check(info, tty->device, "cy_open")){
info2303drivers/char/cyclades.cprintk("cy_open ttyC%d, count = %d\n", info->line, info->count);/**/
info2305drivers/char/cyclades.cinfo->count++;
info2307drivers/char/cyclades.cprintk("cyc: %d: incrementing count to %d\n", __LINE__, info->count);
info2309drivers/char/cyclades.ctty->driver_data = info;
info2310drivers/char/cyclades.cinfo->tty = tty;
info2319drivers/char/cyclades.cif ((info->count == 1) && (info->flags & ASYNC_SPLIT_TERMIOS)) {
info2321drivers/char/cyclades.c*tty->termios = info->normal_termios;
info2323drivers/char/cyclades.c*tty->termios = info->callout_termios;
info2328drivers/char/cyclades.cretval = startup(info);
info2333drivers/char/cyclades.cretval = block_til_ready(tty, filp, info);
info2342drivers/char/cyclades.cinfo->session = current->session;
info2343drivers/char/cyclades.cinfo->pgrp = current->pgrp;
info2442drivers/char/cyclades.cstruct cyclades_port *info;
info2510drivers/char/cyclades.cinfo = cy_port;
info2545drivers/char/cyclades.cinfo->magic = CYCLADES_MAGIC;
info2546drivers/char/cyclades.cinfo->type = PORT_CIRRUS;
info2547drivers/char/cyclades.cinfo->card = index;
info2548drivers/char/cyclades.cinfo->line = port_num;
info2549drivers/char/cyclades.cinfo->flags = STD_COM_FLAGS;
info2550drivers/char/cyclades.cinfo->tty = 0;
info2551drivers/char/cyclades.cinfo->xmit_fifo_size = 12;
info2552drivers/char/cyclades.cinfo->cor1 = CyPARITY_NONE|Cy_1_STOP|Cy_8_BITS;
info2553drivers/char/cyclades.cinfo->cor2 = CyETC;
info2554drivers/char/cyclades.cinfo->cor3 = 0x08; /* _very_ small receive threshold */
info2555drivers/char/cyclades.cinfo->cor4 = 0;
info2556drivers/char/cyclades.cinfo->cor5 = 0;
info2557drivers/char/cyclades.cinfo->tbpr = baud_bpr[13]; /* Tx BPR */
info2558drivers/char/cyclades.cinfo->tco = baud_co[13]; /* Tx CO */
info2559drivers/char/cyclades.cinfo->rbpr = baud_bpr[13]; /* Rx BPR */
info2560drivers/char/cyclades.cinfo->rco = baud_co[13]; /* Rx CO */
info2561drivers/char/cyclades.cinfo->close_delay = 0;
info2562drivers/char/cyclades.cinfo->x_char = 0;
info2563drivers/char/cyclades.cinfo->event = 0;
info2564drivers/char/cyclades.cinfo->count = 0;
info2568drivers/char/cyclades.cinfo->blocked_open = 0;
info2569drivers/char/cyclades.cinfo->tqueue.routine = do_softint;
info2570drivers/char/cyclades.cinfo->tqueue.data = info;
info2571drivers/char/cyclades.cinfo->callout_termios =cy_callout_driver.init_termios;
info2572drivers/char/cyclades.cinfo->normal_termios = cy_serial_driver.init_termios;
info2573drivers/char/cyclades.cinfo->open_wait = 0;
info2574drivers/char/cyclades.cinfo->close_wait = 0;
info2580drivers/char/cyclades.cprintk("ttyC%1d ", info->line);
info2581drivers/char/cyclades.cport_num++;info++;
info2592drivers/char/cyclades.cinfo->line = -1;
info2593drivers/char/cyclades.cport_num++;info++;
info2604drivers/char/cyclades.cstruct cyclades_port * info;
info2607drivers/char/cyclades.cinfo = &cy_port[line_num];
info2608drivers/char/cyclades.ccard = info->card;
info2609drivers/char/cyclades.cchannel = (info->line) - (cy_card[card].first_line);
info2621drivers/char/cyclades.cinfo->card, info->line, info->flags);
info2623drivers/char/cyclades.c(long)info->tty, info->read_status_mask,
info2624drivers/char/cyclades.cinfo->timeout, info->xmit_fifo_size);
info2626drivers/char/cyclades.cinfo->cor1, info->cor2, info->cor3, info->cor4, info->cor5);
info2628drivers/char/cyclades.cinfo->tbpr, info->tco, info->rbpr, info->rco);
info2630drivers/char/cyclades.cinfo->close_delay, info->event, info->count);
info2632drivers/char/cyclades.cinfo->x_char, info->blocked_open);
info2634drivers/char/cyclades.cinfo->session, info->pgrp, (long)info->open_wait);
info87drivers/char/serial.cstatic void autoconfig(struct async_struct * info);
info88drivers/char/serial.cstatic void change_speed(struct async_struct *info);
info202drivers/char/serial.cstatic inline int serial_paranoia_check(struct async_struct *info,
info211drivers/char/serial.cif (!info) {
info215drivers/char/serial.cif (info->magic != SERIAL_MAGIC) {
info230drivers/char/serial.cstatic inline unsigned int serial_in(struct async_struct *info, int offset)
info233drivers/char/serial.cif (info->hub6) {
info234drivers/char/serial.coutb(info->hub6 - 1 + offset, info->port);
info235drivers/char/serial.creturn inb(info->port+1);
info238drivers/char/serial.creturn inb(info->port + offset);
info241drivers/char/serial.cstatic inline unsigned int serial_inp(struct async_struct *info, int offset)
info244drivers/char/serial.cif (info->hub6) {
info245drivers/char/serial.coutb(info->hub6 - 1 + offset, info->port);
info246drivers/char/serial.creturn inb_p(info->port+1);
info250drivers/char/serial.creturn inb(info->port + offset);
info252drivers/char/serial.creturn inb_p(info->port + offset);
info256drivers/char/serial.cstatic inline void serial_out(struct async_struct *info, int offset, int value)
info259drivers/char/serial.cif (info->hub6) {
info260drivers/char/serial.coutb(info->hub6 - 1 + offset, info->port);
info261drivers/char/serial.coutb(value, info->port+1);
info264drivers/char/serial.coutb(value, info->port+offset);
info267drivers/char/serial.cstatic inline void serial_outp(struct async_struct *info, int offset,
info271drivers/char/serial.cif (info->hub6) {
info272drivers/char/serial.coutb(info->hub6 - 1 + offset, info->port);
info273drivers/char/serial.coutb_p(value, info->port+1);
info277drivers/char/serial.coutb(value, info->port+offset);
info279drivers/char/serial.coutb_p(value, info->port+offset);
info293drivers/char/serial.cstruct async_struct *info = (struct async_struct *)tty->driver_data;
info296drivers/char/serial.cif (serial_paranoia_check(info, tty->device, "rs_stop"))
info300drivers/char/serial.cif (info->IER & UART_IER_THRI) {
info301drivers/char/serial.cinfo->IER &= ~UART_IER_THRI;
info302drivers/char/serial.cserial_out(info, UART_IER, info->IER);
info309drivers/char/serial.cstruct async_struct *info = (struct async_struct *)tty->driver_data;
info312drivers/char/serial.cif (serial_paranoia_check(info, tty->device, "rs_start"))
info316drivers/char/serial.cif (info->xmit_cnt && info->xmit_buf && !(info->IER & UART_IER_THRI)) {
info317drivers/char/serial.cinfo->IER |= UART_IER_THRI;
info318drivers/char/serial.cserial_out(info, UART_IER, info->IER);
info359drivers/char/serial.cstatic _INLINE_ void rs_sched_event(struct async_struct *info,
info362drivers/char/serial.cinfo->event |= 1 << event;
info363drivers/char/serial.cqueue_task_irq_off(&info->tqueue, &tq_serial);
info367drivers/char/serial.cstatic _INLINE_ void receive_chars(struct async_struct *info,
info370drivers/char/serial.cstruct tty_struct *tty = info->tty;
info374drivers/char/serial.cch = serial_inp(info, UART_RX);
info375drivers/char/serial.cif (*status & info->ignore_status_mask)
info383drivers/char/serial.cif (info->flags & ASYNC_SAK)
info395drivers/char/serial.c*status = serial_inp(info, UART_LSR) & info->read_status_mask;
info403drivers/char/serial.cstatic _INLINE_ void transmit_chars(struct async_struct *info, int *intr_done)
info407drivers/char/serial.cif (info->x_char) {
info408drivers/char/serial.cserial_outp(info, UART_TX, info->x_char);
info409drivers/char/serial.cinfo->x_char = 0;
info414drivers/char/serial.cif ((info->xmit_cnt <= 0) || info->tty->stopped ||
info415drivers/char/serial.cinfo->tty->hw_stopped) {
info416drivers/char/serial.cinfo->IER &= ~UART_IER_THRI;
info418drivers/char/serial.cserial_out(info, UART_IER, info->IER);
info423drivers/char/serial.ccount = info->xmit_fifo_size;
info425drivers/char/serial.cserial_out(info, UART_TX, info->xmit_buf[info->xmit_tail++]);
info426drivers/char/serial.cinfo->xmit_tail = info->xmit_tail & (SERIAL_XMIT_SIZE-1);
info427drivers/char/serial.cif (--info->xmit_cnt <= 0)
info431drivers/char/serial.cif (info->xmit_cnt < WAKEUP_CHARS)
info432drivers/char/serial.crs_sched_event(info, RS_EVENT_WRITE_WAKEUP);
info440drivers/char/serial.cif (info->xmit_cnt <= 0) {
info441drivers/char/serial.cinfo->IER &= ~UART_IER_THRI;
info443drivers/char/serial.cserial_out(info, UART_IER, info->IER);
info448drivers/char/serial.cstatic _INLINE_ void check_modem_status(struct async_struct *info)
info452drivers/char/serial.cstatus = serial_in(info, UART_MSR);
info454drivers/char/serial.cif ((info->flags & ASYNC_CHECK_CD) && (status & UART_MSR_DDCD)) {
info456drivers/char/serial.cprintk("ttys%d CD now %s...", info->line,
info460drivers/char/serial.cwake_up_interruptible(&info->open_wait);
info461drivers/char/serial.celse if (!((info->flags & ASYNC_CALLOUT_ACTIVE) &&
info462drivers/char/serial.c(info->flags & ASYNC_CALLOUT_NOHUP))) {
info466drivers/char/serial.crs_sched_event(info, RS_EVENT_HANGUP);
info469drivers/char/serial.cif (info->flags & ASYNC_CTS_FLOW) {
info470drivers/char/serial.cif (info->tty->hw_stopped) {
info475drivers/char/serial.cinfo->tty->hw_stopped = 0;
info476drivers/char/serial.cinfo->IER |= UART_IER_THRI;
info478drivers/char/serial.cserial_out(info, UART_IER, info->IER);
info480drivers/char/serial.crs_sched_event(info, RS_EVENT_WRITE_WAKEUP);
info488drivers/char/serial.cinfo->tty->hw_stopped = 1;
info489drivers/char/serial.cinfo->IER &= ~UART_IER_THRI;
info491drivers/char/serial.cserial_out(info, UART_IER, info->IER);
info505drivers/char/serial.cstruct async_struct * info;
info513drivers/char/serial.cinfo = IRQ_ports[irq];
info514drivers/char/serial.cif (!info)
info518drivers/char/serial.cif (!info->tty ||
info519drivers/char/serial.c(serial_in(info, UART_IIR) & UART_IIR_NO_INT)) {
info521drivers/char/serial.cend_mark = info;
info526drivers/char/serial.cinfo->last_active = jiffies;
info528drivers/char/serial.cstatus = serial_inp(info, UART_LSR) & info->read_status_mask;
info533drivers/char/serial.creceive_chars(info, &status);
info534drivers/char/serial.ccheck_modem_status(info);
info536drivers/char/serial.ctransmit_chars(info, 0);
info539drivers/char/serial.cinfo = info->next_port;
info540drivers/char/serial.cif (!info) {
info541drivers/char/serial.cinfo = IRQ_ports[irq];
info550drivers/char/serial.c} while (end_mark != info);
info563drivers/char/serial.cstruct async_struct * info;
info569drivers/char/serial.cinfo = IRQ_ports[irq];
info570drivers/char/serial.cif (!info || !info->tty)
info574drivers/char/serial.cstatus = serial_inp(info, UART_LSR) & info->read_status_mask;
info579drivers/char/serial.creceive_chars(info, &status);
info580drivers/char/serial.ccheck_modem_status(info);
info582drivers/char/serial.ctransmit_chars(info, 0);
info589drivers/char/serial.c} while (!(serial_in(info, UART_IIR) & UART_IIR_NO_INT));
info590drivers/char/serial.cinfo->last_active = jiffies;
info604drivers/char/serial.cstruct async_struct * info;
info612drivers/char/serial.cinfo = IRQ_ports[irq];
info613drivers/char/serial.cif (!info)
info617drivers/char/serial.cif (!info->tty)
info620drivers/char/serial.cserial_outp(info, UART_IER, 0);
info621drivers/char/serial.cstatus = serial_inp(info, UART_LSR) & info->read_status_mask;
info623drivers/char/serial.creceive_chars(info, &status);
info626drivers/char/serial.ccheck_modem_status(info);
info628drivers/char/serial.ctransmit_chars(info, &done);
info631drivers/char/serial.cinfo = info->next_port;    
info632drivers/char/serial.cif (!info) {
info633drivers/char/serial.cinfo = IRQ_ports[irq];
info651drivers/char/serial.cserial_outp(info, UART_IER, info->IER);
info652drivers/char/serial.cwhile ((info = info->next_port) != NULL);
info661drivers/char/serial.cstruct async_struct * info;
info668drivers/char/serial.cinfo = IRQ_ports[irq];
info669drivers/char/serial.cif (!info || !info->tty)
info672drivers/char/serial.cserial_outp(info, UART_IER, 0);
info673drivers/char/serial.cstatus = serial_inp(info, UART_LSR) & info->read_status_mask;
info675drivers/char/serial.creceive_chars(info, &status);
info676drivers/char/serial.ccheck_modem_status(info);
info678drivers/char/serial.ctransmit_chars(info, 0);
info683drivers/char/serial.cserial_outp(info, UART_IER, info->IER);
info710drivers/char/serial.cstruct async_struct  *info = (struct async_struct *) private_;
info713drivers/char/serial.ctty = info->tty;
info717drivers/char/serial.cif (clear_bit(RS_EVENT_HANGUP, &info->event)) {
info719drivers/char/serial.cwake_up_interruptible(&info->open_wait);
info720drivers/char/serial.cinfo->flags &= ~(ASYNC_NORMAL_ACTIVE|
info723drivers/char/serial.cif (clear_bit(RS_EVENT_WRITE_WAKEUP, &info->event)) {
info741drivers/char/serial.cstruct async_struct *info;
info746drivers/char/serial.cinfo = IRQ_ports[i];
info747drivers/char/serial.cif (!info)
info750drivers/char/serial.cif (info->next_port) {
info752drivers/char/serial.cserial_out(info, UART_IER, 0);
info753drivers/char/serial.cinfo->IER |= UART_IER_THRI;
info754drivers/char/serial.cserial_out(info, UART_IER, info->IER);
info755drivers/char/serial.cinfo = info->next_port;
info756drivers/char/serial.c} while (info);
info824drivers/char/serial.cstruct  async_struct  *info;
info827drivers/char/serial.cinfo = IRQ_ports[irq];
info828drivers/char/serial.cif (!info) {
info832drivers/char/serial.cwhile (info) {
info833drivers/char/serial.cif (info->timeout < timeout)
info834drivers/char/serial.ctimeout = info->timeout;
info835drivers/char/serial.cinfo = info->next_port;
info842drivers/char/serial.cstatic int startup(struct async_struct * info)
info849drivers/char/serial.cif (info->flags & ASYNC_INITIALIZED)
info852drivers/char/serial.cif (!info->port || !info->type) {
info853drivers/char/serial.cif (info->tty)
info854drivers/char/serial.cset_bit(TTY_IO_ERROR, &info->tty->flags);
info858drivers/char/serial.cif (!info->xmit_buf) {
info859drivers/char/serial.cinfo->xmit_buf = (unsigned char *) get_free_page(GFP_KERNEL);
info860drivers/char/serial.cif (!info->xmit_buf)
info867drivers/char/serial.cprintk("starting up ttys%d (irq %d)...", info->line, info->irq);
info874drivers/char/serial.cif (info->type == PORT_16550A) {
info875drivers/char/serial.cserial_outp(info, UART_FCR, (UART_FCR_CLEAR_RCVR |
info877drivers/char/serial.cinfo->xmit_fifo_size = 16;
info879drivers/char/serial.cinfo->xmit_fifo_size = 1;
info886drivers/char/serial.cif (serial_inp(info, UART_LSR) == 0xff) {
info889drivers/char/serial.cif (info->tty)
info890drivers/char/serial.cset_bit(TTY_IO_ERROR, &info->tty->flags);
info899drivers/char/serial.cif (info->irq && (!IRQ_ports[info->irq] ||
info900drivers/char/serial.c!IRQ_ports[info->irq]->next_port)) {
info901drivers/char/serial.cif (IRQ_ports[info->irq]) {
info902drivers/char/serial.cfree_irq(info->irq);
info907drivers/char/serial.cretval = request_irq(info->irq, handler, SA_INTERRUPT, "serial");
info911drivers/char/serial.cif (info->tty)
info913drivers/char/serial.c&info->tty->flags);
info924drivers/char/serial.c(void) serial_inp(info, UART_RX);
info925drivers/char/serial.c(void) serial_inp(info, UART_IIR);
info926drivers/char/serial.c(void) serial_inp(info, UART_MSR);
info931drivers/char/serial.cserial_outp(info, UART_LCR, UART_LCR_WLEN8);  /* reset DLAB */
info932drivers/char/serial.cif (info->flags & ASYNC_FOURPORT) {
info933drivers/char/serial.cinfo->MCR = UART_MCR_DTR | UART_MCR_RTS;
info934drivers/char/serial.cinfo->MCR_noint = UART_MCR_DTR | UART_MCR_OUT1;
info936drivers/char/serial.cinfo->MCR = UART_MCR_DTR | UART_MCR_RTS | UART_MCR_OUT2;
info937drivers/char/serial.cinfo->MCR_noint = UART_MCR_DTR | UART_MCR_RTS;
info939drivers/char/serial.cif (info->irq == 0)
info940drivers/char/serial.cinfo->MCR = info->MCR_noint;
info941drivers/char/serial.cserial_outp(info, UART_MCR, info->MCR);
info946drivers/char/serial.cinfo->IER = UART_IER_MSI | UART_IER_RLSI | UART_IER_RDI;
info947drivers/char/serial.cserial_outp(info, UART_IER, info->IER);  /* enable interrupts */
info949drivers/char/serial.cif (info->flags & ASYNC_FOURPORT) {
info951drivers/char/serial.cICP = (info->port & 0xFE0) | 0x01F;
info959drivers/char/serial.c(void)serial_inp(info, UART_LSR);
info960drivers/char/serial.c(void)serial_inp(info, UART_RX);
info961drivers/char/serial.c(void)serial_inp(info, UART_IIR);
info962drivers/char/serial.c(void)serial_inp(info, UART_MSR);
info964drivers/char/serial.cif (info->tty)
info965drivers/char/serial.cclear_bit(TTY_IO_ERROR, &info->tty->flags);
info966drivers/char/serial.cinfo->xmit_cnt = info->xmit_head = info->xmit_tail = 0;
info971drivers/char/serial.cinfo->prev_port = 0;
info972drivers/char/serial.cinfo->next_port = IRQ_ports[info->irq];
info973drivers/char/serial.cif (info->next_port)
info974drivers/char/serial.cinfo->next_port->prev_port = info;
info975drivers/char/serial.cIRQ_ports[info->irq] = info;
info976drivers/char/serial.cfigure_IRQ_timeout(info->irq);
info987drivers/char/serial.cchange_speed(info);
info989drivers/char/serial.cinfo->flags |= ASYNC_INITIALIZED;
info998drivers/char/serial.cstatic void shutdown(struct async_struct * info)
info1003drivers/char/serial.cif (!(info->flags & ASYNC_INITIALIZED))
info1007drivers/char/serial.cprintk("Shutting down serial port %d (irq %d)....", info->line,
info1008drivers/char/serial.cinfo->irq);
info1016drivers/char/serial.cif (info->next_port)
info1017drivers/char/serial.cinfo->next_port->prev_port = info->prev_port;
info1018drivers/char/serial.cif (info->prev_port)
info1019drivers/char/serial.cinfo->prev_port->next_port = info->next_port;
info1021drivers/char/serial.cIRQ_ports[info->irq] = info->next_port;
info1022drivers/char/serial.cfigure_IRQ_timeout(info->irq);
info1027drivers/char/serial.cif (info->irq && (!IRQ_ports[info->irq] ||
info1028drivers/char/serial.c!IRQ_ports[info->irq]->next_port)) {
info1029drivers/char/serial.cif (IRQ_ports[info->irq]) {
info1030drivers/char/serial.cfree_irq(info->irq);
info1031drivers/char/serial.cretval = request_irq(info->irq, rs_interrupt_single, SA_INTERRUPT, "serial");
info1037drivers/char/serial.cfree_irq(info->irq);
info1040drivers/char/serial.cif (info->xmit_buf) {
info1041drivers/char/serial.cfree_page((unsigned long) info->xmit_buf);
info1042drivers/char/serial.cinfo->xmit_buf = 0;
info1045drivers/char/serial.cinfo->IER = 0;
info1046drivers/char/serial.cserial_outp(info, UART_IER, 0x00);  /* disable all intrs */
info1047drivers/char/serial.cif (info->flags & ASYNC_FOURPORT) {
info1049drivers/char/serial.c(void) inb((info->port & 0xFE0) | 0x01F);
info1052drivers/char/serial.cif (!info->tty || (info->tty->termios->c_cflag & HUPCL)) {
info1053drivers/char/serial.cinfo->MCR &= ~(UART_MCR_DTR|UART_MCR_RTS);
info1054drivers/char/serial.cinfo->MCR_noint &= ~(UART_MCR_DTR|UART_MCR_RTS);
info1056drivers/char/serial.cserial_outp(info, UART_MCR, info->MCR_noint);
info1059drivers/char/serial.cserial_outp(info, UART_FCR, (UART_FCR_CLEAR_RCVR |
info1061drivers/char/serial.c(void)serial_in(info, UART_RX);    /* read data port to reset things */
info1063drivers/char/serial.cif (info->tty)
info1064drivers/char/serial.cset_bit(TTY_IO_ERROR, &info->tty->flags);
info1066drivers/char/serial.cinfo->flags &= ~ASYNC_INITIALIZED;
info1074drivers/char/serial.cstatic void change_speed(struct async_struct *info)
info1081drivers/char/serial.cif (!info->tty || !info->tty->termios)
info1083drivers/char/serial.ccflag = info->tty->termios->c_cflag;
info1084drivers/char/serial.cif (!(port = info->port))
info1090drivers/char/serial.cinfo->tty->termios->c_cflag &= ~CBAUDEX;
info1095drivers/char/serial.cif ((info->flags & ASYNC_SPD_MASK) == ASYNC_SPD_HI)
info1097drivers/char/serial.cif ((info->flags & ASYNC_SPD_MASK) == ASYNC_SPD_VHI)
info1099drivers/char/serial.cif ((info->flags & ASYNC_SPD_MASK) == ASYNC_SPD_CUST)
info1100drivers/char/serial.cquot = info->custom_divisor;
info1103drivers/char/serial.cinfo->timeout = ((info->xmit_fifo_size*HZ*15*quot) /
info1104drivers/char/serial.cinfo->baud_base) + 2;
info1106drivers/char/serial.cquot = (2*info->baud_base / 269);
info1107drivers/char/serial.cinfo->timeout = (info->xmit_fifo_size*HZ*30/269) + 2;
info1109drivers/char/serial.cquot = info->baud_base / baud_table[i];
info1110drivers/char/serial.cinfo->timeout = (info->xmit_fifo_size*HZ*15/baud_table[i]) + 2;
info1113drivers/char/serial.cinfo->timeout = 0;
info1116drivers/char/serial.cinfo->MCR |= UART_MCR_DTR;
info1117drivers/char/serial.cinfo->MCR_noint |= UART_MCR_DTR;
info1119drivers/char/serial.cserial_out(info, UART_MCR, info->MCR);
info1122drivers/char/serial.cinfo->MCR &= ~UART_MCR_DTR;
info1123drivers/char/serial.cinfo->MCR_noint &= ~UART_MCR_DTR;
info1125drivers/char/serial.cserial_out(info, UART_MCR, info->MCR);
info1136drivers/char/serial.cif (info->type == PORT_16550A) {
info1137drivers/char/serial.cif ((info->baud_base / quot) < 2400)
info1145drivers/char/serial.cinfo->IER &= ~UART_IER_MSI;
info1147drivers/char/serial.cinfo->flags |= ASYNC_CTS_FLOW;
info1148drivers/char/serial.cinfo->IER |= UART_IER_MSI;
info1150drivers/char/serial.cinfo->flags &= ~ASYNC_CTS_FLOW;
info1152drivers/char/serial.cinfo->flags &= ~ASYNC_CHECK_CD;
info1154drivers/char/serial.cinfo->flags |= ASYNC_CHECK_CD;
info1155drivers/char/serial.cinfo->IER |= UART_IER_MSI;
info1157drivers/char/serial.cserial_out(info, UART_IER, info->IER);
info1162drivers/char/serial.cinfo->read_status_mask = UART_LSR_OE | UART_LSR_THRE | UART_LSR_DR;
info1163drivers/char/serial.cif (I_INPCK(info->tty))
info1164drivers/char/serial.cinfo->read_status_mask |= UART_LSR_FE | UART_LSR_PE;
info1165drivers/char/serial.cif (I_BRKINT(info->tty) || I_PARMRK(info->tty))
info1166drivers/char/serial.cinfo->read_status_mask |= UART_LSR_BI;
info1168drivers/char/serial.cinfo->ignore_status_mask = 0;
info1169drivers/char/serial.cif (I_IGNPAR(info->tty)) {
info1170drivers/char/serial.cinfo->ignore_status_mask |= UART_LSR_PE | UART_LSR_FE;
info1171drivers/char/serial.cinfo->read_status_mask |= UART_LSR_PE | UART_LSR_FE;
info1173drivers/char/serial.cif (I_IGNBRK(info->tty)) {
info1174drivers/char/serial.cinfo->ignore_status_mask |= UART_LSR_BI;
info1175drivers/char/serial.cinfo->read_status_mask |= UART_LSR_BI;
info1180drivers/char/serial.cif (I_IGNPAR(info->tty)) {
info1181drivers/char/serial.cinfo->ignore_status_mask |= UART_LSR_OE;
info1182drivers/char/serial.cinfo->read_status_mask |= UART_LSR_OE;
info1187drivers/char/serial.cserial_outp(info, UART_LCR, cval | UART_LCR_DLAB);  /* set DLAB */
info1188drivers/char/serial.cserial_outp(info, UART_DLL, quot & 0xff);  /* LS of divisor */
info1189drivers/char/serial.cserial_outp(info, UART_DLM, quot >> 8);    /* MS of divisor */
info1190drivers/char/serial.cserial_outp(info, UART_LCR, cval);    /* reset DLAB */
info1191drivers/char/serial.cserial_outp(info, UART_FCR, fcr);   /* set fcr */
info1197drivers/char/serial.cstruct async_struct *info = (struct async_struct *)tty->driver_data;
info1200drivers/char/serial.cif (serial_paranoia_check(info, tty->device, "rs_put_char"))
info1203drivers/char/serial.cif (!tty || !info->xmit_buf)
info1207drivers/char/serial.cif (info->xmit_cnt >= SERIAL_XMIT_SIZE - 1) {
info1212drivers/char/serial.cinfo->xmit_buf[info->xmit_head++] = ch;
info1213drivers/char/serial.cinfo->xmit_head &= SERIAL_XMIT_SIZE-1;
info1214drivers/char/serial.cinfo->xmit_cnt++;
info1220drivers/char/serial.cstruct async_struct *info = (struct async_struct *)tty->driver_data;
info1223drivers/char/serial.cif (serial_paranoia_check(info, tty->device, "rs_flush_chars"))
info1226drivers/char/serial.cif (info->xmit_cnt <= 0 || tty->stopped || tty->hw_stopped ||
info1227drivers/char/serial.c!info->xmit_buf)
info1231drivers/char/serial.cinfo->IER |= UART_IER_THRI;
info1232drivers/char/serial.cserial_out(info, UART_IER, info->IER);
info1240drivers/char/serial.cstruct async_struct *info = (struct async_struct *)tty->driver_data;
info1243drivers/char/serial.cif (serial_paranoia_check(info, tty->device, "rs_write"))
info1246drivers/char/serial.cif (!tty || !info->xmit_buf || !tmp_buf)
info1252drivers/char/serial.cc = MIN(count, MIN(SERIAL_XMIT_SIZE - info->xmit_cnt - 1,
info1253drivers/char/serial.cSERIAL_XMIT_SIZE - info->xmit_head));
info1260drivers/char/serial.cc = MIN(c, MIN(SERIAL_XMIT_SIZE - info->xmit_cnt - 1,
info1261drivers/char/serial.cSERIAL_XMIT_SIZE - info->xmit_head));
info1262drivers/char/serial.cmemcpy(info->xmit_buf + info->xmit_head, tmp_buf, c);
info1265drivers/char/serial.cmemcpy(info->xmit_buf + info->xmit_head, buf, c);
info1266drivers/char/serial.cinfo->xmit_head = (info->xmit_head + c) & (SERIAL_XMIT_SIZE-1);
info1267drivers/char/serial.cinfo->xmit_cnt += c;
info1273drivers/char/serial.cif (info->xmit_cnt && !tty->stopped && !tty->hw_stopped &&
info1274drivers/char/serial.c!(info->IER & UART_IER_THRI)) {
info1275drivers/char/serial.cinfo->IER |= UART_IER_THRI;
info1276drivers/char/serial.cserial_out(info, UART_IER, info->IER);
info1284drivers/char/serial.cstruct async_struct *info = (struct async_struct *)tty->driver_data;
info1287drivers/char/serial.cif (serial_paranoia_check(info, tty->device, "rs_write_room"))
info1289drivers/char/serial.cret = SERIAL_XMIT_SIZE - info->xmit_cnt - 1;
info1297drivers/char/serial.cstruct async_struct *info = (struct async_struct *)tty->driver_data;
info1299drivers/char/serial.cif (serial_paranoia_check(info, tty->device, "rs_chars_in_buffer"))
info1301drivers/char/serial.creturn info->xmit_cnt;
info1306drivers/char/serial.cstruct async_struct *info = (struct async_struct *)tty->driver_data;
info1308drivers/char/serial.cif (serial_paranoia_check(info, tty->device, "rs_flush_buffer"))
info1311drivers/char/serial.cinfo->xmit_cnt = info->xmit_head = info->xmit_tail = 0;
info1329drivers/char/serial.cstruct async_struct *info = (struct async_struct *)tty->driver_data;
info1337drivers/char/serial.cif (serial_paranoia_check(info, tty->device, "rs_throttle"))
info1341drivers/char/serial.cinfo->x_char = STOP_CHAR(tty);
info1343drivers/char/serial.cinfo->MCR &= ~UART_MCR_RTS;
info1344drivers/char/serial.cinfo->MCR_noint &= ~UART_MCR_RTS;
info1346drivers/char/serial.cserial_out(info, UART_MCR, info->MCR);
info1352drivers/char/serial.cstruct async_struct *info = (struct async_struct *)tty->driver_data;
info1360drivers/char/serial.cif (serial_paranoia_check(info, tty->device, "rs_unthrottle"))
info1364drivers/char/serial.cif (info->x_char)
info1365drivers/char/serial.cinfo->x_char = 0;
info1367drivers/char/serial.cinfo->x_char = START_CHAR(tty);
info1369drivers/char/serial.cinfo->MCR |= UART_MCR_RTS;
info1370drivers/char/serial.cinfo->MCR_noint |= UART_MCR_RTS;
info1372drivers/char/serial.cserial_out(info, UART_MCR, info->MCR);
info1382drivers/char/serial.cstatic int get_serial_info(struct async_struct * info,
info1390drivers/char/serial.ctmp.type = info->type;
info1391drivers/char/serial.ctmp.line = info->line;
info1392drivers/char/serial.ctmp.port = info->port;
info1393drivers/char/serial.ctmp.irq = info->irq;
info1394drivers/char/serial.ctmp.flags = info->flags;
info1395drivers/char/serial.ctmp.baud_base = info->baud_base;
info1396drivers/char/serial.ctmp.close_delay = info->close_delay;
info1397drivers/char/serial.ctmp.custom_divisor = info->custom_divisor;
info1398drivers/char/serial.ctmp.hub6 = info->hub6;
info1403drivers/char/serial.cstatic int set_serial_info(struct async_struct * info,
info1414drivers/char/serial.cold_info = *info;
info1416drivers/char/serial.cchange_irq = new_serial.irq != info->irq;
info1417drivers/char/serial.cchange_port = (new_serial.port != info->port) || (new_serial.hub6 != info->hub6);
info1421drivers/char/serial.c(new_serial.baud_base != info->baud_base) ||
info1422drivers/char/serial.c(new_serial.type != info->type) ||
info1423drivers/char/serial.c(new_serial.close_delay != info->close_delay) ||
info1425drivers/char/serial.c(info->flags & ~ASYNC_USR_MASK)))
info1427drivers/char/serial.cinfo->flags = ((info->flags & ~ASYNC_USR_MASK) |
info1429drivers/char/serial.cinfo->custom_divisor = new_serial.custom_divisor;
info1444drivers/char/serial.cif ((info != &rs_table[i]) &&
info1450drivers/char/serial.cif ((change_port || change_irq) && (info->count > 1))
info1458drivers/char/serial.cinfo->baud_base = new_serial.baud_base;
info1459drivers/char/serial.cinfo->flags = ((info->flags & ~ASYNC_FLAGS) |
info1461drivers/char/serial.cinfo->custom_divisor = new_serial.custom_divisor;
info1462drivers/char/serial.cinfo->type = new_serial.type;
info1463drivers/char/serial.cinfo->close_delay = new_serial.close_delay;
info1470drivers/char/serial.cshutdown(info);
info1471drivers/char/serial.cinfo->irq = new_serial.irq;
info1472drivers/char/serial.cinfo->port = new_serial.port;
info1473drivers/char/serial.cinfo->hub6 = new_serial.hub6;
info1477drivers/char/serial.cif (!info->port || !info->type)
info1479drivers/char/serial.cif (info->flags & ASYNC_INITIALIZED) {
info1481drivers/char/serial.c(info->flags & ASYNC_SPD_MASK)) ||
info1482drivers/char/serial.c(old_info.custom_divisor != info->custom_divisor))
info1483drivers/char/serial.cchange_speed(info);
info1485drivers/char/serial.cretval = startup(info);
info1500drivers/char/serial.cstatic int get_lsr_info(struct async_struct * info, unsigned int *value)
info1506drivers/char/serial.cstatus = serial_in(info, UART_LSR);
info1514drivers/char/serial.cstatic int get_modem_info(struct async_struct * info, unsigned int *value)
info1519drivers/char/serial.ccontrol = info->MCR;
info1521drivers/char/serial.cstatus = serial_in(info, UART_MSR);
info1533drivers/char/serial.cstatic int set_modem_info(struct async_struct * info, unsigned int cmd,
info1546drivers/char/serial.cinfo->MCR |= UART_MCR_RTS;
info1547drivers/char/serial.cinfo->MCR_noint |= UART_MCR_RTS;
info1550drivers/char/serial.cinfo->MCR |= UART_MCR_DTR;
info1551drivers/char/serial.cinfo->MCR_noint |= UART_MCR_DTR;
info1556drivers/char/serial.cinfo->MCR &= ~UART_MCR_RTS;
info1557drivers/char/serial.cinfo->MCR_noint &= ~UART_MCR_RTS;
info1560drivers/char/serial.cinfo->MCR &= ~UART_MCR_DTR;
info1561drivers/char/serial.cinfo->MCR_noint &= ~UART_MCR_DTR;
info1565drivers/char/serial.cinfo->MCR = ((info->MCR & ~(UART_MCR_RTS | UART_MCR_DTR))
info1568drivers/char/serial.cinfo->MCR_noint = ((info->MCR_noint
info1577drivers/char/serial.cserial_out(info, UART_MCR, info->MCR);
info1582drivers/char/serial.cstatic int do_autoconfig(struct async_struct * info)
info1589drivers/char/serial.cif (info->count > 1)
info1592drivers/char/serial.cshutdown(info);
info1595drivers/char/serial.cautoconfig(info);
info1598drivers/char/serial.cretval = startup(info);
info1608drivers/char/serial.cstatic void send_break(  struct async_struct * info, int duration)
info1610drivers/char/serial.cif (!info->port)
info1615drivers/char/serial.cserial_out(info, UART_LCR, serial_inp(info, UART_LCR) | UART_LCR_SBC);
info1617drivers/char/serial.cserial_out(info, UART_LCR, serial_inp(info, UART_LCR) & ~UART_LCR_SBC);
info1669drivers/char/serial.cstruct async_struct * info = (struct async_struct *)tty->driver_data;
info1672drivers/char/serial.cif (serial_paranoia_check(info, tty->device, "rs_ioctl"))
info1689drivers/char/serial.csend_break(info, HZ/4);  /* 1/4 second */
info1696drivers/char/serial.csend_break(info, arg ? arg*(HZ/10) : HZ/4);
info1716drivers/char/serial.creturn get_modem_info(info, (unsigned int *) arg);
info1720drivers/char/serial.creturn set_modem_info(info, cmd, (unsigned int *) arg);
info1726drivers/char/serial.creturn get_serial_info(info,
info1729drivers/char/serial.creturn set_serial_info(info,
info1732drivers/char/serial.creturn do_autoconfig(info);
info1748drivers/char/serial.creturn get_lsr_info(info, (unsigned int *) arg);
info1764drivers/char/serial.cinfo, sizeof(struct async_struct));
info1775drivers/char/serial.cstruct async_struct *info = (struct async_struct *)tty->driver_data;
info1780drivers/char/serial.cchange_speed(info);
info1797drivers/char/serial.cwake_up_interruptible(&info->open_wait);
info1813drivers/char/serial.cstruct async_struct * info = (struct async_struct *)tty->driver_data;
info1817drivers/char/serial.cif (!info || serial_paranoia_check(info, tty->device, "rs_close"))
info1828drivers/char/serial.cprintk("rs_close ttys%d, count = %d\n", info->line, info->count);
info1830drivers/char/serial.cif ((tty->count == 1) && (info->count != 1)) {
info1839drivers/char/serial.c"info->count is %d\n", info->count);
info1840drivers/char/serial.cinfo->count = 1;
info1842drivers/char/serial.cif (--info->count < 0) {
info1844drivers/char/serial.cinfo->line, info->count);
info1845drivers/char/serial.cinfo->count = 0;
info1847drivers/char/serial.cif (info->count) {
info1851drivers/char/serial.cinfo->flags |= ASYNC_CLOSING;
info1856drivers/char/serial.cif (info->flags & ASYNC_NORMAL_ACTIVE)
info1857drivers/char/serial.cinfo->normal_termios = *tty->termios;
info1858drivers/char/serial.cif (info->flags & ASYNC_CALLOUT_ACTIVE)
info1859drivers/char/serial.cinfo->callout_termios = *tty->termios;
info1866drivers/char/serial.cinfo->IER &= ~UART_IER_RLSI;
info1867drivers/char/serial.cinfo->read_status_mask &= ~UART_LSR_DR;
info1868drivers/char/serial.cif (info->flags & ASYNC_INITIALIZED) {
info1869drivers/char/serial.cserial_out(info, UART_IER, info->IER);
info1877drivers/char/serial.cwhile (!(serial_inp(info, UART_LSR) & UART_LSR_TEMT)) {
info1879drivers/char/serial.ccurrent->timeout = jiffies + info->timeout;
info1885drivers/char/serial.cshutdown(info);
info1890drivers/char/serial.cinfo->event = 0;
info1891drivers/char/serial.cinfo->tty = 0;
info1900drivers/char/serial.cif (info->blocked_open) {
info1901drivers/char/serial.cif (info->close_delay) {
info1903drivers/char/serial.ccurrent->timeout = jiffies + info->close_delay;
info1906drivers/char/serial.cwake_up_interruptible(&info->open_wait);
info1908drivers/char/serial.cinfo->flags &= ~(ASYNC_NORMAL_ACTIVE|ASYNC_CALLOUT_ACTIVE|
info1910drivers/char/serial.cwake_up_interruptible(&info->close_wait);
info1919drivers/char/serial.cstruct async_struct * info = (struct async_struct *)tty->driver_data;
info1921drivers/char/serial.cif (serial_paranoia_check(info, tty->device, "rs_hangup"))
info1924drivers/char/serial.cshutdown(info);
info1925drivers/char/serial.cinfo->event = 0;
info1926drivers/char/serial.cinfo->count = 0;
info1927drivers/char/serial.cinfo->flags &= ~(ASYNC_NORMAL_ACTIVE|ASYNC_CALLOUT_ACTIVE);
info1928drivers/char/serial.cinfo->tty = 0;
info1929drivers/char/serial.cwake_up_interruptible(&info->open_wait);
info1938drivers/char/serial.cstruct async_struct *info)
info1948drivers/char/serial.cif (info->flags & ASYNC_CLOSING) {
info1949drivers/char/serial.cinterruptible_sleep_on(&info->close_wait);
info1951drivers/char/serial.cif (info->flags & ASYNC_HUP_NOTIFY)
info1965drivers/char/serial.cif (info->flags & ASYNC_NORMAL_ACTIVE)
info1967drivers/char/serial.cif ((info->flags & ASYNC_CALLOUT_ACTIVE) &&
info1968drivers/char/serial.c(info->flags & ASYNC_SESSION_LOCKOUT) &&
info1969drivers/char/serial.c(info->session != current->session))
info1971drivers/char/serial.cif ((info->flags & ASYNC_CALLOUT_ACTIVE) &&
info1972drivers/char/serial.c(info->flags & ASYNC_PGRP_LOCKOUT) &&
info1973drivers/char/serial.c(info->pgrp != current->pgrp))
info1975drivers/char/serial.cinfo->flags |= ASYNC_CALLOUT_ACTIVE;
info1985drivers/char/serial.cif (info->flags & ASYNC_CALLOUT_ACTIVE)
info1987drivers/char/serial.cinfo->flags |= ASYNC_NORMAL_ACTIVE;
info1991drivers/char/serial.cif (info->flags & ASYNC_CALLOUT_ACTIVE) {
info1992drivers/char/serial.cif (info->normal_termios.c_cflag & CLOCAL)
info2007drivers/char/serial.cadd_wait_queue(&info->open_wait, &wait);
info2010drivers/char/serial.cinfo->line, info->count);
info2012drivers/char/serial.cinfo->count--;
info2013drivers/char/serial.cinfo->blocked_open++;
info2016drivers/char/serial.cif (!(info->flags & ASYNC_CALLOUT_ACTIVE))
info2017drivers/char/serial.cserial_out(info, UART_MCR,
info2018drivers/char/serial.cserial_inp(info, UART_MCR) |
info2023drivers/char/serial.c!(info->flags & ASYNC_INITIALIZED)) {
info2025drivers/char/serial.cif (info->flags & ASYNC_HUP_NOTIFY)
info2034drivers/char/serial.cif (!(info->flags & ASYNC_CALLOUT_ACTIVE) &&
info2035drivers/char/serial.c!(info->flags & ASYNC_CLOSING) &&
info2036drivers/char/serial.c(do_clocal || (serial_in(info, UART_MSR) &
info2045drivers/char/serial.cinfo->line, info->count);
info2050drivers/char/serial.cremove_wait_queue(&info->open_wait, &wait);
info2052drivers/char/serial.cinfo->count++;
info2053drivers/char/serial.cinfo->blocked_open--;
info2056drivers/char/serial.cinfo->line, info->count);
info2060drivers/char/serial.cinfo->flags |= ASYNC_NORMAL_ACTIVE;
info2072drivers/char/serial.cstruct async_struct  *info;
info2078drivers/char/serial.cinfo = rs_table + line;
info2079drivers/char/serial.cif (serial_paranoia_check(info, tty->device, "rs_open"))
info2083drivers/char/serial.cprintk("rs_open %s%d, count = %d\n", tty->driver.name, info->line,
info2084drivers/char/serial.cinfo->count);
info2086drivers/char/serial.cinfo->count++;
info2087drivers/char/serial.ctty->driver_data = info;
info2088drivers/char/serial.cinfo->tty = tty;
info2099drivers/char/serial.cretval = startup(info);
info2103drivers/char/serial.cretval = block_til_ready(tty, filp, info);
info2112drivers/char/serial.cif ((info->count == 1) && (info->flags & ASYNC_SPLIT_TERMIOS)) {
info2114drivers/char/serial.c*tty->termios = info->normal_termios;
info2116drivers/char/serial.c*tty->termios = info->callout_termios;
info2117drivers/char/serial.cchange_speed(info);
info2120drivers/char/serial.cinfo->session = current->session;
info2121drivers/char/serial.cinfo->pgrp = current->pgrp;
info2124drivers/char/serial.cprintk("rs_open ttys%d successful...", info->line);
info2162drivers/char/serial.cstatic int get_auto_irq(struct async_struct *info)
info2165drivers/char/serial.cunsigned short ICP=0, port = info->port;
info2173drivers/char/serial.csave_IER = serial_inp(info, UART_IER);
info2174drivers/char/serial.csave_MCR = serial_inp(info, UART_MCR);
info2175drivers/char/serial.cif (info->flags & ASYNC_FOURPORT)  {
info2176drivers/char/serial.cserial_outp(info, UART_MCR, UART_MCR_DTR | UART_MCR_RTS);
info2177drivers/char/serial.cserial_outp(info, UART_IER, 0x0f);  /* enable all intrs */
info2183drivers/char/serial.cserial_outp(info, UART_MCR,
info2185drivers/char/serial.cserial_outp(info, UART_IER, 0x0f);  /* enable all intrs */
info2191drivers/char/serial.c(void)serial_inp(info, UART_LSR);
info2192drivers/char/serial.c(void)serial_inp(info, UART_RX);
info2193drivers/char/serial.c(void)serial_inp(info, UART_IIR);
info2194drivers/char/serial.c(void)serial_inp(info, UART_MSR);
info2205drivers/char/serial.cserial_outp(info, UART_IER, save_IER);
info2206drivers/char/serial.cserial_outp(info, UART_MCR, save_MCR);
info2207drivers/char/serial.cif (info->flags & ASYNC_FOURPORT)
info2217drivers/char/serial.cstatic int do_auto_irq(struct async_struct * info)
info2219drivers/char/serial.cunsigned     port = info->port;
info2235drivers/char/serial.cirq_try_1 = get_auto_irq(info);
info2237drivers/char/serial.cirq_try_2 = get_auto_irq(info);
info2256drivers/char/serial.cstatic void autoconfig(struct async_struct * info)
info2259drivers/char/serial.cunsigned port = info->port;
info2262drivers/char/serial.cinfo->type = PORT_UNKNOWN;
info2278drivers/char/serial.cscratch = serial_inp(info, UART_IER);
info2279drivers/char/serial.cserial_outp(info, UART_IER, 0);
info2281drivers/char/serial.cscratch2 = serial_inp(info, UART_IER);
info2282drivers/char/serial.cserial_outp(info, UART_IER, scratch);
info2297drivers/char/serial.cif (!(info->flags & ASYNC_SKIP_TEST)) {
info2298drivers/char/serial.cscratch = serial_inp(info, UART_MCR);
info2299drivers/char/serial.cserial_outp(info, UART_MCR, UART_MCR_LOOP | scratch);
info2300drivers/char/serial.cscratch2 = serial_inp(info, UART_MSR);
info2301drivers/char/serial.cserial_outp(info, UART_MCR, UART_MCR_LOOP | 0x0A);
info2302drivers/char/serial.cstatus1 = serial_inp(info, UART_MSR) & 0xF0;
info2303drivers/char/serial.cserial_outp(info, UART_MCR, scratch);
info2304drivers/char/serial.cserial_outp(info, UART_MSR, scratch2);
info2315drivers/char/serial.cif (info->flags & ASYNC_AUTO_IRQ)
info2316drivers/char/serial.cinfo->irq = do_auto_irq(info);
info2318drivers/char/serial.cserial_outp(info, UART_FCR, UART_FCR_ENABLE_FIFO);
info2319drivers/char/serial.cscratch = serial_in(info, UART_IIR) >> 6;
info2320drivers/char/serial.cinfo->xmit_fifo_size = 1;
info2323drivers/char/serial.cinfo->type = PORT_16450;
info2326drivers/char/serial.cinfo->type = PORT_UNKNOWN;
info2329drivers/char/serial.cinfo->type = PORT_16550;
info2332drivers/char/serial.cinfo->type = PORT_16550A;
info2333drivers/char/serial.cinfo->xmit_fifo_size = 16;
info2336drivers/char/serial.cif (info->type == PORT_16450) {
info2337drivers/char/serial.cscratch = serial_in(info, UART_SCR);
info2338drivers/char/serial.cserial_outp(info, UART_SCR, 0xa5);
info2339drivers/char/serial.cstatus1 = serial_in(info, UART_SCR);
info2340drivers/char/serial.cserial_outp(info, UART_SCR, 0x5a);
info2341drivers/char/serial.cstatus2 = serial_in(info, UART_SCR);
info2342drivers/char/serial.cserial_outp(info, UART_SCR, scratch);
info2345drivers/char/serial.cinfo->type = PORT_8250;
info2351drivers/char/serial.cserial_outp(info, UART_MCR, 0x00);
info2352drivers/char/serial.cserial_outp(info, UART_FCR, (UART_FCR_CLEAR_RCVR |
info2354drivers/char/serial.c(void)serial_in(info, UART_RX);
info2365drivers/char/serial.cstruct async_struct * info;
info2430drivers/char/serial.cfor (i = 0, info = rs_table; i < NR_PORTS; i++,info++) {
info2431drivers/char/serial.cinfo->magic = SERIAL_MAGIC;
info2432drivers/char/serial.cinfo->line = i;
info2433drivers/char/serial.cinfo->tty = 0;
info2434drivers/char/serial.cinfo->type = PORT_UNKNOWN;
info2435drivers/char/serial.cinfo->custom_divisor = 0;
info2436drivers/char/serial.cinfo->close_delay = 50;
info2437drivers/char/serial.cinfo->x_char = 0;
info2438drivers/char/serial.cinfo->event = 0;
info2439drivers/char/serial.cinfo->count = 0;
info2440drivers/char/serial.cinfo->blocked_open = 0;
info2441drivers/char/serial.cinfo->tqueue.routine = do_softint;
info2442drivers/char/serial.cinfo->tqueue.data = info;
info2443drivers/char/serial.cinfo->callout_termios =callout_driver.init_termios;
info2444drivers/char/serial.cinfo->normal_termios = serial_driver.init_termios;
info2445drivers/char/serial.cinfo->open_wait = 0;
info2446drivers/char/serial.cinfo->close_wait = 0;
info2447drivers/char/serial.cinfo->next_port = 0;
info2448drivers/char/serial.cinfo->prev_port = 0;
info2449drivers/char/serial.cif (info->irq == 2)
info2450drivers/char/serial.cinfo->irq = 9;
info2451drivers/char/serial.cif (!(info->flags & ASYNC_BOOT_AUTOCONF))
info2453drivers/char/serial.cautoconfig(info);
info2454drivers/char/serial.cif (info->type == PORT_UNKNOWN)
info2456drivers/char/serial.cprintk("tty%02d%s at 0x%04x (irq = %d)", info->line, 
info2457drivers/char/serial.c(info->flags & ASYNC_FOURPORT) ? " FourPort" : "",
info2458drivers/char/serial.cinfo->port, info->irq);
info2459drivers/char/serial.cswitch (info->type) {
info2488drivers/char/serial.cstruct async_struct *info;
info2506drivers/char/serial.cinfo = &rs_table[i];
info2513drivers/char/serial.cinfo->irq = req->irq;
info2514drivers/char/serial.cinfo->port = req->port;
info2515drivers/char/serial.cautoconfig(info);
info2516drivers/char/serial.cif (info->type == PORT_UNKNOWN) {
info2521drivers/char/serial.cprintk("tty%02d at 0x%04x (irq = %d)", info->line, 
info2522drivers/char/serial.cinfo->port, info->irq);
info2523drivers/char/serial.cswitch (info->type) {
info2536drivers/char/serial.creturn info->line;
info2542drivers/char/serial.cstruct async_struct *info = &rs_table[line];
info2546drivers/char/serial.cif (info->tty)
info2547drivers/char/serial.ctty_hangup(info->tty);
info2548drivers/char/serial.cinfo->type = PORT_UNKNOWN;
info2549drivers/char/serial.cprintk("tty%02d unloaded\n", info->line);
info106drivers/net/3c505dta.hstruct Info    info;
info300drivers/scsi/eata.cstruct eata_info info;
info316drivers/scsi/eata.cif (read_pio(*port_base, (ushort *)&info, (ushort *)&info.ipad[0])) 
info320drivers/scsi/eata.cif (info.sign != EATA_SIGNATURE) return FALSE;
info322drivers/scsi/eata.cirq = info.irq;
info326drivers/scsi/eata.cif (!info.haaval || info.ata || info.drqvld || !info.dmasup) {
info336drivers/scsi/eata.cif (!info.haaval || info.ata || !info.drqvld || !info.dmasup) {
info342drivers/scsi/eata.cdma_channel = dma_channel_table[3 - info.drqx];
info345drivers/scsi/eata.cif (subversion == ESA && !info.irq_tr)
info349drivers/scsi/eata.cif (info.second)
info382drivers/scsi/eata.csh[j]->sg_tablesize = (ushort) ntohs(info.scatt_size);
info383drivers/scsi/eata.csh[j]->this_id = (ushort) ntohl(info.host_addr);
info384drivers/scsi/eata.csh[j]->can_queue = (ushort) ntohs(info.queue_size);
info428drivers/scsi/eata.cname, info.version, info.sync, ntohl(info.data_len), 
info429drivers/scsi/eata.cntohl(info.cp_len), ntohl(info.sp_len));
info94drivers/scsi/hosts.hconst char *(* info)(struct Scsi_Host *);
info2100drivers/scsi/scsi.cif(tpnt->info)
info2101drivers/scsi/scsi.cname = tpnt->info(shpnt);
info551drivers/scsi/scsi_debug.cint scsi_debug_biosparam(Disk * disk, int dev, int* info){
info553drivers/scsi/scsi_debug.cinfo[0] = 32;
info554drivers/scsi/scsi_debug.cinfo[1] = 64;
info555drivers/scsi/scsi_debug.cinfo[2] = (size + 2047) >> 11;
info556drivers/scsi/scsi_debug.cif (info[2] >= 1024) info[2] = 1024;
info36drivers/scsi/scsi_ioctl.cif(host->hostt->info)
info37drivers/scsi/scsi_ioctl.cstring = host->hostt->info(host);
info143drivers/sound/dev_table.hstruct synth_info *info;
info162drivers/sound/dev_table.hint (*pmgr_interface) (int dev, struct patmgr_info *info);
info171drivers/sound/dev_table.hstruct midi_info info;
info189drivers/sound/dev_table.hstruct sound_timer_info info;
info113drivers/sound/midi_synth.cIOCTL_TO_USER ((char *) arg, 0, synth_devs[dev]->info,
info1086drivers/sound/mpu401.cstrcpy (mpu401_midi_operations[num_midis].info.name,
info1091drivers/sound/mpu401.cmpu401_synth_operations[devc->devno].info =
info1537drivers/sound/sequencer.cIOCTL_TO_USER ((char *) arg, 0, (char *) &(midi_devs[dev]->info), sizeof (inf));
info211drivers/sound/sound_switch.cif (!put_status (synth_devs[i]->info->name))
info226drivers/sound/sound_switch.cif (!put_status (midi_devs[i]->info.name))
info241drivers/sound/sound_switch.cif (!put_status (sound_timer_devs[i]->info.name))
info68fs/minix/dir.cstruct minix_sb_info * info;
info72fs/minix/dir.cinfo = &inode->i_sb->u.minix_sb;
info73fs/minix/dir.cif (filp->f_pos & (info->s_dirsize - 1))
info85fs/minix/dir.coffset += info->s_dirsize;
info86fs/minix/dir.cfilp->f_pos += info->s_dirsize;
info90fs/minix/dir.cfor (i = 0; i < info->s_namelen; i++)
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)) {
info192fs/minix/namei.cfor (i = 0; i < info->s_namelen ; i++)
info308fs/minix/namei.cstruct minix_sb_info * info;
info314fs/minix/namei.cinfo = &dir->i_sb->u.minix_sb;
info331fs/minix/namei.cinode->i_size = 2 * info->s_dirsize;
info343fs/minix/namei.cde = (struct minix_dir_entry *) (dir_block->b_data + info->s_dirsize);
info378fs/minix/namei.cstruct minix_sb_info * info;
info382fs/minix/namei.cinfo = &inode->i_sb->u.minix_sb;
info385fs/minix/namei.coffset = 2*info->s_dirsize;
info386fs/minix/namei.cif (inode->i_size & (info->s_dirsize-1))
info396fs/minix/namei.cde = (struct minix_dir_entry *) (bh->b_data + info->s_dirsize);
info408fs/minix/namei.coffset += info->s_dirsize;
info659fs/minix/namei.c(((struct minix_dir_entry *) ((buffer)+info->s_dirsize))->inode)
info677fs/minix/namei.cstruct minix_sb_info * info;
info680fs/minix/namei.cinfo = &old_dir->i_sb->u.minix_sb;
info150fs/umsdos/dir.cstruct umsdos_info info;
info153fs/umsdos/dir.cumsdos_parse (entry.name,entry.name_len,&info);
info154fs/umsdos/dir.cinfo.f_pos = cur_f_pos;
info156fs/umsdos/dir.cumsdos_manglename (&info);
info157fs/umsdos/dir.clret = umsdos_real_lookup (dir,info.fake.fname
info158fs/umsdos/dir.c,info.fake.len,&inode);
info160fs/umsdos/dir.c,info.fake.fname,lret,entry.flags));
info209fs/umsdos/dir.cret = umsdos_writeentry (dir,emd_dir,&info,1);
info556fs/umsdos/dir.cstruct umsdos_info info;
info557fs/umsdos/dir.cret = umsdos_parse (name,len,&info);
info558fs/umsdos/dir.cif (ret == 0) ret = umsdos_findentry (dir,&info,0);
info559fs/umsdos/dir.cPRINTK (("lookup %s pos %d ret %d len %d ",info.fake.fname,info.f_pos,ret
info560fs/umsdos/dir.c,info.fake.len));
info572fs/umsdos/dir.cret = umsdos_real_lookup (dir,info.fake.fname,info.fake.len,result);
info576fs/umsdos/dir.c,info.fake.fname);
info577fs/umsdos/dir.cumsdos_delentry (dir,&info,S_ISDIR(info.entry.mode));
info579fs/umsdos/dir.cumsdos_lookup_patch (dir,inode,&info.entry,info.f_pos);
info581fs/umsdos/dir.c,info.entry.flags));
info582fs/umsdos/dir.cif (info.entry.flags & UMSDOS_HLINK){
info175fs/umsdos/emd.cstruct umsdos_info *info,
info180fs/umsdos/emd.cstruct umsdos_dirent *entry = &info->entry;
info202fs/umsdos/emd.cfilp.f_pos = info->f_pos;
info204fs/umsdos/emd.cret = umsdos_emd_dir_write(emd_dir,&filp,(char*)entry,info->recsize);
info277fs/umsdos/emd.cstruct umsdos_info *info,    /* Hold name and name_len */
info290fs/umsdos/emd.cstruct umsdos_dirent *entry = &info->entry;
info291fs/umsdos/emd.cint recsize = info->recsize;
info315fs/umsdos/emd.cinfo->f_pos = empty.posok;
info322fs/umsdos/emd.cinfo->f_pos = file_pos;
info345fs/umsdos/emd.cinfo->f_pos = empty.posok;
info353fs/umsdos/emd.cinfo->f_pos = file_pos;
info363fs/umsdos/emd.cumsdos_manglename(info);
info377fs/umsdos/emd.cstruct umsdos_info *info)
info380fs/umsdos/emd.cint ret = umsdos_find (dir,info,&emd_dir);
info384fs/umsdos/emd.cret = umsdos_writeentry(dir,emd_dir,info,0);
info396fs/umsdos/emd.cstruct umsdos_info *info)
info400fs/umsdos/emd.cumsdos_parse ("..LINK",6,info);
info401fs/umsdos/emd.cinfo->entry.name_len = 0;
info402fs/umsdos/emd.cret = umsdos_find (dir,info,&emd_dir);
info410fs/umsdos/emd.cinfo->entry.name_len = sprintf (info->entry.name,"..LINK%ld"
info411fs/umsdos/emd.c,info->f_pos);
info424fs/umsdos/emd.cstruct umsdos_info *info,
info428fs/umsdos/emd.cint ret = umsdos_find (dir,info,&emd_dir);
info430fs/umsdos/emd.cif (info->entry.name_len != 0){
info431fs/umsdos/emd.cif ((isdir != 0) != (S_ISDIR(info->entry.mode) != 0)){
info432fs/umsdos/emd.cif (S_ISDIR(info->entry.mode)){
info438fs/umsdos/emd.cret = umsdos_writeentry(dir,emd_dir,info,1);
info486fs/umsdos/emd.cstruct umsdos_info *info,
info492fs/umsdos/emd.cint ret = umsdos_find (dir,info,&emd_dir);
info495fs/umsdos/emd.cif (S_ISDIR(info->entry.mode)){
info105fs/umsdos/ioctl.cstruct umsdos_info info;
info107fs/umsdos/ioctl.cumsdos_parse (entry.name,entry.name_len,&info);
info108fs/umsdos/ioctl.cinfo.f_pos = f_pos;
info109fs/umsdos/ioctl.cumsdos_manglename(&info);
info113fs/umsdos/ioctl.c,info.fake.fname,info.fake.len+1);
info155fs/umsdos/ioctl.cstruct umsdos_info info;
info158fs/umsdos/ioctl.cmemcpy (&info.entry,&data.umsdos_dirent
info161fs/umsdos/ioctl.c,data.umsdos_dirent.name_len,&info);
info162fs/umsdos/ioctl.cret = umsdos_newentry (dir,&info);
info172fs/umsdos/ioctl.cstruct umsdos_info info;
info175fs/umsdos/ioctl.cmemcpy (&info.entry,&data.umsdos_dirent
info178fs/umsdos/ioctl.c,data.umsdos_dirent.name_len,&info);
info179fs/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.cstrcpy (info->fake.fname,fname);  /* GLU  C'est sur on a un 0 a la fin */
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));
info571fs/umsdos/namei.cstruct umsdos_info info;
info572fs/umsdos/namei.cret = umsdos_newhidden (olddir,&info);
info578fs/umsdos/namei.c,olddir,info.entry.name,info.entry.name_len
info664fs/umsdos/namei.cstruct umsdos_info info;
info665fs/umsdos/namei.cret = umsdos_parse (name,len,&info);
info668fs/umsdos/namei.cinfo.entry.mode = mode | S_IFDIR;
info669fs/umsdos/namei.cinfo.entry.rdev = 0;
info670fs/umsdos/namei.cinfo.entry.uid = current->fsuid;
info671fs/umsdos/namei.cinfo.entry.gid = (dir->i_mode & S_ISGID)
info673fs/umsdos/namei.cinfo.entry.ctime = info.entry.atime = info.entry.mtime
info675fs/umsdos/namei.cinfo.entry.flags = 0;
info677fs/umsdos/namei.cinfo.entry.nlink = 1;
info678fs/umsdos/namei.cret = umsdos_newentry (dir,&info);
info682fs/umsdos/namei.cret = msdos_mkdir (dir,info.fake.fname,info.fake.len,mode);
info684fs/umsdos/namei.cumsdos_delentry (dir,&info,1);
info697fs/umsdos/namei.cret = umsdos_real_lookup (dir,info.fake.fname
info698fs/umsdos/namei.c,info.fake.len,&subdir);
info868fs/umsdos/namei.cstruct umsdos_info info;
info870fs/umsdos/namei.cumsdos_parse (name,len,&info);
info873fs/umsdos/namei.cumsdos_findentry (dir,&info,2);
info874fs/umsdos/namei.cret = msdos_rmdir (dir,info.fake.fname
info875fs/umsdos/namei.c,info.fake.len);
info877fs/umsdos/namei.cret = umsdos_delentry (dir,&info,1);
info902fs/umsdos/namei.cstruct umsdos_info info;
info905fs/umsdos/namei.cret = umsdos_parse (name,len,&info);
info908fs/umsdos/namei.cret = umsdos_findentry(dir,&info,1);
info910fs/umsdos/namei.cPRINTK (("UMSDOS_unlink %s ",info.fake.fname));
info911fs/umsdos/namei.cif (info.entry.flags & UMSDOS_HLINK){
info950fs/umsdos/namei.cret = umsdos_delentry (dir,&info,0);
info952fs/umsdos/namei.cPRINTK (("Avant msdos_unlink %s ",info.fake.fname));
info954fs/umsdos/namei.cret = msdos_unlink_umsdos (dir,info.fake.fname
info955fs/umsdos/namei.c,info.fake.len);
info956fs/umsdos/namei.cPRINTK (("msdos_unlink %s %o ret %d ",info.fake.fname
info957fs/umsdos/namei.c,info.entry.mode,ret));
info70include/asm-i386/processor.hstruct info  *info;
info17kernel/info.casmlinkage int sys_sysinfo(struct sysinfo *info)
info23kernel/info.cerror = verify_area(VERIFY_WRITE, info, sizeof(struct sysinfo));
info40kernel/info.cmemcpy_tofs(info, &val, sizeof(struct sysinfo));
info90kernel/vm86.cstruct vm86_struct info;
info100kernel/vm86.cmemcpy_fromfs(&info,v86,sizeof(info));
info104kernel/vm86.cinfo.regs.__null_ds = 0;
info105kernel/vm86.cinfo.regs.__null_es = 0;
info106kernel/vm86.cinfo.regs.__null_fs = 0;
info107kernel/vm86.cinfo.regs.__null_gs = 0;
info113kernel/vm86.cVEFLAGS = info.regs.eflags;
info114kernel/vm86.cinfo.regs.eflags &= SAFE_MASK;
info115kernel/vm86.cinfo.regs.eflags |= pt_regs->eflags & ~SAFE_MASK;
info116kernel/vm86.cinfo.regs.eflags |= VM_MASK;
info118kernel/vm86.cswitch (info.cpu_type) {
info141kernel/vm86.ccurrent->tss.screen_bitmap = info.screen_bitmap;
info142kernel/vm86.cif (info.flags & VM86_SCREEN_BITMAP)
info147kernel/vm86.c:"r" (&info.regs));