Search code examples
androidlinux-kernelusbmount

android phone mount desktop partitions via USB port (Reverse USB Tethering in disk level?)


I am wondering if it's possible to tell the Linux kernel of android phone to mount a desktop partition as part of the phone's file systems, while this phone is connected to the desktop via USB.

Do I have to modify kernel in order to do that, and if so, how hard might it be? I understand that mounting an USB drive from desktop is standard feature for every Linux.However I am not quite sure if USB communication is symmetric enough so that the other way around (mounting desktop disk for a phone can be easily implemented.

In some sense this is similar to Reverse USB Tethering (http://blog.mycila.com/2010/06/reverse-usb-tethering-with-android-22.html). But instead of let phone use host's network connection, I want to let the phone use host's disk.

Anyone has some thoughts on this?

EDIT:

I want to do this because in order to experiment something I need to pretend that my phone has a superfast sdcard (faster than what's available in the market), so I want to simulate it through desktop ramdisk (which is basically disk in memory)

Update:

After a bit searching I found out that with these two products: A host-to-host usb cable: http://www.amazon.com/Plugable-USB-Easy-Transfer-Cable/dp/B005OTPVMY/ref=pd_sim_sbs_pc_1 And an USB OTG cable: http://www.amazon.com/T-Flash-Adapter-Samsung-GT-i9100-GT-N7000/dp/B005FUNYSA

I could turn an USB-OTG enabled phone into an USB host, and use whatever USB driver which runs on a computer. I am not sure what speed I will get after those two transformation though? Anyone could comment on that? Or can I somehow combine those two adapters into one "A to OTG cable"?


Solution

  • I had a discussion about this with the linux-usb development people on linux-usb mail list, and got a satisfactory answer. Basically I need to get a PLX net2282 card to turn my desktop into an USB slave, then run USB gadget driver on it.

    Details can be found here: http://www.spinics.net/lists/linux-usb/msg72012.html