vserver 1.9.5.x5
[linux-2.6.git] / drivers / pcmcia / hd64465_ss.c
index fd08c3a..48584bb 100644 (file)
@@ -566,7 +566,7 @@ static int hs_set_io_map(struct pcmcia_socket *s, struct pccard_io_map *io)
        struct pccard_io_map *sio;
        pgprot_t prot;
 
-       DPRINTK("hs_set_io_map(sock=%d, map=%d, flags=0x%x, speed=%dns, start=0x%04x, stop=0x%04x)\n",
+       DPRINTK("hs_set_io_map(sock=%d, map=%d, flags=0x%x, speed=%dns, start=%#lx, stop=%#lx)\n",
            sock, map, io->flags, io->speed, io->start, io->stop);
        if (map >= MAX_IO_WIN)
            return -EINVAL;
@@ -636,19 +636,17 @@ static int hs_set_mem_map(struct pcmcia_socket *s, struct pccard_mem_map *mem)
        hs_socket_t *sp = container_of(s, struct hs_socket_t, socket);
        struct pccard_mem_map *smem;
        int map = mem->map;
-       unsigned long paddr, size;
+       unsigned long paddr;
 
 #if 0
-       DPRINTK("hs_set_mem_map(sock=%d, map=%d, flags=0x%x, sys_start=0x%08lx, sys_end=0x%08lx, card_start=0x%08x)\n",
-           sock, map, mem->flags, mem->sys_start, mem->sys_stop, mem->card_start);
+       DPRINTK("hs_set_mem_map(sock=%d, map=%d, flags=0x%x, card_start=0x%08x)\n",
+           sock, map, mem->flags, mem->card_start);
 #endif
 
        if (map >= MAX_WIN)
            return -EINVAL;
        smem = &sp->mem_maps[map];
        
-       size = mem->sys_stop - mem->sys_start + 1;
-       
        paddr = sp->mem_base;               /* base of Attribute mapping */
        if (!(mem->flags & MAP_ATTRIB))
            paddr += HD64465_PCC_WINDOW;    /* base of Common mapping */
@@ -660,8 +658,7 @@ static int hs_set_mem_map(struct pcmcia_socket *s, struct pccard_mem_map *mem)
         * queries our fixed mapping.  I wish this fact had been
         * documented - Greg Banks.
         */
-       mem->sys_start = paddr;
-       mem->sys_stop = paddr + size - 1;
+       mem->static_start = paddr;
        
        *smem = *mem;
        
@@ -925,6 +922,7 @@ static int __init init_hs(void)
                hs_set_voltages(&hs_sockets[i], 0, 0);
 
                hs_sockets[i].socket.features |=  SS_CAP_PCCARD | SS_CAP_STATIC_MAP;      /* mappings are fixed in host memory */
+               hs_sockets[i].socket.resource_ops = &pccard_static_ops;
                hs_sockets[i].socket.irq_mask =  0xffde;/*0xffff*/          /* IRQs mapped in s/w so can do any, really */
                hs_sockets[i].socket.map_size = HD64465_PCC_WINDOW;     /* 16MB fixed window size */