kernelがFDT対応している場合、dtsファイルを用意する必要があります。
FreeBSDのソースツリーでdtsは以下のディレクトリにあります。
sys/gnu/dts
sys/dts
アーキテクチャ毎にディレクトリがきられています。
ZRouterにもdtsディレクトリを作ってあります。
dtsを修正した時にエラーがないかフルビルドでチェックするのは効率が悪いので、以下のようなスクリプトでチェックするとよいです。
#!/bin/sh
S=$1/sys
MACHINE=$2;export MACHINE
$S/tools/fdt/make_dtb.sh $S $3 /tmp
第一引数がfreebsdのソースの絶対パスで、第二引数がアーキテクチャ、第三引数がdtsファイルです。
ZRouterではboard.mkでdtsを指定しています。
boards/Fon/FON2601E/board.mk
ZKERNCONF_FDT_DTS_FILE?= "dts/mips/FON2601E.dts"
なにか変更したい時はvendor.mkで以下のようにして差し替えます。
vendor/Fon/vendor.mk
ZKERNCONF_FDT_DTS_FILE:="vendor/dts/FON2601E_MY.dts"
同じボードで複数dtsを用意している場合はフルビルドの前にdtbを消したほうが安全です。依存か何かの処理が壊れているみたいです。