How to implement TIOCOUTQ for USB modem on Linux Ubuntu


 
Thread Tools Search this Thread
Operating Systems Linux Ubuntu How to implement TIOCOUTQ for USB modem on Linux Ubuntu
# 1  
Old 05-31-2011
How to implement TIOCOUTQ for USB modem on Linux Ubuntu

Hi,

I need to override ioctl operation for a few USB drivers (sierra, option, cdc-acm) on Linux Ubuntu 2.6.34sb2 to support TIOCOUTQ command.

Unfortunately, none of the drivers I mentioned above support TIOCOUTQ because it seems unclear to know amount of data inside a modem.

Does Linux provide a way to control amount of data not sent by a modem?
# 2  
Old 05-31-2011
The better question is, does the hardware?
# 3  
Old 05-31-2011
Linux provides flow control for USB modems so all the packets reach destination without loss.
It means Linux knows when modem buffer is full. It would be good to know how Linux checks it.
# 4  
Old 05-31-2011
Quote:
Originally Posted by SDoroshenko
Linux provides flow control for USB modems so all the packets reach destination without loss.
That doesn't mean it knows anything more than that, or even that it's the same for everything. What the buffer is and how it's used would depend on the hardware.
Quote:
It means Linux knows when modem buffer is full. It would be good to know how Linux checks it.
What the buffer is and how it's used would depend on the hardware. The details would be in the driver.
# 5  
Old 05-31-2011
Quote:
Originally Posted by Corona688
The details would be in the driver.
All the USB modem drivers I test (cdc-acm, option, sierra) send data to modems by using usb_submit_urb call.
When packet is supposed to be sent kernel calls write_bulk_out_callback method informing USB driver that packet (or URB) was processed.

Unfortunately calling write_bulk method by kernel doesn't really mean that data were sent because sometimes data don't reach destination even in 60 seconds. So the data seem to stuck somewhere inside USB modem.

The facts Linux provides flow control without packet loss and sendto call blocks itself if modem buffer is full mean Linux can check if modem buffer is full and I hope can check amount of data inside.
if there is no way to know exact amount of data inside modem may be there exist a way to check if modem is empty at least?
# 6  
Old 06-01-2011
Quote:
Originally Posted by SDoroshenko
All the USB modem drivers I test (cdc-acm, option, sierra) send data to modems by using usb_submit_urb call.
Of course they do. Data for USB modems gets sent over USB. The modem must have a way to inform the Linux kernel when to send data or when not to send data but this depends on the hardware.
Quote:
The facts Linux provides flow control without packet loss and sendto call blocks itself if modem buffer is full mean Linux can check if modem buffer is full
Not necessarily. For some hardware it might be the other way around -- the modem might tell Linux when the buffer is full or not full.

How it works depends on the hardware.
This User Gave Thanks to Corona688 For This Post:
# 7  
Old 06-01-2011
Quote:
Originally Posted by Corona688
The modem must have a way to inform the Linux kernel when to send data or when not to send data but this depends on the hardware.
Looks like I'd have to ask modem manufacturers if their modems can return how much data are inside modem buffer....
usb_submit_urb puts data to HCD (Host Controller Driver). Does HCD put data to device directly, or it transfers data to the next level of Linux kernel?



Quote:
Originally Posted by Corona688
Not necessarily. For some hardware it might be the other way around -- the modem might tell Linux when the buffer is full or not full.
Is there at least one modem that returns buffer size information?
Login or Register to Ask a Question

Previous Thread | Next Thread

8 More Discussions You Might Find Interesting

1. Solaris

How to setup prolink 3.5g hsdpa usb modem in Solaris 11.2?

hi, I am new to solaris, i download the solaris 11.2 support library and as well search the google but didn't find any information about how to setup usb 3g modem in solaris 11.2, any one can please help me with giving any information or web link? (6 Replies)
Discussion started by: shamsat
6 Replies

2. Solaris

Solaris 11.2 does not assign serial port to 3g usb modem?

In ubuntu etopic i create this udev rules for prolink 3g usb modem: SUBSYSTEM=="block", SUBSYSTEM=="scsi", ATTRS{idVendor}=="1e0e", ATTRS{idProduct}=="f000", ACTION=="add", RUN+="/sbin/modprobe usbserial Vendor=0X1e0e Product=0Xf000" After plugging the usb modem, ubuntu assigns the ports... (4 Replies)
Discussion started by: shamsat
4 Replies

3. UNIX for Dummies Questions & Answers

USB-USB cable between linux and windows computers

Is there an easy way to setup a cross-over cable (USB-USB) between a linux box and a windows PC? My 2 machines are next to each other but I really do not want to keep transfering my files using my USB drive. Thanks! (4 Replies)
Discussion started by: Xterra
4 Replies

4. Solaris

Installing USB adsl modem?

Hello all, granted that I am an absolute beginner with Solaris, I'd like to use my adsl modem, t's a Zyxel prestige 630. I managed to install and configure it under Ubuntu using the drivers from Conexant AccessRunner ADSL USB modems with Linux ; is there a chance to do the same under Solaris 10... (0 Replies)
Discussion started by: clalfa
0 Replies

5. Linux

modem - usb to serial configuration

I have a serial modem connected to a usb port using an adapter cable. The system is a HP DL360. RedHat ES3.0 I am using the device /dev/ttyUSB0 When I issue the command "mgetty ttyUSB0" I get the following output in the log file. How do I get the system to see the modem. 12/02 14:17:55... (2 Replies)
Discussion started by: jshoovie
2 Replies

6. Solaris

Solaris 9 & USR USB Modem Configuration

Hello There, I just wanted to know if there is any possible configuration for setting up my external USR USB Modem in Solaris 9 (x86). Any help is definitely appreciated. Thanks Khurram Bashir (1 Reply)
Discussion started by: khurram
1 Replies

7. Solaris

Solaris 10 ADSL USB modem problem

Hi, I have USB Siemens Santis 100 ADSL modem.I need driver for this modem on Solaris 10.Please help me with some info.Platform is x86.Thanks. (2 Replies)
Discussion started by: Upravnik
2 Replies

8. UNIX for Dummies Questions & Answers

Add usb modem on a 5.0.7

hi guys i know a litter bit of sco openserver 5.0.6 I got my self a 5.0.7 version. The problem is how do you install a usb modem? The way i'm used to doit is by serial port , you know tty1A . Please guys bear with me Thanks a lot Jose. (1 Reply)
Discussion started by: josramon
1 Replies
Login or Register to Ask a Question