Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I have a Samsung phone GT-B3210. For some time I was unable to find working Windows drivers for it. I eventually gave up looking. Then one time I was charging phone over its USB port and booted Ubuntu and was pleasantly surprised when I saw phone's μSD card reader on my desktop.

I now need to switch to Gentoo and would like to be able to work with phone there too. Lsusb tells me it's detected as
Bus 007 Device 006: ID 04e8:663f Samsung Electronics Co., Ltd SGH-E720/SGH-E840

but lsmod wasn't very helpful. On the list of loaded modules, I wasn't able to find one which looks like it's related to the phone.

Is there some other way to see which module is used by the telephone?

share|improve this question
up vote 5 down vote accepted

The USB device should appear under /sys/bus/usb/devices as several entries beginning with 7-6 or something similar. Where the driver link within the directories point will be the name of the module bound to the device.

share|improve this answer
That way seems a bit too complicated for me. I don't hve 7-6. Instead I have something like 7-0:1.0 7-1:2.1 7-1:2.4 7-2:1.0 7-2:1.3 7-1:2.0 7-1:2.3 7-2 7-2:1.2 7-1 7-1:2.2 7-1:2.5 7-2:1.1 When I access those directories, I get links which seem to go in circles. For example 7-1->driver->7-1->driver and so on. – AndrejaKo Aug 18 '10 at 9:07
Don't follow the links, simply display their destination, e.g. ls -l driver. – Ignacio Vazquez-Abrams Aug 18 '10 at 9:16
OK. This way interesting modules seem to be cdc-phonet, phonet and cdc-acm. – AndrejaKo Aug 18 '10 at 9:28

I find lsusb easier and faster to use in such situations. Example output follows:

 $ lsusb -t
/:  Bus 04.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/2p, 5000M
/:  Bus 03.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/2p, 480M
/:  Bus 02.Port 1: Dev 1, Class=root_hub, Driver=ehci-pci/3p, 480M
    |__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/8p, 480M

If no driver is used, the line will look like this (the device in my example is a camera for which I did remove the driver from the kernel):

    |__ Port 6: Dev 4, If 1, Class=Video, Driver=, 480M
share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.