diff -Nur a/util/grub.d/10_linux.in b/util/grub.d/10_linux.in --- a/util/grub.d/10_linux.in 2015-10-16 08:28:56.901970897 -0300 +++ b/util/grub.d/10_linux.in 2015-10-16 08:30:45.112786124 -0300 @@ -139,6 +139,25 @@ initrd ${rel_dirname}/${initrd} EOF fi + if [ "$(cat /sys/devices/platform/bone_capemgr/baseboard/board-name)" = 'A335BONE' ]; then + if test -f "${rel_dirname}/dtbs/${version}/am335x-bone.dtb" ; then + # TRANSLATORS: Device tree path isn't identifier. Should be translated. + message="$(gettext_printf "Loading devices tree file ...")" + sed "s/^/$submenu_indentation/" << EOF + echo '$(echo "$message" | grub_quote)' + devicetree ${rel_dirname}/dtbs/${version}/am335x-bone.dtb +EOF + fi + elif [ "$(cat /sys/devices/platform/bone_capemgr/baseboard/board-name)" = 'A335BNLT' ]; then + if test -f "${rel_dirname}/dtbs/${version}/am335x-boneblack.dtb" ; then + # TRANSLATORS: Device tree path isn't identifier. Should be translated. + message="$(gettext_printf "Loading devices tree file ...")" + sed "s/^/$submenu_indentation/" << EOF + echo '$(echo "$message" | grub_quote)' + devicetree ${rel_dirname}/dtbs/${version}/am335x-boneblack.dtb +EOF + fi + fi sed "s/^/$submenu_indentation/" << EOF } EOF @@ -222,6 +241,16 @@ linux_root_device_thisversion=${GRUB_DEVICE} fi + if [ "$(cat /sys/devices/platform/bone_capemgr/baseboard/board-name)" = 'A335BONE' ]; then + if test -f "${dirname}/dtbs/${version}/am335x-bone.dtb" ; then + gettext_printf "Found device tree file: %s\n" "${dirname}/dtbs/${version}/am335x-bone.dtb" >&2 + fi + elif [ "$(cat /sys/devices/platform/bone_capemgr/baseboard/board-name)" = 'A335BNLT' ]; then + if test -f "${dirname}/dtbs/${version}/am335x-boneblack.dtb" ; then + gettext_printf "Found device tree file: %s\n" "${dirname}/dtbs/${version}/am335x-boneblack.dtb" >&2 + fi + fi + if [ "x$is_top_level" = xtrue ] && [ "x${GRUB_DISABLE_SUBMENU}" != xy ]; then linux_entry "${OS}" "${version}" simple \ "${GRUB_CMDLINE_LINUX} ${GRUB_CMDLINE_LINUX_DEFAULT}" diff -Nur a/util/grub.d/20_linux_xen.in b/util/grub.d/20_linux_xen.in --- a/util/grub.d/20_linux_xen.in 2015-10-16 08:28:56.901970897 -0300 +++ b/util/grub.d/20_linux_xen.in 2015-10-16 08:31:03.152921373 -0300 @@ -132,6 +132,25 @@ module --nounzip ${rel_dirname}/${initrd} EOF fi + if [ "$(cat /sys/devices/platform/bone_capemgr/baseboard/board-name)" = 'A335BONE' ]; then + if test -f "${rel_dirname}/dtbs/${version}/am335x-bone.dtb" ; then + # TRANSLATORS: Device tree path isn't identifier. Should be translated. + message="$(gettext_printf "Loading devices tree file ...")" + sed "s/^/$submenu_indentation/" << EOF + echo '$(echo "$message" | grub_quote)' + devicetree ${rel_dirname}/dtbs/${version}/am335x-bone.dtb +EOF + fi + elif [ "$(cat /sys/devices/platform/bone_capemgr/baseboard/board-name)" = 'A335BNLT' ]; then + if test -f "${rel_dirname}/dtbs/${version}/am335x-boneblack.dtb" ; then + # TRANSLATORS: Device tree path isn't identifier. Should be translated. + message="$(gettext_printf "Loading devices tree file ...")" + sed "s/^/$submenu_indentation/" << EOF + echo '$(echo "$message" | grub_quote)' + devicetree ${rel_dirname}/dtbs/${version}/am335x-boneblack.dtb +EOF + fi + fi sed "s/^/$submenu_indentation/" << EOF } EOF @@ -235,6 +254,16 @@ linux_root_device_thisversion=${GRUB_DEVICE} fi + if [ "$(cat /sys/devices/platform/bone_capemgr/baseboard/board-name)" = 'A335BONE' ]; then + if test -f "${dirname}/dtbs/${version}/am335x-bone.dtb" ; then + gettext_printf "Found device tree file: %s\n" "${dirname}/dtbs/${version}/am335x-bone.dtb" >&2 + fi + elif [ "$(cat /sys/devices/platform/bone_capemgr/baseboard/board-name)" = 'A335BNLT' ]; then + if test -f "${dirname}/dtbs/${version}/am335x-boneblack.dtb" ; then + gettext_printf "Found device tree file: %s\n" "${dirname}/dtbs/${version}/am335x-boneblack.dtb" >&2 + fi + fi + if [ "x$is_top_level" = xtrue ] && [ "x${GRUB_DISABLE_SUBMENU}" != xy ]; then linux_entry "${OS}" "${version}" "${xen_version}" simple \ "${GRUB_CMDLINE_LINUX} ${GRUB_CMDLINE_LINUX_DEFAULT}" "${GRUB_CMDLINE_XEN} ${GRUB_CMDLINE_XEN_DEFAULT}"