diff options
author | markster <markster@5390a7c7-147a-4af0-8ec9-7488f05a26cb> | 2004-06-21 22:11:59 +0000 |
---|---|---|
committer | markster <markster@5390a7c7-147a-4af0-8ec9-7488f05a26cb> | 2004-06-21 22:11:59 +0000 |
commit | c1bf71f86c01bd2905fa03a1ee164637faba89ad (patch) | |
tree | 2596bf8c787c616a7e9bed5bf94bf8246acbf5dc /wctdm.c | |
parent | 8ad434c95444cf438845f57b2c63ba4114ee1e5e (diff) |
Move DC/DC calibration to better location
git-svn-id: http://svn.digium.com/svn/zaptel/trunk@418 5390a7c7-147a-4af0-8ec9-7488f05a26cb
Diffstat (limited to 'wctdm.c')
-rwxr-xr-x | wctdm.c | 20 |
1 files changed, 10 insertions, 10 deletions
@@ -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;x<NUM_CAL_REGS;x++) wc->mod.fxs.calregs[card].vals[x] = wcfxs_getreg(wc, card, 96 + x); |