> Нашёл страницу http://raspberrypi.ru/blog/622.html на которой описывается как путём
> замены ядра ОС, можно сделать raspberry pi сетевым USB устройством. Но
> как это работает не понял.Ты что хочешь? Сделать из одноплатника usb-сетевуху? Тогда в первом приближении тебе надо "modprobe g_ether" ну а дальше настроить появившуюся сетевку "usb0" по вкусу. И на хосте ответные параметры сети так же. Linux между собой пакетами на раз начинают перекидываться, не сложнее чем ethernet на самом деле.
...после того как запустишь (и возможно настроишь) контроллер OTG, это требует usb-device (usb-host не катит, для модулей gadget-ов требуется именно usb-device или OTG). Ну и чтобы этот usb-device был на каких-то пинах или разъеме.
Флешку из линуксной девайсины сделать? Тогда modprobe g_mass_storage. Можно вывесить по usb-шнурку как usb mass storage "диск" из файла или какой-нибудь раздел (блочный девайс). У модуля параметры есть, modinfo подскажет их если что.
Это простые базовые вещи. Я так делаю. На других ARMовых одноплатниках. Работает. Удобно. В лучшем случае питание и сеть по одному шнурку может быть. Рельно пингвин может и сильно больше чем это, если надо. Необходим для этого контроллер OTG или Device у железки. OTG интересен тем что может работать и как usb-host, и как usb-device. В этом случае он интересен нам как usb-device, порты host и так обычно есть, но они не умеют прикидываться устройством. Usb в этом плане к сожалению "асимметричен" чем подкинул проблем.
А если хочется отдать местный usb-порт по сетке другому девайсу - это уже usb-ip, совсем другая штука. Оно именно то что в порт usb host воткнуто пробрасывает по сети клиенту. Совсем иная технология.