From c1bf71f86c01bd2905fa03a1ee164637faba89ad Mon Sep 17 00:00:00 2001 From: markster Date: Mon, 21 Jun 2004 22:11:59 +0000 Subject: Move DC/DC calibration to better location git-svn-id: http://svn.digium.com/svn/zaptel/trunk@418 5390a7c7-147a-4af0-8ec9-7488f05a26cb --- wcfxs.c | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) (limited to 'wcfxs.c') diff --git a/wcfxs.c b/wcfxs.c index a1c851f..c41a4f7 100755 --- a/wcfxs.c +++ b/wcfxs.c @@ -810,7 +810,6 @@ static int wcfxs_proslic_powerleak_test(struct wcfxs *wc, int card) static int wcfxs_powerup_proslic(struct wcfxs *wc, int card, int fast) { unsigned char vbat; - unsigned char r19; unsigned long origjiffies; /* Set period of DC-DC converter to 1/64 khz */ @@ -844,15 +843,7 @@ static int wcfxs_powerup_proslic(struct wcfxs *wc, int card, int fast) } /* Engage DC-DC converter */ - wcfxs_setreg(wc, card, 93, 0x99 /* was 0x19 */); - - r19 = wcfxs_getreg(wc, card, 107); - if ((r19 < 0x2) || (r19 > 0xd)) { - if (debug) - printk("DC-DC cal has a surprising direct 107 of 0x%02x!\n", r19); - wcfxs_setreg(wc, card, 107, 0x8); - } - + wcfxs_setreg(wc, card, 93, 0x19 /* was 0x19 */); #if 0 origjiffies = jiffies; while(0x80 & wcfxs_getreg(wc, card, 93)) { @@ -1040,6 +1031,7 @@ static int wcfxs_init_proslic(struct wcfxs *wc, int card, int fast, int manual, { unsigned short tmp[5]; + unsigned char r19; int x; /* By default, don't send on hook */ @@ -1121,6 +1113,14 @@ static int wcfxs_init_proslic(struct wcfxs *wc, int card, int fast, int manual, printk("Proslic Passed Auto Calibration on Second Attempt\n"); } } + /* Perform DC-DC calibration */ + wcfxs_setreg(wc, card, 93, 0x99); + r19 = wcfxs_getreg(wc, card, 107); + if ((r19 < 0x2) || (r19 > 0xd)) { + printk("DC-DC cal has a surprising direct 107 of 0x%02x!\n", r19); + wcfxs_setreg(wc, card, 107, 0x8); + } + /* Save calibration vectors */ for (x=0;xmod.fxs.calregs[card].vals[x] = wcfxs_getreg(wc, card, 96 + x); -- cgit v1.2.3