Merge branch 'urgent' of git://git.kernel.org/pub/scm/linux/kernel/git/brodo/pcmcia-2.6

* 'urgent' of git://git.kernel.org/pub/scm/linux/kernel/git/brodo/pcmcia-2.6:
pcmcia: avoid validate_cis failure on CIS override
pcmcia: dev_node removal bugfix
pcmcia: yenta_socket.c Remove extra #ifdef CONFIG_YENTA_TI
pcmcia: only keep saved I365_CSCINT flag if there is no PCI irq

+11 -10
+1
drivers/net/pcmcia/smc91c92_cs.c
··· 322 return -ENOMEM; 323 smc = netdev_priv(dev); 324 smc->p_dev = link; 325 326 spin_lock_init(&smc->lock); 327 link->io.NumPorts1 = 16;
··· 322 return -ENOMEM; 323 smc = netdev_priv(dev); 324 smc->p_dev = link; 325 + link->priv = dev; 326 327 spin_lock_init(&smc->lock); 328 link->io.NumPorts1 = 16;
+1
drivers/pcmcia/ds.c
··· 671 if (old_funcs != new_funcs) { 672 /* we need to re-start */ 673 pcmcia_card_remove(s, NULL); 674 pcmcia_card_add(s); 675 } 676 }
··· 671 if (old_funcs != new_funcs) { 672 /* we need to re-start */ 673 pcmcia_card_remove(s, NULL); 674 + s->functions = 0; 675 pcmcia_card_add(s); 676 } 677 }
+9 -10
drivers/pcmcia/yenta_socket.c
··· 880 .restore_state = ti_restore_state, 881 .sock_init = ti_init, 882 }, 883 #endif 884 #ifdef CONFIG_YENTA_RICOH 885 [CARDBUS_TYPE_RICOH] = { ··· 906 [CARDBUS_TYPE_O2MICRO] = { 907 .override = o2micro_override, 908 .restore_state = o2micro_restore_state, 909 - }, 910 - #endif 911 - #ifdef CONFIG_YENTA_TI 912 - [CARDBUS_TYPE_ENE] = { 913 - .override = ene_override, 914 - .save_state = ti_save_state, 915 - .restore_state = ti_restore_state, 916 - .sock_init = ti_init, 917 }, 918 #endif 919 }; ··· 973 /* probes the PCI interrupt, use only on override functions */ 974 static int yenta_probe_cb_irq(struct yenta_socket *socket) 975 { 976 - u8 reg; 977 978 if (!socket->cb_irq) 979 return -1; ··· 987 } 988 989 /* generate interrupt, wait */ 990 - reg = exca_readb(socket, I365_CSCINT); 991 exca_writeb(socket, I365_CSCINT, reg | I365_CSC_STSCHG); 992 cb_writel(socket, CB_SOCKET_EVENT, -1); 993 cb_writel(socket, CB_SOCKET_MASK, CB_CSTSMASK);
··· 880 .restore_state = ti_restore_state, 881 .sock_init = ti_init, 882 }, 883 + [CARDBUS_TYPE_ENE] = { 884 + .override = ene_override, 885 + .save_state = ti_save_state, 886 + .restore_state = ti_restore_state, 887 + .sock_init = ti_init, 888 + }, 889 #endif 890 #ifdef CONFIG_YENTA_RICOH 891 [CARDBUS_TYPE_RICOH] = { ··· 900 [CARDBUS_TYPE_O2MICRO] = { 901 .override = o2micro_override, 902 .restore_state = o2micro_restore_state, 903 }, 904 #endif 905 }; ··· 975 /* probes the PCI interrupt, use only on override functions */ 976 static int yenta_probe_cb_irq(struct yenta_socket *socket) 977 { 978 + u8 reg = 0; 979 980 if (!socket->cb_irq) 981 return -1; ··· 989 } 990 991 /* generate interrupt, wait */ 992 + if (!socket->dev->irq) 993 + reg = exca_readb(socket, I365_CSCINT); 994 exca_writeb(socket, I365_CSCINT, reg | I365_CSC_STSCHG); 995 cb_writel(socket, CB_SOCKET_EVENT, -1); 996 cb_writel(socket, CB_SOCKET_MASK, CB_CSTSMASK);