Snapdragon 410 support for Ethernet


#1

Does the Snapdragon 410 chip support Ethernet natively? Once the schematics are available, we plan to customize the Dragonboard 410c and connect a Ethernet port to it. If so does the supplied Android OS contain all needed drivers for Ethernet?

I am aware that the Dragonboard 410c does not have an Ethernet port, and soon a USB-to-Ethernet adapter will be available. However, the latter is not the permanent solution we are looking for.


#2

hi @ryanr,

USB-to-Ethernet works fine already, you need to make sure you use an adapter that works on ‘linux’ in general, and it will work fine on the DB410c. I use one everyday…

There is not Ethernet controller on the SoC, or on the board, so if you want to add Ethernet functionality you need to look at the interfaces available on the expansion connectors.

One option is to use SPI. We’ve been able to hook up and ENC28J60 based SPI Ethernet controller on the DB410c, this one. Ethernet over SPI won’t give you fast ethernet though… but depending on your needs that might be enough.

Some folks at Linaro are trying to design a small debug board which has this SPI Ethernet controller, so potentially that could be an off-the-shelf mezzanine board that anyone could use…

You don’t really need the schematics to do that, since you can directly use the signals from the low speed expansion connector.

I don’t know about Android, and how it would handle Ethernet connection, though…


#3

AOSP/CAF have very basic/minimal support for Ethernet, and this isn’t considering whether or not support is built into these android builds. You don’t get much userspace control over ethernet on Android. Its basically DHCP connection in the background. In some (other) Android devices, that actually HAVE a hardware ethernet device (like IFC6410), I’ve found that a lot of software (google applications included) have a hard time recognizing that there is actually a network connected, since it bypasses the whole Android stack.


#4

Hi @doitright,

USB to ETHERNET is working fine as a command line utility in my 410c board with Android 5.1.1. Controller used is smsc75xx. But there is no userspace control or any means to get network connectivity from android app side. Can I expect a CAF release with android userspace support for ethernet anytime soon ? or please suggest the changes required in android stack to get it working from userspace.

Thanks,
apnair


#5
"One option is to use SPI. We’ve been able to hook up and ENC28J60 based SPI Ethernet controller on the DB410c, this one. Ethernet over SPI won’t give you fast ethernet though.. but depending on your needs that might be enough."

Can you provide more insight in how this is done (ideally the kernel driver + device tree mapping)? The peripheral programming guide SPI device-tree example looks like it was copy/pasted from the I2C section, and the documentation in the kernel/Documentation/bindings doesn’t seem to shed any light on how it’s supposed to be configured.

The peripheral programming guide (lm80-p0436-5_peripherals_programming_guide.pdf) calls out producer/consumer pipes 16,17 and BAM address/IRQ 0xF9904000, 238 for BLSP1_QUP_SPI3 but the device tree example and code in CAF do not match. Can you shed some light on how this should work, or point me to the relevant documents? The HRD doesn’t show any meaningful descriptions of using the SPI peripheral, nor what the pipes actually mean.


#6

I’ve been trying to integrate micrel eth controller ks8851 using the spi interface, but having some issues.
The debian/ubuntu kernel are aligned with the linux-next, so I assume the driver is functional (it works well in rPi and other platfroms), and the issues are either platform/bsp support or an spi configuration issue.
It seems that we pass probing correctly, reading and writing to the chip, but the network path is broken.
For example, when issuing a dhcp request, the packet is missing one (the first) byte of the destination address:
instead of ff ff ff ff ff ff <eth mac>… wireshark detects ff ff ff ff ff <eth mac>.
resulting in corrupted packet transmition and no responses (same goes for arp and other packets).

I’m already using latest spi fixes from the debian (pre) release, with Andy Gross latest fixes from his spi-wip-v2 branch.

First, Can you guys please share with the changes you’ve made to integrate the chip you are using (.config, device-tree, etc)?
Second, can you think of anything else corrupting the transmitted packet?

Thanks.


#7

Hello guys,

I am a newbee for dragonboard.

Could you please show me show this SPI Ethernet controller is connected to DB410c?
I am not so sure about which pin should be connected.

Regards


#8

Hello @ndec,

Could you please give hint about how to connect the ENC28J60 Ethernet LAN Network Module with DB410c?


#9

Hi Guys!

I also bought ECN28J60 module for board and do not understand how to connect it. Please, give me a hint.

Thank you!