Futro A250: Linux 




As the A250 supports USB booting I installed Tinycore 2.11 on a USB stick. This booted and ran perfectly. It connected to my DHCP server and picked up an IP address and I was able to download and install apps such as Seamonkey and then browse the Internet.

I also connected up a USB CDROM drive with Puppy 5.0.1. This booted up with out any problems but then I found it was unable to configure the ethernet interface. For those interested some of the dmesg output is shown later.

Patrick Keane emailed:

"I put a 512Mbyte SoDimm in my A250. I installed Debian Squeeze on a 4Gb flash card, and then installed Meteohub manually to the Debian system. I am running it 24/7 as a Meteohub server, (connected to a USB Rfxcomm 433 MHz receiver to log my Oregon Scientific sensors). It all works well -- no problems with eth0 at all."

[September 2010]

I had another try - this time with DSL 4.4.10 booting from Compact Flash. In the meantime I had picked up an A230 - the same beast but with less flash and RAM (128MB/128MB). On the A230 DSL booted fine, picked up a DHCP address, but the network died after shifting a few kilobytes of data. I dug out the A250, and with this, as with the earlier try with Puppy Linux, the network didn't work at all. At first glance the circuit boards are identical between the two units but on further investigation I found mention of "revision B" on a small paper label on the A230, and "revision C" on the A250.

Doing a lspci on the A230 gave:

00:01.0 Host bridge: Advanced Micro Devices [AMD] CS5536 [Geode companion] Host Bridge (rev 30)
00:01.1 VGA compatible controller: Advanced Micro Devices [AMD] Geode LX Video
00:01.2 Entertainment encryption device: Advanced Micro Devices [AMD] Geode LX AES Security Block
00:0d.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-8169 Gigabit Ethernet (rev 10)
00:0f.0 ISA bridge: Advanced Micro Devices [AMD] CS5536 [Geode companion] ISA (rev 03)
00:0f.2 IDE interface: Advanced Micro Devices [AMD] CS5536 [Geode companion] IDE (rev 01)
00:0f.3 Multimedia audio controller: Advanced Micro Devices [AMD] CS5536 [Geode companion] Audio (rev 01)
00:0f.4 USB Controller: Advanced Micro Devices [AMD] CS5536 [Geode companion] OHC (rev 02)
00:0f.5 USB Controller: Advanced Micro Devices [AMD] CS5536 [Geode companion] EHC (rev 02)

The A250 gave an almost identical output - the only difference being in the ethernet chip:

00:0d.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-8110SC/8169SC Gigabit Ethernet (rev 10)

The ethernet chip is located on the reverse side of the circuit board and I haven't yet taken the units apart to see the actual chip used. However, as before, Tinycore 3.0 works perfectly with both models. With the A230 it identifies the ethernet controller as an RTL8169sb/8110sb and that of the A250 as an RTL8169sc/8110sc.

Puppy dmesg output

Linux version (root@puppypc) (gcc version 4.3.4 (GCC) ) #1 SMP Mon Apr 5 12:55:04 Local time zone must be set--see zic m
Memory: 236252k/245440k available (2673k kernel code, 8476k reserved, 1246k data, 332k init, 0k highmem)
Console: colour VGA+ 80x25
console [tty0] enabled
Fast TSC calibration using PIT
Detected 498.024 MHz processor.
AMD Geode RNG detected
r8169 Gigabit Ethernet driver 2.3LK-NAPI loaded
ACPI: PCI Interrupt Link [LNKB] enabled at IRQ 11
r8169 0000:00:0d.0: PCI INT A -> Link[LNKB] -> GSI 11 (level, low) -> IRQ 11
r8169 0000:00:0d.0: no PCI Express capability
eth0: RTL8169sc/8110sc at 0xcf9da000, 00:90:dc:a2:4d:28, XID 18000000 IRQ 11
ACPI: PCI Interrupt Link [LNKA] enabled at IRQ 10
PCI: setting IRQ 10 as level-triggered
Geode LX AES 0000:00:01.2: PCI INT A -> Link[LNKA] -> GSI 10 (level, low) -> IRQ 10
input: PC Speaker as /devices/platform/pcspkr/input/input4
geode-aes: GEODE AES engine enabled.
cs5535audio 0000:00:0f.3: PCI INT B -> Link[LNKB] -> GSI 11 (level, low) -> IRQ 11
cs5535audio 0000:00:0f.3: setting latency timer to 64
dhcpcd: page allocation failure. order:3, mode:0x20
Pid: 12427, comm: dhcpcd Not tainted #1
Call Trace:
 [<c105773c>] ? __alloc_pages_nodemask+0x44d/0x48f
 [<c101c625>] ? __wake_up_common+0x34/0x59
 [<c106f749>] ? cache_alloc_refill+0x22c/0x406
 [<c106f99a>] ? __kmalloc+0x77/0x99
 [<c1236183>] ? __alloc_skb+0x4e/0x115
 [<c1236b91>] ? __netdev_alloc_skb+0x14/0x2d
 [<cf9cb2da>] ? rtl8169_rx_fill+0x94/0x168 [r8169]
 [<cf9cc76b>] ? rtl8169_init_ring+0x55/0x80 [r8169]
 [<c1005c14>] ? dma_generic_alloc_coherent+0x0/0xa0
 [<cf9ccf0f>] ? rtl8169_open+0x163/0x2f0 [r8169]
 [<c123ce0d>] ? dev_open+0x90/0xc7
 [<c123c4bc>] ? dev_change_flags+0xa1/0x152
 [<c12725e4>] ? devinet_ioctl+0x234/0x53b
 [<c123d831>] ? dev_ioctl+0x42a/0x590
 [<c122f93a>] ? sock_ioctl+0x1c0/0x1e4
 [<c122f77a>] ? sock_ioctl+0x0/0x1e4
 [<c107d925>] ? vfs_ioctl+0x1c/0x7b
 [<c107deda>] ? do_vfs_ioctl+0x4af/0x4ea
 [<c1072178>] ? fd_install+0x1e/0x3c
 [<c123074f>] ? sock_map_fd+0x1b/0x20
 [<c1230f5b>] ? sys_socket+0x42/0x56
 [<c1230fc4>] ? sys_socketcall+0x55/0x1af
 [<c107df41>] ? sys_ioctl+0x2c/0x42
 [<c129b425>] ? syscall_call+0x7/0xb

I've just included bits that show it's picked up some Geode specific features and has found the ethernet device. When I try and set up the networking the "dhcpcd: page allocation failure" kicks in.


Any comments? email me.    Last update June 2010