diff options
author | raj <raj@FreeBSD.org> | 2010-06-02 17:22:38 +0000 |
---|---|---|
committer | raj <raj@FreeBSD.org> | 2010-06-02 17:22:38 +0000 |
commit | b640c371d6bd20c9b8a60c0a3f7f825dff193d86 (patch) | |
tree | f9ab9329b857efab975216c3daaf0965df657ca8 /sys/tools | |
parent | f55f4f1d8f5976e7c4ed0b386ba6e6e524292d76 (diff) | |
download | FreeBSD-src-b640c371d6bd20c9b8a60c0a3f7f825dff193d86.zip FreeBSD-src-b640c371d6bd20c9b8a60c0a3f7f825dff193d86.tar.gz |
Flattened Device Tree helper scripts.
Reviewed by: imp
Sponsored by: The FreeBSD Foundation
Diffstat (limited to 'sys/tools')
-rwxr-xr-x | sys/tools/fdt/embed_dtb.sh | 44 | ||||
-rwxr-xr-x | sys/tools/fdt/make_dtbh.sh | 8 |
2 files changed, 52 insertions, 0 deletions
diff --git a/sys/tools/fdt/embed_dtb.sh b/sys/tools/fdt/embed_dtb.sh new file mode 100755 index 0000000..7869a20 --- /dev/null +++ b/sys/tools/fdt/embed_dtb.sh @@ -0,0 +1,44 @@ +#!/bin/sh +# +# Copyright (c) 2010 The FreeBSD Foundation +# All rights reserved. +# +# This software was developed by Semihalf under sponsorship from +# the FreeBSD Foundation. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions +# are met: +# 1. Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# 2. Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in the +# documentation and/or other materials provided with the distribution. +# +# THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND +# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +# ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE +# FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +# OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +# HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +# OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +# SUCH DAMAGE. +# +# $FreeBSD$ + +# $1: kernel filename +# $2: device tree blob filename + +dtbsize=`ls -l $2 | awk '{print $5}'` +obs=`strings -at d $1 | grep "Device Tree Blob STARTS here" | awk '{print $1}'` +eol=`strings -at d $1 | grep "Device Tree Blob STOPS here" | awk '{print $1}'` +sz=$((eol - obs)); +if [ $sz -lt $dtbsize ] +then + echo "Selected blob is too big to reembed. Please rebuild the kernel." + exit +fi +dd if=$2 ibs=${dtbsize} of=$1 obs=${obs} oseek=1 conv=notrunc 2> /dev/null diff --git a/sys/tools/fdt/make_dtbh.sh b/sys/tools/fdt/make_dtbh.sh new file mode 100755 index 0000000..c2d41b6 --- /dev/null +++ b/sys/tools/fdt/make_dtbh.sh @@ -0,0 +1,8 @@ +#!/bin/sh +# +# $FreeBSD$ + +# Script generates a $2/fdt_static_dtb.h file. + +dtb_base_name=`basename $1 .dts` +echo '#define FDT_DTB_FILE "'${dtb_base_name}.dtb'"' > $2/fdt_static_dtb.h |