Here are some instructions to get the HP T410 zero client booted with mainline
Linux kernel. There are two models available HP t410 Smart Zero Client without an LCD,
and HP tt410 All-in-One Smart Zero Client with an LCD.
These devices have 1GB of RAM, 16GB eMMC, Gigabit Ethernet, and USB and
audio and integrated c674x DSP. Basically it should be possible to get it
to eventually behave pretty much like BeagleBone with the mainline Linux
kernel.
Inside the case near the power switch, there's a header for a serial port with
the following pinout:
|------- TX? max3243c DOUT2 pin 10
| |----- RX? max3243c RIN1 pin 4
| | |--- XX
| | |
x x x x
x x x x x
| | | |
| | | -- GND
| | |---
| |----- TX1 +-5.5V, max3243c DOUT1 pin 9
|------- RX1 max3243c RIN3 pin 6
You have to open the screw in the back, slide the back part away, then slide the
side parts away, open the side screws, and then slide the top away. I just
soldered a left over PC UART cable to RX1, TX1 and GND pins. Then you can boot
to the u-boot prompt after hitting a key in the serial terminal when it's booting.
You may need to reboot a few times as the timeout is very short.
It can be configured to boot over Ethernet with the following commands:
HP # setenv bootdelay 3
HP # setenv bootargs root=/dev/nfs ip=dhcp console=ttyO0,115200 debug earlyprintk
HP # setenv thinpro dhcp\; bootm
HP # saveenv
To build the kernel, you need to use appended DTB:
$ make ARCH=arm omap2plus_defconfig
$ make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- zImage modules
$ cat arch/arm/boot/zImage arch/arm/boot/dts/t410.dtb > /tmp/zImage-adtb
$ mkimage -A arm -O linux -T kernel -C none -a 0x80008000 -e 0x80008000 \
-n "Linux" -d /tmp/zImage-adtb /tmp/uImage
As of Linux next at next-20160303, basic support is already in v4.5 kernel
with clock driver queued to be merged for v4.6 kernel.
Currently at least the following devices are working on hp t410, dm814x-evm
and dra62x j5eco-evm:
- Clocks (set_rate patch is still being worked on)
- GPIOs (not all banks are yet properly supported)
- GPMC
- eDMA
- Ethernet
- I2C
- MMC
- RTC
- Timers
- UARTs
- USB
- Watchdog
What is not working:
- Video and audio
- Mailbox (untested) and DSP
- PCIe
- Power management
If you plan on working on some of these features, please coordinate
the work on linux-omap mailing list to avoid duplicate work.