summaryrefslogtreecommitdiff
path: root/wcfxs.c
diff options
context:
space:
mode:
Diffstat (limited to 'wcfxs.c')
-rwxr-xr-xwcfxs.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/wcfxs.c b/wcfxs.c
index 251443d..a1c851f 100755
--- a/wcfxs.c
+++ b/wcfxs.c
@@ -810,6 +810,7 @@ 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 */
@@ -845,6 +846,13 @@ 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);
+ }
+
#if 0
origjiffies = jiffies;
while(0x80 & wcfxs_getreg(wc, card, 93)) {