Beagleboard/Beagleboard identification at runtime


is it possible identify the hardware platform at runtime. I have an application which has ato address different hardware on the Beagleboard and the Beaglebone and has to identify the hardware it executes on.


BeagleBone has a EEPROM you can read. BeagleBoard and BeagleBoard-xM does not. On those boards, you can read the revsion GPIO pins.


Most of the info you need to determine which board your software is
running is easily available..

To separate the BeagleBone from the BeagleBoard, look at:

cat /proc/cpuinfo | grep Hardware
dmesg | grep neon

To separate the different Board revision of the BeagleBoard:

dmesg | grep Beagle

To separate specific Beagle's that re the same Board revision, add
"dieid=${dieid#} " to your mmcargs variable in your uEnv.txt boot

ubuntu@omap:~$ dmesg | grep dieid
[ 0.000000] Kernel command line: console=ttyO2,115200n8
console=tty0 vram=12MB omapfb.mode=dvi:1280x720MR-16@60
omapdss.def_disp=dvi root=/dev/mmcblk0p2 ro rootfstype=ext4 rootwait
fixrtc mpurate=auto buddy=none buddy2=none


Nice suggestions, though I’d be careful about depending on dmesg. It’s a circular buffer and the boot messages you are depending on may get overwritten at some point.