Gentoo Logo

[ << ] [ < ] [ Home ] [ > ] [ >> ]


5. QNAP TurboStation 109/209/409

Content:

5.a. Gentoo documentation

Currently, the TS109/TS209 and TS409 boards are supported on Gentoo thanks to QNAP Inc. who provided us with hardware to create and document the installation process.

5.b. QNAP TurboStation TS109/209/409 Specifications:

Code Listing 2.1: Board Specifications


# Marvell Orion SoC MV88F5182(for the TS109/209) and MV88F5281(for the TS409)
# Marvell Feroceon ARMv5TE 500MHz processor
# 128/256/512MB DDR2 RAM between the different models
# 8MB NAND Flash
# Marvell SATA2 controller
# Marvell Gigabit Ethernet controller

# LED's available:
    * Power led (TS109/209 only)
	* Status led
	* SATA HDD leds
	* Network interface led
	* USB led

# Reset button
# 3x USB 2.0 ports
# 1x eSATA port, TS109 only
# Buzzer

5.c. /proc/cpuinfo

Code Listing 3.1: CPU Info

Processor       : Feroceon rev 0 (v5l)
BogoMIPS        : 498.07
Features        : swp half thumb fastmult vfp edsp
CPU implementer : 0x41
CPU architecture: 5TEJ
CPU variant     : 0x0
CPU part        : 0x926
CPU revision    : 0
Cache type      : write-back
Cache clean     : cp15 c7 ops
Cache lockdown  : format C
Cache format    : Harvard
I size          : 32768
I assoc         : 1
I line length   : 32
I sets          : 1024
D size          : 32768
D assoc         : 4
D line length   : 32
D sets          : 256

Hardware        : QNAP TS-409
Revision        : 0000
Serial          : 0000000000000000

5.d. Cross Compile Preparation

Code Listing 4.1: Setup

emerge crossdev
crossdev armv5tel-softfloat-linux-gnueabi

Code Listing 4.2: Emerge Wrapper (qnap-merge)

#!/bin/sh

CHOST=armv5tel-softfloat-linux-gnueabi

#export CBUILD=$(portageq envvar CBUILD)
export SYSROOT="/usr/${CHOST}"
export PORTAGE_CONFIGROOT="/usr/${CHOST}"

# optional exports
export enable_malloc0returnsnull=yes \
        ac_cv_file__usr_share_sgml_X11_defs_ent=1 \
        ac_cv_func_setpgrp_void=yes ac_cv_func_setgrent_void=yes \
        ac_cv_func_calloc_0_nonnull=yes ac_cv_func_malloc_0_nonnull=yes \
        gl_cv_func_malloc_0_nonnull=yes ac_cv_func_realloc_0_nonnull=yes \
        ac_cv_func_memcmp_working=yes ac_cv_func_strnlen_working=yes

# optional export for glib:2
export glib_cv_uscore=no glib_cv_stack_grows=no \
        glib_cv_stack_grows=no  glib_cv_has__inline=yes \
        glib_cv_has__inline__=yes glib_cv_hasinline=yes \
        glib_cv_sane_realloc=yes glib_cv_va_copy=yes \
        glib_cv___va_copy=yes glib_cv_va_val_copy=no \
        glib_cv_rtldglobal_broken=no glib_cv_uscore=no \
        ac_cv_func_posix_getpwuid_r=yes \
        ac_cv_func_posix_getgrgid_r=yes \
        ac_cv_header_pwd_h=yes \
        ac_cv_func_getpwuid_r=yes \
        glib_cv_sizeof_gmutex=40 

FAKEROOT=
if [[ $(id -u) != 0 ]]; then
	if [[ $(type -p fakeroot) != "" ]]; then
		FAKEROOT=fakeroot
	fi
fi

${FAKEROOT} emerge -q "$@"

Code Listing 4.3: /usr/armv5tel-softfloat-linux-gnueabi/etc/make.conf

#
CHOST=armv5tel-softfloat-linux-gnueabi
CBUILD=x86_64-pc-linux-gnu
ARCH="arm"
ROOT=/usr/${CHOST}/
ACCEPT_KEYWORDS="arm ~arm"
USE="${ARCH} zlib bindist make-symlinks minimal \
        input_devices_keyboard input_devices_evdev \
        video_cards_fbdev video_cards_dummy"

VIDEO_CARDS="fbdev dummy"

INPUT_DEVICES="evdev keyboard mouse touchscreen"
USE_EXPAND="video_cards input_devices"
MARCH_TUNE="-march=armv5t -mtune=arm926ej-s"
CFLAGS="-Os -pipe ${MARCH_TUNE} -fomit-frame-pointer -I${ROOT}/usr/include/ -I${ROOT}/include/"

CXXFLAGS="${CFLAGS}"
LDFLAGS="-L${ROOT}/usr/lib -L${ROOT}/lib"

PKG_CONFIG_PATH="${ROOT}/usr/lib/pkgconfig/"
MAKEOPTS="-j8"
FEATURES="-collision-protect sandbox buildpkg noman noinfo nodoc"

PORTDIR_OVERLAY="/usr/portage/local/"
PKGDIR=${ROOT}/packages/
PORTAGE_TMPDIR=${ROOT}/tmp/
PORTAGE_WORKDIR_MODE=2775
PORTAGE_ECLASS_WARNING_ENABLE=0

CLEAN_DELAY=0
EPAUSE_IGNORE=1
EBEEP_IGNORE=1

5.e. References:


[ << ] [ < ] [ Home ] [ > ] [ >> ]


Print

View all

Page updated April 28, 2013

Summary: Little-endian ARMv5TE NAS from QNAP.

Mike Frysinger
Author

Ned Ludd
Author

Robin H. Johnson
Author

Alex Tarkovsky
Author

Alexey Shvetsov
Author

Raúl Porcel
Author

Joshua Saddler
Editor

Donate to support our development efforts.

Copyright 2001-2014 Gentoo Foundation, Inc. Questions, Comments? Contact us.