Hello,
My usb device driver gets compiled and file system is getting created in 
the /dev as below..

usbdev1.1_ep00
usbdev1.1_ep81
usbdev1.3_ep00
usbdev1.3_ep05
usbdev1.3_ep87
usbdev2.1_ep00
usbdev2.1_ep81
USBPIPESKEL

USBPIPESKEL is the name give in 
static struct usb_class_driver skel_class = {
         .name =         "USBPIPESKEL",
        .fops =         &skel_fops,
        .minor_base =   USB_SKEL_MINOR_BASE,
};


My test application to read and write to the device is the one below

        int fd,ret;
        unsigned  int buf;
        unsigned char arr[2]={0x55,0x66};
        int choice,i;

        if((fd =  open("/dev/USBPIPESKEL" ,O_RDWR)) == -1)
        {
                printf("\nopen error\n");
        }
        printf("usb device opened:fd=%d\n",fd);

        ret = write(fd,arr,2);
        if(ret == -1)
                perror("write:");
        printf("usb device write return = %d\n",ret);

        close(fd);
        return(1);
}


after insmoding my driver if I run my test application
I am getting the error below

usb device opened:fd=3
write:: Message too long
usb device write return = -1

when i run dmesg i get the follwing message

skel_write - failed submitting write urb, error -90

I would like to know the cause of the error and how can I
fix it up?

Thanks

Reply via email to