Aros/Platforms/ARM support

From Wikibooks, open books for an open world
Jump to navigation Jump to search
Navbar for the Aros wikibook
Aros User
Aros User Docs
Aros User FAQs
Aros User Applications
Aros User DOS Shell
Aros/User/AmigaLegacy
Aros Dev Docs
Aros Developer Docs
Porting Software from AmigaOS/SDL
For Zune Beginners
Zune .MUI Classes
For SDL Beginners
Aros Developer BuildSystem
Specific platforms
Aros x86 Complete System HCL
Aros x86 Audio/Video Support
Aros x86 Network Support
Aros Intel AMD x86 Installing
Aros Storage Support IDE SATA etc
Aros Poseidon USB Support
x86-64 Support
Motorola 68k Amiga Support
Linux and FreeBSD Support
Windows Mingw and MacOSX Support
Android Support
Arm Raspberry Pi Support
PPC Power Architecture
misc
Aros Public License

Introduction[edit | edit source]

There have been a few attempts at porting AROS (Amiga OS like) to the ARM architecture. At the moment, AROS runs on top of Linux (as well as Android) as another task/application.

  • 2006 year tech (ARMv5) : VIA 8500/8505, VIA 8650, RK2808/2818, Telechip 7801 (no support)
  • 2008 year tech (ARMv6) : Imap X2xx, Telechip 8902, Nvidia Tegra, Raspberry Pi,
  • 2010 year tech (one ARMv7) : Freescale iMX5, Marvell, Qualcomm, Samsung Hummingbird, TI OMAP 3xxx, Allwinner A10,
  • 2011 year tech (two ARMv7) : Nvidia Tegra 2, Qualcomm, Samsung Origen, ST-Ericsson, TI OMAP 4xxx,
  • 2012 year tech (3/4 ARMv7) : Nvidia Tegra 3, Qualcomm, Freescale iMX6, Samsung Exynos,
  • 2013 year tech ( ) : Qualcomm, Samsung, Tegra 4,
  • 2014 year tech (64bit) : AMD ,

Although ARMv6 chips have been around since late 2007, it is only since 2008 that Linux like Ubuntu, Debian, Angstrom] and close cousin Android with JIT Dalvik VM bytecode or Java bytecode been placed on netbooks, smartbooks, phones and tablets to provide a choice to the closed commercial OS like WinCE, Windows Mobile and BlackberryOS and in the past SymbianOS (which is now open) and even the old Archimedes RISCOS.

Support Chips

An SOC is an integrated chip that includes a CPU, a GPU (graphics) and various task specific processors. The level of support is entirely based on the amount of information that is available. Support needs to include the core cpu itself (2D and 3D as well) and other extra motherboard chips like hdmi, lcd, touchscreen, dsp, sata, etc. which requires knowledge (datasheets) from the suppliers of those chips (audio and USB is the best that can be supported without it). To get some idea of the amount of information needed see the Rockbox site for slightly simpler examples.

ARMHF target needs either armv7a cpu, if you are going to use both 32-bit arm code and thumb2, or armv6 cpu (that one was default, after you deleted this line) with 32-bit ARM code only (then gcc cross compiler needs—disable-multilib option).

GPUs

  • nVidia's Custom GPU found in the Tegra 2 SOC - 71 million. This GPU's native support for Unreal Engine 3, OpenGL 2.0, and a dedicated processor for 1080p/HDMI output support.
  • PowerVR SGX535 GPU - 28 million (triangles per second). This is the GPU found in the iPhone 4, iPad and most of Intel's Integrated Graphics Cards found in laptops (GMA 500/600). The iPhone 3GS also uses this GPU but clocked at a mere 200mhz. At that speed, it only pushes 7 million.
  • PowerVR SGX540 GPU - 90 million. This is the GPU found in the upcoming OMAP4 SOC, Snapdragon Gen II/III SOC and the Hummingbird SOC. The GPU in the Hummingbird SOC maxes out at 28 million due to it being clocked at 200 mHz and due to limitations related to the memory bandwidth.
  • PowerVR SGX554MP GPU - Unknown performance. It's a multicore gpu and thus the performance would scale based on the number of cores used.
  • GC800 single core Vivante GPU used by Marvell
  • GC1000
  • GC2000/GC4000 Marvell's Vivante GPU found in the Tri-Core Armada 628 SOC - Marvell claims that this GPU pushes a whopping 200 million triangles per second. As always, the actual devices will likely limit the clockspeed in order to conserve battery life so the real world performance will be less.
  • ARM Mali 200 GPU pushes 16 million triangles per second.
  • ARM Mali 400 GPU - This is the GPU found in the ST Ericsson U8500 SOC and the Samsung Orion SOC. This is a MP GPU that can scale anywhere from 1-4 cores. The rumours regarding the theoretical performance of the four core design range anywhere from 130 million to a whopping 450 million triangles per second. However, the key limitation as always is the clockspeed. A four core design could deliver very impressive performance even at a low clockspeed.
  • Mali T604
  • Mali-T658 "The Mali-T658 delivers desktop-class performance, achieved by doubling the number of GPU cores, doubling the number of arithmetic pipelines within each core and improving the compiler and pipeline efficiency.

