diff options
Diffstat (limited to 'drivers/net/pcmcia/smc91c92_cs.c')
-rw-r--r-- | drivers/net/pcmcia/smc91c92_cs.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/drivers/net/pcmcia/smc91c92_cs.c b/drivers/net/pcmcia/smc91c92_cs.c index 56700b154d44..03b1d8fbe7b7 100644 --- a/drivers/net/pcmcia/smc91c92_cs.c +++ b/drivers/net/pcmcia/smc91c92_cs.c | |||
@@ -49,6 +49,7 @@ | |||
49 | #include <pcmcia/cisreg.h> | 49 | #include <pcmcia/cisreg.h> |
50 | #include <pcmcia/ciscode.h> | 50 | #include <pcmcia/ciscode.h> |
51 | #include <pcmcia/ds.h> | 51 | #include <pcmcia/ds.h> |
52 | #include <pcmcia/ss.h> | ||
52 | 53 | ||
53 | #include <asm/io.h> | 54 | #include <asm/io.h> |
54 | #include <asm/system.h> | 55 | #include <asm/system.h> |
@@ -965,10 +966,15 @@ static int check_sig(dev_link_t *link) | |||
965 | 966 | ||
966 | if (width) { | 967 | if (width) { |
967 | printk(KERN_INFO "smc91c92_cs: using 8-bit IO window.\n"); | 968 | printk(KERN_INFO "smc91c92_cs: using 8-bit IO window.\n"); |
969 | /* call pcmcia_release_configuration() in _suspend */ | ||
968 | smc91c92_suspend(link->handle); | 970 | smc91c92_suspend(link->handle); |
969 | pcmcia_release_io(link->handle, &link->io); | 971 | |
970 | link->io.Attributes1 = IO_DATA_PATH_WIDTH_8; | 972 | link->io.Attributes1 = IO_DATA_PATH_WIDTH_8; |
971 | pcmcia_request_io(link->handle, &link->io); | 973 | link->handle->socket->io[0].res->flags &= ~IO_DATA_PATH_WIDTH; |
974 | link->handle->socket->io[0].res->flags |= IO_DATA_PATH_WIDTH_8; | ||
975 | |||
976 | /* call pcmcia_request_configuration() in _resume, it handles the | ||
977 | * flag update */ | ||
972 | smc91c92_resume(link->handle); | 978 | smc91c92_resume(link->handle); |
973 | return check_sig(link); | 979 | return check_sig(link); |
974 | } | 980 | } |