#360 Bad VCC bug with 5V slot and 3.3/5V card

platform_specific
closed-invalid
nobody
5
2005-03-02
2004-08-31
No

Old laptop with Intel i82365sl B step ISA-to-PCMCIA.
PCMCIA slot supports only 5 Volt VCC cards.
Atmel at76c50x wireles card, supports 3.3 Volts and 5 Volts
of VCC
Debian, 2.6.7 vanilla kernel, pcmcia-cs 3.2.5-8
CONFIG_PCMCIA=m

When I insert the card, i get error message Bad VCC and
nothing is working.

When I changed to linux/drivers/pcmcia/cs.c from

/* Do power control. We don't allow changes in Vcc. */
if (s->socket.Vcc != req->Vcc)
return CS_BAD_VCC;
if (req->Vpp1 != req->Vpp2)
return CS_BAD_VPP;
s->socket.Vpp = req->Vpp1;
if (s->ops->set_socket(s, &s->socket))
return CS_BAD_VPP;

to

/* Do power control. We don't allow changes in Vcc. */
// if (s->socket.Vcc != req->Vcc)
// return CS_BAD_VCC;
if (req->Vpp1 != req->Vpp2)
return CS_BAD_VPP;
s->socket.Vpp = req->Vpp1;
if (s->ops->set_socket(s, &s->socket))
return CS_BAD_VPP;

, and recompile, everything works OK. So, I guess cs.c
tries to compare only slot VCC 5V against card VCC 3.3V
and fails. Maybe it should compare slot VCC 5V against
card VCC 3.3V or card VCC 5V.

Discussion

  • David Hinds

    David Hinds - 2004-09-04

    Logged In: YES
    user_id=7760

    Actually, this is a bug in the wireless client driver for
    requesting 3V on a 5V-only socket. But there's no reason
    why cs.c can't just ignore the voltage requested.

    The pcmcia-cs version of cs.c is essentially like your patch
    except it prints a warning if the Vcc values don't match.
    This should be propagated to the kernel tree.

    -- Dave

     
  • David Hinds

    David Hinds - 2005-03-02
    • status: open --> closed-invalid
     

Log in to post a comment.