The ARM Mali-T658 GPU supports multiple Compute APIs, including Khronos® OpenCL 1.1 (Full Profile), Google Renderscript compute and Microsoft DirectCompute. It provides native hardware support for 64-bit scalar and vector, integer and floating-point data types - fundamental to accelerate complex and computationally intensive algorithms. Complete support for Khronos APIs is maintained across the Mali-T600 Series of GPUs.

The Job Manager within Mali-T600 Series GPUs offloads task management from the CPU to the GPU and enables seamless load balancing across active shader cores. Concurrent delivery of a common set of compatible drivers for all Midgard architecture-based Mali GPUs enables faster time-to-market and minimizes software upgrade costs for future implementations.

The Mali-T658 GPU takes advantage of ARM CoreLink Cache Coherent Interconnect (CCI-400) technology, enabling faster and more efficient sharing of data with other processors in the system.

Supported[edit | edit source]

  • ARMv6 - ARM1136J(F)-S 8-stage pipeline, VFPv3+SIMD, Thumb, Jazelle DBX, Enhanced DSP instructions, variable, MMU
  • ARMv7 - Cortex A8 single, 13-stage superscalar pipeline, VFPv3+NEON, Thumb-2, Jazelle RCT, variable (L1+L2), MMU+TrustZone

AROS ARM Linux hosted Phase 1 was completed November 2010 for Efika MX products and others.

Watch a video here and a blog of the work done can be found here and here.

See more about Android support here

The following specific chipsets and drivers are also available. Please let us know any mistakes or any information to be added, to this General Chat list AROS-Exec or here AROS World

Make Arm Type Driver Support Hardware Opinion
8 MHz ARMv2 ARMv3 architecture ✘I2C-LCD ✘USB ✘Aud ✘Tch-Scr ✘eth ✘wifi ✘2D ✘3D ✘HDMI ✔ Yes ✔ Yes Acorn Archimedes (RISCOS)
66Mhz 133Mhz 150Mhz ARMv4 arch ✘I2C-LCD ✘USB ✘Aud ✘Tch-Scr ✘eth ✘wifi ✘2D ✘3D ✘HDMI ✔ Gameboy Advance, Psion Netbook, StrongArm, X-Scale,
200Mhz 330Mhz ARMv5TE arch

VIA WM8505 or Rockchip 600Mhz RK 2808, RK2808A, RK2816 or RK2818, Telechips 7801/7901,

most cheap Android 1.6 7" 128MB tablets, like Eken M???, APad, Elonex eTouch 750ET Next Toys'R'Us, Advent Amico, Disgo 6000,

Rocktab (acho c901), Ramos W9, Ainol Novo 5,

Nintendo DS, GP32, GP2X, GP Wiz, GamePark Cannoo,

Cowon D2, Cowan D5, Samsung YP-P2, old Dell Axim, Any old Palm OS Tungsten, LG Viewty Snap GM360,

