Title: Home router with sama5d35
Author: kleph
Email: kleph@kleph.info
Category: Article
Date: 2013/07/04
Tags: Linux, Arm, Debian, Embedded
Slug: Home router with sama5d35
Lang: en

Here is an article in which I will try to describe/document how I installed a normal debian beside the original demo OS on the sama5d35 board won at Fosdem 2013 (thanks again !)

## firmware
I did not flash the bootloader nor the NAND for now.

The internal bootloader [name] checks for SD card before the NAND.
Beware, the second slot, uSD card, is not checked, despite beeing listed in the datasheet provided with the board (Atmel_11121_32-bit-Cortex-A5-Microcontroller_SAMA5D3_Datasheet.pdf).

In the User Guide (Atmel_11180_32-bit-Cortex-A5-Microcontroller_SAMA5D3-Series-EK_User-Guide.pdf) int the boot process, only the first slot, the one that accept SD card, is mentioned.

It took me a week to figure that... I though my builds were bad and/or flashing the board with sam-ba was mendatory.

But with U-Boot and a kernel on a FAT(16 or 32) partition on a SD-card, you can boot without flashing the demo system :)

For the setup, I used the uUSB to USB cable to connect the board to my desktop.

I use screen to connect to the serial console.
	screen /dev/ttyACM0

NOTE: You can interrupt the original U-boot boot process by hitting any key before it starts to scan boot devices.


## Boot loader
Uboot paramaters

You may configure U-Boot boot parameters in Uboot shell
This one is for booting the original kernel, and rootfs (and /) on ne nor partition

	setenv bootargs console=ttyS0,115200 mtdparts=atmel_nand:8M(bootstrap/uboot/kernel)ro,-(rootfs) rw rootfs=ext3 root=/dev/mmcblk0p2 rootdelay=2


For the records, the original boot params to boot from the Nand:

	console=ttyS0,115200 mtdparts=atmel_nand:8M(bootstrap/uboot/kernel)ro,-(rootfs) rw rootfstype=ubifs ubi.mtd=1 root=ubi0:rootfs


#boot


## kernel
- at91 patched
- this at91 still not in 3.9. 15-20 patches need to be added
- 3.10 ? Yes ! sama5d35 support has been merge into mainlin kernel 3.10 ! TODO: test it.

## base system
- debian armhf

## uname 
- Linux jouet 3.6.9-sama5-armv7-d0.8 #1 Wed May 8 13:04:54 CEST 2013 armv7l GNU/Linux

## My mileage
I am using the board as a router for my home connection.
Also for a few additional services: DHCP server, RA announcer, DNS server (authority and resolver/cache for the lan), firewall and NTP server for the lan.
I have a pretty decent connection, FTTH, 100 Mbps / 50 Mbps, vendor stated.


# Images
![alt text](http://blog.kleph.info/images/atmel_et_raspi_small.png atmel and raspi)
[full size](http://blog.kleph.info/images/atmel_et_raspi.jpg)

<!---
vim: bg=light
--->
