Usbip on GL-MT300A

I would like to get usbip-server running on the GL-MT300A.

USB over IP tunnel [Old OpenWrt Wiki] (Last Modified 2016/06/17 13:58) suggests running:

opkg install http://downloads.openwrt.org/attitude_adjustment/12.09/ar71xx/generic/packages/usbip_1.1.1-2_ar71xx.ipk
opkg install http://downloads.openwrt.org/attitude_adjustment/12.09/ar71xx/generic/packages/usbip-client_1.1.1-2_ar71xx.ipk
opkg install http://downloads.openwrt.org/attitude_adjustment/12.09/ar71xx/generic/packages/usbip-server_1.1.1-2_ar71xx.ipk
Unfortunately, attempting to install usbip_1.1.1-2_ar71xx.ipk in this way provokes the following error:
Collected errors:
* pkg_hash_fetch_best_installation_candidate: Packages for usbip found, but incompatible with the architectures configured
* opkg_install_cmd: Cannot install package usbip.
opkg print-architecture yields:
arch all 1
arch noarch 1
arch ramips_24kec 10
uname -a yields:
Linux GL-MT300A 3.18.27 #12 Sat Apr 23 16:00:11 HKT 2016 mips GNU/Linux
Does anyone have any further ideas/suggestions/experience on how to get usbip-server running on the GL-MT300A?
  • Could this be a simple matter of modifying /etc/opkg.conf?
  • Or perhaps there is an alternate source of packages built for the GL-MT300A's architecture?
  • Or is the only way round this to cross-compile?
    • e.g. following the process described here (Last Modified 2016/02/06 13:26)

You are using the wrong architecture.

GL-MT300A is ramips, you are trying to install from ar71xx package.

You can try files here: Index of /attitude_adjustment/12.09/ramips/rt288x/packages/

Good catch. Thanks.

I have now successfully manually run opkg install on usbip and its dependencies from that package list.

Unfortunately, there seems to be a dependency chain for usbip-server that cannot be satisfied from that set of packages:

usbip-server_1.1.1-2_ramips.ipk
     -> usb-client
         -> kmod-usbip-client

kmod-usbip-client_3.3.8-1_ramips.ipk fails to install with the following message:

Collected errors:
 * satisfy_dependencies_for: Cannot satisfy the following dependencies for kmod-usbip-client:
 * 	kernel (= 3.3.8-1-8968c1c04d7a0de8ee5844d849dd3e08) * 
 * opkg_install_cmd: Cannot install package kmod-usbip-client.
kmod-usbip and kmod-usbip-server 3.18.27-1 are both available on the default package feed, but kmod-usbip-client does not seem to exist.

Any ideas on how I can satisfy the kmod-usbip-client dependency on my box.

  • Is there some other package list for the 3.18.27-1 kernel?
  • Is there a simple means by which I can upgrade to the 3.3.8-1-8968c1c04d7a0de8ee5844d849dd3e08 kernel?

The problem is here, you cannot install kernel modules from other repo. Both kmod-usbip-client and kmod-usbip-server should be there. Seems you are trying to install kmod-usbip-client_3.3.8 from OpenWrt AA, not our repo

Here is the solution:

  1. Don’t change opkg.conf, use our stock firmware only v2.20

  2. do a opkg update and install kmod-usbip-client, kmod-usbip-server, kmod-usbip

  3. manually download usbip, usbip-server and usbip-client to the router’s /tmp foder

  4. opkg install /tmp/usb*.ip

Hope this works

Success!

root@GL-MT300A:~# usbipd 
usbipd: info: starting usbipd (usbip-utils 1.1.1)
usbipd: info: listening on :::3240

Thankyou.

Updating to 2.20 (and downloading rt288x packages from Index of /attitude_adjustment/12.09/ramips/rt288x/packages/) was the answer.

I have exactly the same problem as that of mack. I have exactly the same router GL-MT300A, I would like to get package usbip-server.
I tried to do as written above.

I install packages kmod-usbip-client, kmod-usbip-server, kmod-usbip from your repository.
Then I downloaded manualy usbip, usbip-server and usbip-client to the router’s /tmp foder from https://downloads.openwrt.org/attitude_adjustment/12.09/ramips/rt288x/packages/. I try to install, but nothing comes out.

root@GL-MT300A:/tmp# opkg install usbip* Unknown package 'usbip-client'. Unknown package 'usbip-server'. Unknown package 'usbip'. Collected errors: * pkg_hash_fetch_best_installation_candidate: Packages for usbip-client found, but incompatible with the architectures configured * opkg_install_cmd: Cannot install package usbip-client. * pkg_hash_fetch_best_installation_candidate: Packages for usbip-server found, but incompatible with the architectures configured * opkg_install_cmd: Cannot install package usbip-server. * pkg_hash_fetch_best_installation_candidate: Packages for usbip found, but incompatible with the architectures configured * opkg_install_cmd: Cannot install package usbip.
Tried to use the flag "--force-depends", the situation is similar. I tried install it on different versions of firmware: 2.19, 2.20, 2.22, clean. Nothing changes. I also tried install firmware from trunk: https://downloads.openwrt.org/snapshots/trunk/ramips/mt7620/openwrt-ramips-mt7620-gl-mt300a-squashfs-sysupgrade.bin. But it is very bad work, the router periodically hangs. opkg print-architecture yields:
arch all 1 arch noarch 1 arch ramips_24kec 10
uname -a yields:
Linux GL-MT300A 3.18.27 #7 Wed Jul 6 10:47:10 HKT 2016 mips GNU/Linux
Does anyone have any further idease on how to get usbip-server running on the GL-MT300A ? This package it is very necessary.

@progit, please use the following, don’t omit .ipk. If you omit it, it search the database, not the files.

opkg install usbip*.ipk

Half a year later and I’ve reset my device after updating to the latest firmware:

Unfortunately, this puts me back at square one - the steps that previously led to success (downloading from attitude_adjustment/12.09/ramips/rt288x/packages/) no longer works.

I am now experiencing the exact same error as progit.

I’m guessing that this is going to come down to cross-compiling the userland tools.

Can anyone report any success with getting usbip to work on GL-MT300A (ramips_24kec, Linux GL-MT300A 3.18.27)?