How a SD card is mounted over a USB bus as SCSI device

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

How a SD card is mounted over a USB bus as SCSI device

989 Views
mrigendra_chaub
Contributor III

I have a sd card which is connected on a microchip usb224x controller on im6qp processor based board.

SD signals are going to be converted in a USB dp and dm signal.
Now there are two use cases,


use case1: SD card is already inserted before power on,

sd 0:0:0:0: [sda] 249737216 512-byte logical blocks: (128 GB/119 GiB)

sd 0:0:0:0: [sda] Write Protect is off

sd 0:0:0:0: [sda] No Caching mode page found

sd 0:0:0:0: [sda] Assuming drive cache: write through

sda: sda1

sd 0:0:0:0: [sda] Attached SCSI removable disk

Now if I remove SD card I don't get any kernel print which says that card is removed.

usecase2: SD card is inserted at running kernel.
No print comes that says that SD card is detected as sda.

In case 1, I can mount this SD card and access its contents.In case2 I cannot.

I have this question/confusion

1. Is user space responsible such as udev to tell if a device is present or not? I tried putting prints in many usb core files and none prints anything. However at the same time I am able to get interrupts on touch device that is using same usb bus but another channel.

I tried getting prints in usb functions in drivers/usb,storage and scsi subsysystem, but no observable prints came.

I tried enabling debugfs prints but I am getting no log even then and thats another issue which I am unable to resolve.

Main problem is I am getting no idea how and who initiates this change of removal and insertion, is it a low level kernel driver which looks for an interrupt and initiate the whole thing or udev such as /sbin/hotplug?

Kindly help as I am getting no clue and clarity here of prerequisites to make it work. Any debug pointers will be helpful.

0 Kudos
1 Reply

778 Views
igorpadykov
NXP Employee
NXP Employee

Hi mrigendra

usb224x controller implements scsi commands over usb and seems case2 attachment
after linux boot is similar to "hot swap" sata support which is optional
How do I make Linux recognize a new SATA /dev/sda drive I hot swapped in without rebooting? - Server... 

Best regards
igor
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------

0 Kudos