# No 'da' entry when inserting USB plug



## Dams (May 8, 2013)

Hello,

I have just finished an update from FreeBSD 9.0 to 9.1. I don't know if it's related but since, when I plug an USB device there's no da* entry in /dev. I've got an entry: ugen*. Before the update, I mounted this USB device with sysutils/automount. I tried different USB devices and none showed up in /dev.

Thank you for any informations who can put me in a good direction.


----------



## jb_fvwm2 (May 8, 2013)

What type of device?  Do you wait a full five seconds or so before reading /dev to see if the device appears after that time?  Is there a hub between the device and the port itself, that may not transfer enough power to the device from the port on the machine? Do the usb ports show up in `dmesg -a | less` ?


----------



## Beastie (May 8, 2013)

An old trick that might help.


----------



## Dams (May 8, 2013)

It's my mobile phone plug with a USB cable. I want acces*s* to the SD card in my phone. 



> Do you wait a full five seconds or so before reading /dev to see if the device appears after that time?



Yes. No hub between device and port. I've got this in `dmesg`:

```
ugen4.2: <SAMSUNG Electronics Co.,Ltd.> at usbus4
May  8 21:usbus0: 12Mbps Full Speed USB v1.0
usbus1: 12Mbps Full Speed USB v1.0
usbus2: 480Mbps High Speed USB v2.0
usbus3: 12Mbps Full Speed USB v1.0
usbus4: 12Mbps Full Speed USB v1.0
usbus5: 480Mbps High Speed USB v2.0
usbus6: 12Mbps Full Speed USB v1.0
ugen0.1: <ATI> at usbus0
uhub0: <ATI OHCI root HUB, class 9/0, rev 1.00/1.00, addr 1> on usbus0
ugen1.1: <ATI> at usbus1
uhub1: <ATI OHCI root HUB, class 9/0, rev 1.00/1.00, addr 1> on usbus1
ugen2.1: <ATI> at usbus2
uhub2: <ATI EHCI root HUB, class 9/0, rev 2.00/1.00, addr 1> on usbus2
ugen3.1: <ATI> at usbus3
uhub3: <ATI OHCI root HUB, class 9/0, rev 1.00/1.00, addr 1> on usbus3
ugen4.1: <ATI> at usbus4
uhub4: <ATI OHCI root HUB, class 9/0, rev 1.00/1.00, addr 1> on usbus4
ugen5.1: <ATI> at usbus5
uhub5: <ATI EHCI root HUB, class 9/0, rev 2.00/1.00, addr 1> on usbus5
ugen6.1: <ATI> at usbus6
uhub6: <ATI OHCI root HUB, class 9/0, rev 1.00/1.00, addr 1> on usbus6
(aprobe0:ahcich0:0:15:0): NOP. ACB: 00 00 00 00 00 00 00 00 00 00 00 00
(aprobe0:ahcich0:0:15:0): CAM status: Command timeout
(aprobe0:ahcich0:0:15:0): Error 5, Retries exhausted
...
48:26 montigny uhidd[51242]: Can not alloc config for /dev/ugen4.2
```

@Beastie: I tried the commands but no result.


```
# : > /dev/da0
/dev/da0: Operation not supported.
```


----------



## Beastie (May 9, 2013)

This changes everything. Devices like phones and MP3 players are usually not seen as normal USB mass storage devices. At least not by default. So you'll need a special driver. And most of the time, that driver is only available for Windows.

I suggest you get a USB SD card reader. They work very well and won't cost you much (< 10$).


----------



## Dams (May 9, 2013)

I tested with a card reader and it works well. Before the upgrade to 9.1 it was working with the phone (which is supposed to be connected like a USB stick). I tried a USB stick in NTFS which was working before the upgrade and I've got a black screen, I have to shutdown the PC. I try to understand why it was working before and not working anymore but I don't have a clue.


----------



## Beastie (May 9, 2013)

Then it's a regression you should report.

Out of curiosity, were you previously using 9.0 or 8.x?


----------



## jozze (May 10, 2013)

Maybe it's a silly suggestion, but if you're using a custom kernel, check if you really have all the appropriate devices listed in the kernel configuration file:

http://www.freebsd.org/doc/en/books/handbook/usb-disks.html


----------



## Dams (May 10, 2013)

> Out of curiosity, were you previously using 9.0 or 8.x?


9.0


> Maybe it's a silly suggestion, but if you're using a custom kernel, check if you really have all the appropriate devices listed in the kernel configuration file:


Thanks for the suggestion, unfortunately I run the GENERIC kernel.


----------



## jozze (May 11, 2013)

Did you upgrade using freebsd-update? This utility uses binaries. I think the problem lies with your "world". If you want, you can recompile it, and hopefully it will solve your problem.

You can pull down the sources using devel/subversion.


```
# rm -rf /usr/src/*
# svn checkout svn://svn.freebsd.org/base/releng/9.1 /usr/src
```

The [cmd=""]rm[/cmd] command is optional, it's there just to make sure you'll have a clean version of sources. It will take a while to download them, I think it's around 1G.


Since you won't be using the STABLE branch, but a release version instead, it's safe and it won't break anything. You can just use the "canonical" way to rebuild your base system, which I will shamelessly copy from the handbook:

go to single user mode with `# shutdown now` and then use


```
# adjkerntz -i
# make buildworld
# make buildkernel
# make installkernel
```

Command `# adjkerntz -i` is also optional -- if `# date` gives wrong time, use that command to fix it. After that, you reboot and again go into single user mode. Now you have to run


```
# mergemaster -p
# make installworld
# mergemaster
```

and reboot again.

Maybe you can omit all the [cmd=""]mergemaster[/cmd] commands, since you're not upgrading to the STABLE branch -- you're not upgrading at all, you're just reinstalling stuff you already have, and those steps were probably already done by freebsd-update. Still, it won't do any changes if things are like they should be, so I'd recommend running them anyway.


----------



## Dams (May 11, 2013)

I have recompile*d* but it's the same.


----------



## jozze (May 11, 2013)

Awwww


----------



## Beeblebrox (May 12, 2013)

Try using a newer USB cable, and if by any chance there is a same model phone anywhere near, try connecting that phone for testing.


----------

