How can I reverse tether my phone for Internet connectivity via USB cable without rooting?

I'm trying to create an Internet connection for an Android device using a Linux (Ubuntu 12.04 x64) box. Creating a Wi-Fi hotspot proved to be redundant as the device cannot discover the network. Next, I tried going through the steps described here. However, the hardware set up does not support AP interfaces.

I am left with the idea of reverse tethering via a USB cable. However, I do not want to root the phone.

Is there a solution that can solve this issue without rooting the device?

The device is running Android 4.2.2. and the workstation’s hardware specifications are:

Network controller: Qualcomm Atheros AR9485 Wireless Network Adapter 
USB controller: Intel Corporation 7 Series/C210 Series Chipset Family USB Enhanced Host Controller #2
USB controller: Intel Corporation 7 Series/C210 Series Chipset Family USB xHCI Host Controller
USB controller: Intel Corporation 7 Series/C210 Series Chipset Family USB Enhanced Host Controller

Solution 1:

Sorry for this late answer, but it seems you still have not found a solution yet, so I thought I'd chime in:

I was looking for a reverse tethering solution for unrooted devices as well, and could not find one. Eventually, I started to develop my own solution. The result is ReverseTethering NoRoot, an app that works on all Android versions starting from 4.0 on the client side, and all major desktop operating systems on the host side.

The app is available on Google Play: https://play.google.com/store/apps/details?id=com.floriandraschbacher.reversetethering.free