these tablets machines will never have any AROS support
Marvell 100 1000 369Mhz to 1.2 GHz ARMv5 PJ1 VFPv3 No NEON Foxconn iWonder, Marvell Moby OLPC XO-3,
Sochip SC8600 Boxchip F16 Arm Type Firmware TMSON M6 768p player, poor documentation and no Android
Sochip SC9800 Teclast T1800 Boxchip F10 ?MHz ARMv? Ainol V8000HDW, 16GB Ainol V9000HD V6000HD, Ainol P810, Onda VX590 player only, Onda VX610 pmp player only, poor documentation and no Android
VIA WM8650 8710 600Mhz or 800 MHz ARMv? + 300Mhz DSP ✘I2C-LCD ✘USB ✘Aud ✘Tch-Scr ✘eth ✘wifi ✘2D ✘3D ✘HDMI ✔ unsure whether ARM9 (still?) or ARM11
Make Arm Type Driver Support Hardware Opinion
Apple A4 ?GHz ARMv7-A VFPv3+NEON + PowerVR SGX 535 GPU ✘I2C-LCD ✘USB ✘Aud ✘Tch-Scr ✘eth ✘wifi ✘2D ✘3D ✘HDMI ✔ iPad, iPhone4 closed hardware and software combo
Apple A5 1.2 GHz Dual Cortex A9 + PowerVR SGX543 GPU + Qualcomm wireless chipset Firmware iPad 2, iPad 3, closed hardware and software combo
Apple A iPad 4 closed hardware and software combo
Make Arm Type Driver Support Hardware Opinion
Freescale i.MX31 MX37 i.MX35 400-500Mhz ARMv6 arch + VFPv2 original Zune 30gb, Toshiba Gigabeat S and Kindle DX, Kindle 3, Sony PRS Reader, untested not sure if VFP supported
Freescale i.MX508 E-ink EPD display controller Kobo Touch Ebook Reader, untested
Freescale i.MX515 800Mhz A8 Single ARMv7 + VFPv3+NEON + AMD/ATI Z160 and Z430 OpenGLES ✘I2C-LCD ✘USB ✘Aud ✘Tch-Scr ✘eth ✘wifi ✘2D ✘3D ✘HDMI ✔ Efika MX Open Client and Smartbook, Pegatron Smartbook, i.MX Tablet,

Shogo Tablet, Mastone LifePad 7" i850 A800, UMEC Tablet, SurfaceInk 12.1" Tablet,

Shezhen Utopia Haipad Apad8 8" IMX515 SL-A8 M802 no hdmi 1speaker, Rival 8" IMX515 M8003 MG8003 hdmi? 2speaker?, Maixin MaiPad MX822, Dreambook W7,

Lumigon T1, Sharp PC-T1 Ubuntu Tablet, Sharp Netwalker 5" PC-Z1, Babbage Board, Lange Board,

HP Photosmart eStation C510 CQ140B,

