]> git.karo-electronics.de Git - mv-sheeva.git/blobdiff - drivers/pcmcia/pxa2xx_balloon3.c
Merge tag 'v2.6.38' of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6
[mv-sheeva.git] / drivers / pcmcia / pxa2xx_balloon3.c
index dbbdd0063202d91f76b7cd8e053b747041ca55a8..453c54c97612833b341a1e9787d9a8d51c7ec223 100644 (file)
@@ -39,12 +39,10 @@ static struct pcmcia_irqs irqs[] = {
 static int balloon3_pcmcia_hw_init(struct soc_pcmcia_socket *skt)
 {
        uint16_t ver;
-       int ret;
-       static void __iomem *fpga_ver;
 
        ver = __raw_readw(BALLOON3_FPGA_VER);
-       if (ver > 0x0201)
-               pr_warn("The FPGA code, version 0x%04x, is newer than rel-0.3. "
+       if (ver < 0x4f08)
+               pr_warn("The FPGA code, version 0x%04x, is too old. "
                        "PCMCIA/CF support might be broken in this version!",
                        ver);
 
@@ -97,8 +95,9 @@ static void balloon3_pcmcia_socket_state(struct soc_pcmcia_socket *skt,
 static int balloon3_pcmcia_configure_socket(struct soc_pcmcia_socket *skt,
                                       const socket_state_t *state)
 {
-       __raw_writew((state->flags & SS_RESET) ? BALLOON3_CF_RESET : 0,
-                       BALLOON3_CF_CONTROL_REG);
+       __raw_writew(BALLOON3_CF_RESET, BALLOON3_CF_CONTROL_REG |
+                       ((state->flags & SS_RESET) ?
+                       BALLOON3_FPGA_SETnCLR : 0));
        return 0;
 }