if (!s)
        return CS_BAD_HANDLE;
     if (!(s->state & SOCKET_PRESENT))
-       return CS_NO_CARD;
+       return -ENODEV;
     tuple->TupleLink = tuple->Flags = 0;
 #ifdef CONFIG_CARDBUS
     if (s->state & SOCKET_CARDBUS) {
     if (!s)
        return CS_BAD_HANDLE;
     if (!(s->state & SOCKET_PRESENT))
-       return CS_NO_CARD;
+       return -ENODEV;
 
     link[1] = tuple->TupleLink;
     ofs = tuple->CISOffset + tuple->TupleLink;
 
                skt->ops->get_status(skt, &status);
 
                if (!(status & SS_DETECT))
-                       return CS_NO_CARD;
+                       return -ENODEV;
 
                if (status & SS_READY)
                        return 0;
 
        skt->ops->get_status(skt, &status);
        if (!(status & SS_DETECT))
-               return CS_NO_CARD;
+               return -ENODEV;
 
        msleep(initial_delay * 10);
 
        for (i = 0; i < 100; i++) {
                skt->ops->get_status(skt, &status);
                if (!(status & SS_DETECT))
-                       return CS_NO_CARD;
+                       return -ENODEV;
 
                if (!(status & SS_PENDING))
                        break;
        cs_dbg(skt, 4, "insert\n");
 
        if (!cs_socket_get(skt))
-               return CS_NO_CARD;
+               return -ENODEV;
 
        ret = socket_setup(skt, setup_delay);
        if (ret == 0) {
        mutex_lock(&skt->skt_mutex);
        do {
                if (!(skt->state & SOCKET_PRESENT)) {
-                       ret = CS_NO_CARD;
+                       ret = -ENODEV;
                        break;
                }
                if (skt->state & SOCKET_SUSPEND) {
        mutex_lock(&skt->skt_mutex);
        do {
                if (!(skt->state & SOCKET_PRESENT)) {
-                       ret = CS_NO_CARD;
+                       ret = -ENODEV;
                        break;
                }
                if (skt->state & SOCKET_CARDBUS) {
        mutex_lock(&skt->skt_mutex);
        do {
                if (!(skt->state & SOCKET_PRESENT)) {
-                       ret = CS_NO_CARD;
+                       ret = -ENODEV;
                        break;
                }
                if (skt->state & SOCKET_CARDBUS) {
                        ret = -EBUSY;
                        break;
                }
-               if (socket_insert(skt) == CS_NO_CARD) {
+               if (socket_insert(skt) == -ENODEV) {
                        ret = -ENODEV;
                        break;
                }
 
     { CS_BAD_SIZE,             "Bad size" },
     { CS_BAD_TYPE,             "Bad type" },
     { -EIO,                    "Input/Output error" },
-    { CS_NO_CARD,              "No card present" },
+    { -ENODEV,                 "No card present" },
     { -EINVAL,                 "Bad parameter" },
     { CS_GENERAL_FAILURE,      "General failure" },
     { CS_BAD_ARGS,             "Bad arguments" },
 
        if (s->state & SOCKET_SUSPEND)
                status->CardState |= CS_EVENT_PM_SUSPEND;
        if (!(s->state & SOCKET_PRESENT))
-               return CS_NO_CARD;
+               return -ENODEV;
 
        c = (p_dev) ? p_dev->function_config : NULL;
 
        config_t *c;
 
        if (!(s->state & SOCKET_PRESENT))
-               return CS_NO_CARD;
+               return -ENODEV;
 
 
 #ifdef CONFIG_CARDBUS
 
        u_char val;
 
        if (!p_dev || !p_dev->function_config)
-               return CS_NO_CARD;
+               return -EINVAL;
 
        s = p_dev->socket;
        c = p_dev->function_config;
        int w;
 
        if (!s || !(s->state & SOCKET_PRESENT))
-               return CS_NO_CARD;
+               return -ENODEV;
        for (w = idx; w < MAX_WIN; w++)
                if (s->state & SOCKET_WIN_REQ(w))
                        break;
        c = p_dev->function_config;
 
        if (!(s->state & SOCKET_PRESENT))
-               return CS_NO_CARD;
+               return -ENODEV;
        if (!(c->state & CONFIG_LOCKED))
                return CS_CONFIGURATION_LOCKED;
 
        pccard_io_map iomap;
 
        if (!(s->state & SOCKET_PRESENT))
-               return CS_NO_CARD;
+               return -ENODEV;;
 
        if (req->IntType & INT_CARDBUS) {
                ds_dbg(p_dev->socket, 0, "IntType may not be INT_CARDBUS\n");
        config_t *c;
 
        if (!(s->state & SOCKET_PRESENT))
-               return CS_NO_CARD;
+               return -ENODEV;
 
        if (!req)
                return -EINVAL;
        int type;
 
        if (!(s->state & SOCKET_PRESENT))
-               return CS_NO_CARD;
+               return -ENODEV;
        c = p_dev->function_config;
        if (c->state & CONFIG_LOCKED)
                return CS_CONFIGURATION_LOCKED;
        int w;
 
        if (!(s->state & SOCKET_PRESENT))
-               return CS_NO_CARD;
+               return -ENODEV;
        if (req->Attributes & (WIN_PAGED | WIN_SHARED))
                return CS_BAD_ATTRIBUTE;
 
 
 #define CS_BAD_VPP             -EINVAL
 #define CS_BAD_WINDOW          -ENODEV
 #define CS_WRITE_FAILURE       -EIO
-#define CS_NO_CARD             0x14
+#define CS_NO_CARD             -ENODEV
 #define CS_UNSUPPORTED_FUNCTION        -ENODEV
 #define CS_UNSUPPORTED_MODE    -ENODEV
 #define CS_BAD_SPEED           -ENODEV