From: Russell King 25-akpm/drivers/serial/serial_cs.c | 18 ++++++++++++++---- 1 files changed, 14 insertions(+), 4 deletions(-) diff -puN drivers/serial/serial_cs.c~remove-CardServices-from-drivers-serial-fix drivers/serial/serial_cs.c --- 25/drivers/serial/serial_cs.c~remove-CardServices-from-drivers-serial-fix Wed Dec 24 14:23:45 2003 +++ 25-akpm/drivers/serial/serial_cs.c Wed Dec 24 14:23:45 2003 @@ -300,10 +300,10 @@ static int setup_serial(struct serial_in /*====================================================================*/ static int -get_tuple(int fn, client_handle_t handle, tuple_t * tuple, cisparse_t * parse) +first_tuple(client_handle_t handle, tuple_t * tuple, cisparse_t * parse) { int i; - i = CardServices(fn, handle, tuple); + i = pcmcia_get_first_tuple(handle, tuple); if (i != CS_SUCCESS) return CS_NO_MORE_ITEMS; i = pcmcia_get_tuple_data(handle, tuple); @@ -312,8 +312,18 @@ get_tuple(int fn, client_handle_t handle return pcmcia_parse_tuple(handle, tuple, parse); } -#define first_tuple(a, b, c) get_tuple(GetFirstTuple, a, b, c) -#define next_tuple(a, b, c) get_tuple(GetNextTuple, a, b, c) +static int +next_tuple(client_handle_t handle, tuple_t * tuple, cisparse_t * parse) +{ + int i; + i = pcmcia_get_next_tuple(handle, tuple); + if (i != CS_SUCCESS) + return CS_NO_MORE_ITEMS; + i = pcmcia_get_tuple_data(handle, tuple); + if (i != CS_SUCCESS) + return i; + return pcmcia_parse_tuple(handle, tuple, parse); +} /*====================================================================*/ _