hosted works on Efika MX Linux only but native wip (Work in Progress) - 720p decode - 480p encode
Freescale i.MX535 i.mx5 1 GHz A8 Single + VFPv3+NEON untested - 1080p decode - 720p encode
Freescale i.MX6 imx6d (dual) and imx6q (quad) + multicore Vicante GC2000 GPU 1.2 Ghz A8 Boundary Devices Sabre Lite (Quad), Ampe A10, Sanei N10, Chwei V90, Genesi, Wandboard, untested
Make Arm Type Driver Support Hardware Opinion
IMAP X200 IMAPX210 X220 1 GHz ARMv6 arch + VFP(?) + GPU ✘I2C-LCD ✘USB ✘Aud ✘Tch-Scr ✘eth ✘wifi ✘2D ✘3D ✘HDMI ✔ Zenithink ZT180, Flatpad, Wiipad 10", Orphan M16, 10.2" Android ePad, Flytouch 2, Elonex eTouch 1000ET, Infotmic tablet, untested but some confusion and some with small 2000mAh battery
Make Arm Type Driver Support Hardware Opinion
Marvell PXA166 800Mhz ARMv6 Kirkwood Driver Support Shenzhen Coulter Tablet, untested - a bit slow from some reports
Marvell 500 1.2 GHz ARMv7 type Sheeva PJ4 core - VFPv3-D16 No NEON but MMX2 + Vivante GC800 GPU untested - 720p
Marvell 600 610 618 1.2 GHz ARMv7 type Sheeva PJ4 core - VFPv3-D16 No NEON but MMX2 + Vivante GC1000 GPU untested - 1080p
Armada 1500 Armv7 + Vivante GCxxx GPU Google TV,
Marvell Armada 628 1.5 GHz Tri-core + Vivante GC1000 GPU untested
Marvell Armada XP A15 quad core + GC2000/GC4000 GPU Firmware Hardware Opinion
Make Arm Type Driver Support Hardware Opinion
Nvidia Tegra 600 (GPS) 650 (Notebook), APX 2500, APX 2600 600Mhz ARMv6 arch + VFPv2 Microsoft's Zune HD, Microsoft only mainly - proprietary blobs for 720p
Nvidia Tegra 2 T20 - 250 Dev Board 1Ghz A9 Dual ARMv7 + VFPv3+NEON + 280/500Mhz GPU ✘I2C-LCD ✘USB ✘Aud ✘Tch-Scr ✘eth ✘wifi ✘2D ✘3D ✘HDMI ✔ Advent ICD Vega, Toshiba AC100, Notion Ink Adam, Malata Zpad, Toshiba SmartPad, Samsung Galaxy Tab, Motorola Xoom, Acer Iconia A100, Asus Eee Pad Transformer, Dell Streak Pro 10, Amazon Coyote, Motorola Atrix 4G, LG Verizon Optimus 2x, Sony Tablet S and Tablet P, Viewsonic gTablet, hosted with Android install - proprietary linux blobs for 720p/1080p and 3D
Tegra 3 T30 (Kal-El) 1.3 Ghz A15 quad + 12 core Nvidia GPU (up to 2560x1600) Driver Support ASUS Transformer Pad TF300T Prime, Google NEXUS 7" Pad, Amazon Hollywood, Fuhu Nabi 2 Tablet(NABI2-NV7A), ZTE T98 (7"), ZTE Light Tab 3S (10"), Toshiba AT300SE, ASUS ME301T, Acer A110, Blaupunkt Discovery T3, Sony Xperia tablet,
Tegra 4 (Wayne) ARMv7 Driver Support Xiaomi M3 untested
Tegra 5 (Logan) Arm Type Driver Support Hardware expected late 2015
Tegra 6 (Stark) Arm Type Driver Support Hardware expected late 2017
Make Arm Type Driver Support Hardware Opinion
Qualcomm MSM7200 7210 7210A 274-500Mhz ARMv6 Single HTC Kaiser, HTC Dream G1, HTC Magic, HTC Hero, Sony Ericsson Xperia X10 Mini Pro, untested -
Qualcomm Snapdragon QSD8250 QSD8650 1Ghz Single Scorpion ARMv7 VFPv3+ + Adreno 200 GPU (ATI Imageon GPU z430) LCD / Wifi / Flash Toshiba TG01, Google Nexus One, Huawei S7, Acer Liquid, AT&T LG eXpo Monaco/IQ, hosted
Qualcomm SnapDragon 7227 MSM7230 MSM7630 800 MHz ARMv7 Scorpion Single + Adreno 205 GPU HTC Desire Z G2, T-Mobile G2, Compaq Airlife 100, LG GT540, ZTE T-Mobile Blade (Orange San Francisco), Rio II, untested on Android
Qualcomm Snapdragon MSM8255 MSM8260 MSM8660 1.0Ghz to 1.5Ghz ARMv7 Scorpion Dual + Adreno 205 GPU ✘I2C-LCD ✘USB ✘Aud ✘Tch-Scr ✘eth ✘wifi ✘2D ✘3D ✘HDMI ✔ HTC Desire HD EVO 4G, HTC Flyer Tablet, EVO 3D, hosted
Qualcomm QSD8250 1.3Ghz ARMv7 + Adreno 205 GPU Driver Support Huawei Ideos S7 Slim, Lenovo Skylight, Opinion
Qualcomm Snapdragon MSM8260 MSM8270 MSM8660 QSD8672 1.5Ghz Dual Scorpion ARMv7 + Adreno 220 GPU HTC Glacier, HTC Puccini Tablet, untested
Snapdragon S3 APQ8060 HP Touchpad,
Qualcomm Snapdragon S4 MSM8930 (one core) MSM8960 (two cores) S4Pro APQ8064 (quad) 1.5Ghz Dual and Quad Krait A15 type + Adreno 320 quad GPU untested
Snapdragon 200 400 600 800 SoC family, up to 4 Krait 400 processor cores, Adreno 330 graphics
Make Arm Type Driver Support Hardware Opinion
Samsung S3C6410 S3C6430 400Mhz 533Mhz 677 MHz ARMv6 architecture Samsung Omnia II, Samsung Moment, SmartQ 5, SmartQ 7, iPhone, iPhone3G, Orphan M66 aPad (android 1.6), TechPad 7", Pandigital Novel, Barnes and Noble Nook, Velocity Cruz Micro Reader, untested
Samsung S5PC100 800Mhz-1Ghz ARMv7 Cortex A8 Single and Samsung GFX SGX535(?) iPhone3GS, Odroid-Lite, Samsung Galaxy (i7500), untested - 720p - low quality 1080p
Samsung S5PC110 Hummingbird 800Mhz-1Ghz ARMv7 Cortex A8 Single and SGX540 Samsung Galaxy S (i9000), Odroid-S, InnoDigital WebTube, untested - 720p - low quality 1080p
Samsung S5PV210 1.2Ghz ARMv7 Cortex A8 Single and SGX5 CorePad 7, Embest DevKit7000 untested - 720p - low quality 1080p
Samsung Exynos 4210 (Origen) (Orion) 4412 1 GHz A9 Dual Cortex + Mali-400MP GPU Samsung Galaxy SII S2 (i9100), Samsung Galaxy Note, untested
Samsung Exynos 4 Quad 1.4-1.6 GHz Quad-core ARM Cortex-A9 + Mali-400MP GPU Samsung Galaxy Note 2 32-bit Dual-channel 400 MHz LPDDR, LPDDR2, DDR2 or DDR3 (6.4 GB/sec)[19] hosted
Exynos A15 Dual/Quad Exynos 5 chipset A15 Dual 32-bit Dual-channel 800 MHz LPDDR3/DDR3 (12.8 GB/sec) or 533 MHz LPDDR2 (8.5 GB/sec) or quad-core 2.0 GHz Exynos 5450 + T604, Arndale Board, Nexus 10, Series 3 Chromebook, Google Nexus 10, Galaxy S4,
Make Arm Type Driver Support Hardware Opinion
ST-Ericsson U8500 1.5Ghz dual A9 + Mali-400MP GPU Driver Support Hardware untested 2011 -
ST-Ericsson U9500 A9 Dual Cortex Driver Support Hardware late 2011
Make Arm Type Driver Support Hardware Opinion
Telechips TCC9101, TCC9201, TCC8900, TCC8902, 600-720-800Mhz ARMv6 arch + 300Mhz Mali 200 GPU ✘I2C-LCD ✘USB ✘Aud ✘Tch-Scr ✘eth ✘wifi ✘2D ✘3D ✘HDMI ✔ Haina HaiPad M701 M701-R, [ Pandawill G10], Augen GenTouch78, Sinotech X5A, X5A-G G11 Smartbook Surfer, Telepad M1001 clone BadPad M1001 10.1" and 7" tablet, Storage Options 51624 tablet[1], untested - poor documentation - mali gpu 720p binary blob - slower than Cortex A8 chips (android 2.1 based usually - so no flash) - battery life can be poor,
Telechip TCC8803 1Ghz ARMv7 A8 + Mali GPU Gpad 702, M708 EM73, untested
Make Arm Type Driver Support Hardware Opinion
TI OMAP 2420 2430 330Mhz - 500Mhz ARMv6 arch Nokia S60, Nokia E90, Nokia N93, Nokia N95, Nokia N82, Zune, BUGbase, Nokia N800, Nokia N810, Samsung GT-i8510 Innov8, untested
TI OMAP 3430 600Mhz ARMv7 architecture Samsung i8910/Omnia HD, Samsung H1 360, Nokia N900, Samsung M1, Motorola Droid, untested 720p
TI OMAP3530 600Mhz ARMv7-A Cortex A8 Single with 430 MHz TMS320C64x+™ DSP Core + PowerVR SGX 530 OpenGL2ES ✘I2C-LCD ✘USB ✘Aud ✘Tch-Scr ✘eth ✘wifi ✘2D ✘3D ✘HDMI ✔ Pandora, TI SoC C6A816x TMDXEVM8168DDR2, Beagleboard or XM, Nationite MIDnite (Witstech A81e), Archos 5 (?), Archos 7(?), Geexbox, Embest DevKit8000, Embest SBC8100 untested - high 720p
TI OMAP 3621 OMAP3630 3640 1Ghz ARMv7-A Cortex A8 Single Barnes and Noble Nook color, Archos 70, Archos 101, Moto Droid X, untested - 720p - low quality 1080p
Ti OMAP 4430 4440 + SGX540 4460 4470 IGHz A9 Dual + SGX540 GPU Pandaboard ES, Amazon Kindle Fire, Amazon Kindle Fire HD, Barnes & Noble Nook Tablet, Barnes and Noble Hook Tablet HD, RIM's Blackberry Playbook, untested but don't let Playbook battery level drop below 5%, else need to stack charging or direct charging to battery if out of warranty
Make Arm Type Driver Support Hardware Opinion
ZiiLABS ZMS-08 1Ghz A8 Creative Zii, Bonux HZ20A Android STB, untested
ZiiLABS ZMS-20 1.5Ghz dual A9 Driver Support Hardware untested
ZiiLABS ZMS-40 1.5Ghz quad A9 Driver Support Hardware untested
Make Arm Type Driver Support Hardware Opinion
Raspberry Pi article ARMv6 (Arm11) + Broadcom BCM2835 with GSMA Universal Charging Solution UCS micro usb Driver closed source for graphics and openGL Raspberry Pi ?? hosted Broadway PI hosted,
Broadcom BCM21664T Dual 1.2Ghz A9
Rockchip RK 2908 2918 1Ghz ARMv7 (A8) + Vivante GCxxx GPU Firmware Teclast T760, Cube U15GT, Ainol Novo 8, Archos Arnova 10 G2, untested with Android 2.3
Rockchip RK3066 1.6Ghz Dual A8 (A9) + Mali 400 Zero Devices Z2C, R2000, Archos Titanium 7,
Fuzhou Rockchip Electronics Company RK31xx RK3188 ARMv7 + Mali GPU
Amlogic AML8726-M Arm A9 with Mali-400 GPU Driver Support Ramos W10, W12, Haipad M703, untested with Android 2.2
Trident PNX847x/8x/9x STB SoC Cortex Dual A9 + Mali 400 GPU Driver Support Hardware unknown support
Allwinner (aka Sochip BoxChip) A10 A13 A14 1Ghz, 1.2Ghz or 1.5 Ghz A8 single core + Mali 400 MP GPU Ainol Novo 7 Elf (resistance), Ainol Novo 7 Aurora (capactive), Eken T01, Hyundai A7, Teclast P76Ti, Ployer momo8 mono9c, IVIEW 760TPC CyPad, M021, untested with Android 2.3 or later, no open source details
Allwinner A20 Dual , no open source details
Allwinner A31 Quad Archos Elements, , no open source details
Mediatek Dual MT6573 MT6575 MT6577 1.2 GHz Dual + Imagination PowerVR SGX 531 GPU Acer B1-A71 (MTK 8317T)
Mediatek Quad MT6589 Quad + Series5XT SGX544 GPU
NEC EMMA Mobile/EV EV1 EV2 1Ghz A9 dual (EV2) + SGX530 ✘I2C-LCD ✘USB ✘Aud ✘Tch-Scr ✘eth ✘wifi ✘2D ✘3D ✘HDMI ✔ LifeTouch, Opinion
NuFront NuSmart 2816 2Ghz A9 Dual + Mali 400 GPU Firmware Hardware untested - desktop/set top only
AMD 64bit A53 (A50 family) ARMv8 2014
AMD 64bit A57 (A50 series) ARMv8 core 2014-5

Developing[edit | edit source]

Commercial

IAR have a free code size limited version. Keil are owned by ARM, so should provide good tools. Code Red have excellent debug facilities (none intrusive trace, etc.) and the lowest price. Rowley and Code Red use CodeSourcery. Raisonance uses the arm-non-eabi CodeSourcery compiler too.

Free

https://support.bluetechnix.at/wiki/Hardware_documentation_(SBC-i.MX51)

What the ideal developer board should have?

  • 2 serial ports (one can be null modem, second should have RTS/CTS/DTR lines)
  • working Ethernet not placed on USB bus (so it works when USB does not)
  • powered USB host port (more than one would be great)
  • USB device port
  • JTAG connector
  • one power input — +5V or +12V
  • SD/MMC slot — even if it is over slow SPI
  • GPIO pins
  • I²C bus
  • SPI bus
  • keypad with Up/Down/Left/Right + Enter at least
  • easily reachable reset button (pins to short are acceptable as micro switch can be put on them)
  • few LEDs controlled by system
  • all connectors put on one or two edges of board — top one + one of side ones are ok
  • mounting holes (so board can be mounted for presentation)
  • backup battery for RTC
  • U-Boot or similar
  • quite fresh kernel

What to avoid:

  • female serial port connectors
  • flat cables which connect “debug boards” with main board
  • RJ45 connectors for serial console — DB9 or properly done USB->RS232 adapter on-board are best
  • placing connectors on all edges (BeagleBoard)
  • non standard bootloaders (U-Boot is what I prefer)
  • Ethernet on USB
  • jumpers
  • non standard connectors

I am trying to not cover should developer board contain display with touchscreen or not as it depends on type of board. But if screen is present then more than QVGA (320×240) would be nice (WVGA 1200x768 anyone?). Some kind of video out connector can also be used but would be nice to have one of VGA/DVI/HDMI so normal PC monitor can be used — Composite video and S-Video require searching for some kind of TV.