Fix Suspend/Resume
This commit is contained in:
parent
e818667ebb
commit
8fb3b41b82
|
@ -149,6 +149,8 @@ README for the ISDN-subsystem
|
|||
AT&X0 BTX-mode and T.70-mode off (default)
|
||||
AT&X1 BTX-mode on. (S13.1=1, S13.5=0 S14=0, S16=7, S18=7, S19=0)
|
||||
AT&X2 T.70-mode on. (S13.1=1, S13.5=1, S14=0, S16=7, S18=7, S19=0)
|
||||
AT+Rx Resume a suspended call with CallID x (x = 1,2,3...)
|
||||
AT+Sx Suspend a call with CallID x (x = 1,2,3...)
|
||||
|
||||
For voice-mode commands refer to README.audio
|
||||
|
||||
|
|
|
@ -1,6 +1,9 @@
|
|||
/* $Id$
|
||||
|
||||
* $Log$
|
||||
* Revision 2.4 1999/07/01 08:11:54 keil
|
||||
* Common HiSax version for 2.0, 2.1, 2.2 and 2.3 kernel
|
||||
*
|
||||
* Revision 2.3 1998/11/15 23:55:06 keil
|
||||
* changes from 2.0
|
||||
*
|
||||
|
@ -31,7 +34,7 @@
|
|||
*/
|
||||
|
||||
#define SBIT(state) (1<<state)
|
||||
#define ALL_STATES 0x00ffffff
|
||||
#define ALL_STATES 0x03ffffff
|
||||
|
||||
#define PROTO_DIS_EURO 0x08
|
||||
|
||||
|
|
|
@ -13,6 +13,9 @@
|
|||
* Fritz Elfert
|
||||
*
|
||||
* $Log$
|
||||
* Revision 2.16 1999/07/21 14:46:23 keil
|
||||
* changes from EICON certification
|
||||
*
|
||||
* Revision 2.14 1999/07/09 08:30:08 keil
|
||||
* cosmetics
|
||||
*
|
||||
|
@ -2628,7 +2631,7 @@ l3dss1_resume_req(struct l3_process *pc, u_char pr, void *arg)
|
|||
memcpy(skb_put(skb, l), tmp, l);
|
||||
l3_msg(pc->st, DL_DATA | REQUEST, skb);
|
||||
newl3state(pc, 17);
|
||||
L3AddTimer(&pc->timer, T319, CC_T319);
|
||||
L3AddTimer(&pc->timer, T318, CC_T318);
|
||||
}
|
||||
|
||||
static void
|
||||
|
@ -2863,17 +2866,17 @@ static struct stateentry datastatelist[] =
|
|||
{SBIT(2) | SBIT(3),
|
||||
MT_PROGRESS, l3dss1_progress},
|
||||
{SBIT(2) | SBIT(3) | SBIT(4) | SBIT(7) | SBIT(8) | SBIT(9) | SBIT(10) |
|
||||
SBIT(11) | SBIT(12) | SBIT(15) | SBIT(17) | SBIT(19),
|
||||
SBIT(11) | SBIT(12) | SBIT(15) | SBIT(17) | SBIT(19) | SBIT(25),
|
||||
MT_INFORMATION, l3dss1_information},
|
||||
{SBIT(10) | SBIT(11) | SBIT(15),
|
||||
MT_NOTIFY, l3dss1_notify},
|
||||
{SBIT(0) | SBIT(1) | SBIT(2) | SBIT(3) | SBIT(4) | SBIT(7) | SBIT(8) | SBIT(10) |
|
||||
SBIT(11) | SBIT(12) | SBIT(15) | SBIT(17) | SBIT(19),
|
||||
SBIT(11) | SBIT(12) | SBIT(15) | SBIT(17) | SBIT(19) | SBIT(25),
|
||||
MT_RELEASE_COMPLETE, l3dss1_release_cmpl},
|
||||
{SBIT(1) | SBIT(2) | SBIT(3) | SBIT(4) | SBIT(7) | SBIT(8) | SBIT(9) | SBIT(10) | SBIT(11) | SBIT(12) | SBIT(15) /* | SBIT(17) | SBIT(19)*/,
|
||||
{SBIT(1) | SBIT(2) | SBIT(3) | SBIT(4) | SBIT(7) | SBIT(8) | SBIT(9) | SBIT(10) | SBIT(11) | SBIT(12) | SBIT(15) | SBIT(17) | SBIT(25),
|
||||
MT_RELEASE, l3dss1_release},
|
||||
{SBIT(19), MT_RELEASE, l3dss1_release_ind},
|
||||
{SBIT(1) | SBIT(2) | SBIT(3) | SBIT(4) | SBIT(7) | SBIT(8) | SBIT(9) | SBIT(10) | SBIT(11) | SBIT(15),
|
||||
{SBIT(1) | SBIT(2) | SBIT(3) | SBIT(4) | SBIT(7) | SBIT(8) | SBIT(9) | SBIT(10) | SBIT(11) | SBIT(15) | SBIT(17) | SBIT(25),
|
||||
MT_DISCONNECT, l3dss1_disconnect},
|
||||
// {SBIT(11),
|
||||
// MT_DISCONNECT, l3dss1_release_req},
|
||||
|
@ -3253,8 +3256,3 @@ setstack_dss1(struct PStack *st)
|
|||
strcpy(tmp, dss1_revision);
|
||||
printk(KERN_INFO "HiSax: DSS1 Rev. %s\n", HiSax_getrev(tmp));
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -20,6 +20,11 @@
|
|||
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
||||
*
|
||||
* $Log$
|
||||
* Revision 1.69 1999/07/25 12:56:15 armin
|
||||
* isdn_tty_at_cout() now queues the message if online and
|
||||
* data is in queue or flip buffer is full.
|
||||
* needed for fax connections.
|
||||
*
|
||||
* Revision 1.68 1999/07/11 17:51:51 armin
|
||||
* Bugfix, "-" was missing for AT&L settings.
|
||||
*
|
||||
|
@ -1140,11 +1145,11 @@ isdn_tty_resume(char *id, modem_info * info, atemu * m)
|
|||
cmd.parm.cmsg.para[5] = l;
|
||||
strncpy(&cmd.parm.cmsg.para[6], id, l);
|
||||
cmd.command =CAPI_PUT_MESSAGE;
|
||||
/* info->dialing = 1;
|
||||
strcpy(dev->num[i], n);
|
||||
info->dialing = 1;
|
||||
// strcpy(dev->num[i], n);
|
||||
isdn_info_update();
|
||||
*/
|
||||
isdn_command(&cmd);
|
||||
isdn_timer_ctrl(ISDN_TIMER_CARRIER, 1);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -2330,8 +2335,15 @@ isdn_tty_match_icall(char *cid, atemu *emu, int di)
|
|||
break;
|
||||
}
|
||||
return ret;
|
||||
} else
|
||||
return isdn_wildmat(cid, isdn_map_eaz2msn(emu->msn, di));
|
||||
} else {
|
||||
int tmp;
|
||||
tmp = isdn_wildmat(cid, isdn_map_eaz2msn(emu->msn, di));
|
||||
#ifdef ISDN_DEBUG_MODEM_ICALL
|
||||
printk(KERN_DEBUG "m_fi: mmsn=%s -> tmp=%d\n",
|
||||
isdn_map_eaz2msn(emu->msn, di), tmp);
|
||||
#endif
|
||||
return tmp;
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
|
@ -2383,7 +2395,7 @@ isdn_tty_find_icall(int di, int ch, setup_parm setup)
|
|||
(info->emu.mdmreg[REG_SI2] == si2)) { /* SI2 is matching */
|
||||
idx = isdn_dc2minor(di, ch);
|
||||
#ifdef ISDN_DEBUG_MODEM_ICALL
|
||||
printk(KERN_DEBUG "m_fi: match1\n");
|
||||
printk(KERN_DEBUG "m_fi: match1 wret=%d\n", wret);
|
||||
printk(KERN_DEBUG "m_fi: idx=%d flags=%08lx drv=%d ch=%d usg=%d\n", idx,
|
||||
info->flags, info->isdn_driver, info->isdn_channel,
|
||||
dev->usage[idx]);
|
||||
|
@ -3993,8 +4005,10 @@ isdn_tty_parse_at(modem_info * info)
|
|||
isdn_tty_suspend(ds, info, m);
|
||||
break;
|
||||
case 'R': /* RESUME */
|
||||
p++;
|
||||
isdn_tty_get_msnstr(ds, &p);
|
||||
isdn_tty_resume(ds, info, m);
|
||||
break;
|
||||
case 'M': /* MESSAGE */
|
||||
p++;
|
||||
isdn_tty_send_msg(info, m, p);
|
||||
|
|
Loading…
Reference in New Issue