aboutsummaryrefslogtreecommitdiffstats
path: root/package/boot/uboot-lantiq/patches/0029-tools-add-some-helper-tools-for-Lantiq-SoCs.patch
diff options
context:
space:
mode:
authorJohn Crispin <john@openwrt.org>2014-04-12 21:21:14 +0000
committerJohn Crispin <john@openwrt.org>2014-04-12 21:21:14 +0000
commit1246dce0b31d3b950e04ab3a6fd466f289510c7c (patch)
tree5a8031c749e5208b4e979aad0f54ebb7841670b3 /package/boot/uboot-lantiq/patches/0029-tools-add-some-helper-tools-for-Lantiq-SoCs.patch
parent22916814e3621dd807b0d89485ba3c60cfdf7c10 (diff)
downloadupstream-1246dce0b31d3b950e04ab3a6fd466f289510c7c.tar.gz
upstream-1246dce0b31d3b950e04ab3a6fd466f289510c7c.tar.bz2
upstream-1246dce0b31d3b950e04ab3a6fd466f289510c7c.zip
uboot-lantiq: update to v2013.10
Patches created from tree: git@github.com:danielschwierzeck/u-boot-lantiq.git v2013.10..u-boot-lantiq-v2013.10-openwrt4 Signed-off-by: Daniel Schwierzeck <daniel.schwierzeck@gmail.com> SVN-Revision: 40482
Diffstat (limited to 'package/boot/uboot-lantiq/patches/0029-tools-add-some-helper-tools-for-Lantiq-SoCs.patch')
-rw-r--r--package/boot/uboot-lantiq/patches/0029-tools-add-some-helper-tools-for-Lantiq-SoCs.patch361
1 files changed, 0 insertions, 361 deletions
diff --git a/package/boot/uboot-lantiq/patches/0029-tools-add-some-helper-tools-for-Lantiq-SoCs.patch b/package/boot/uboot-lantiq/patches/0029-tools-add-some-helper-tools-for-Lantiq-SoCs.patch
deleted file mode 100644
index 77d48d1ad3..0000000000
--- a/package/boot/uboot-lantiq/patches/0029-tools-add-some-helper-tools-for-Lantiq-SoCs.patch
+++ /dev/null
@@ -1,361 +0,0 @@
-From 1b77d4249b5addbf3b0848db6992a445019a1865 Mon Sep 17 00:00:00 2001
-From: Luka Perkov <luka@openwrt.org>
-Date: Wed, 29 Aug 2012 22:08:42 +0200
-Subject: tools: add some helper tools for Lantiq SoCs
-
-Signed-off-by: Luka Perkov Luka Perkov <luka@openwrt.org>
-Signed-off-by: Daniel Schwierzeck <daniel.schwierzeck@gmail.com>
-
---- /dev/null
-+++ b/tools/gct.pl
-@@ -0,0 +1,155 @@
-+#!/usr/bin/perl
-+
-+#use strict;
-+#use Cwd;
-+#use Env;
-+
-+my $aline;
-+my $lineid;
-+my $length;
-+my $address;
-+my @bytes;
-+my $addstr;
-+my $chsum=0;
-+my $count=0;
-+my $firstime=1;
-+my $i;
-+my $currentaddr;
-+my $tmp;
-+my $holder="";
-+my $loadaddr;
-+
-+if(@ARGV < 2){
-+ die("\n Syntax: perl gct.pl uart_ddr_settings.conf u-boot.srec u-boot.asc\n");
-+}
-+
-+open(IN_UART_DDR_SETTINGS, "<$ARGV[0]") || die("failed to open uart_ddr_settings.conf\n");
-+open(IN_UART_SREC, "<$ARGV[1]") || die("failed to open u-boot.srec\n");
-+open(OUT_UBOOT_ASC, ">$ARGV[2]") || die("failed to open u-boot.asc\n");
-+
-+$i=0;
-+while ($line = <IN_UART_DDR_SETTINGS>){
-+ if($line=~/\w/){
-+ if($line!~/[;#\*]/){
-+ if($i eq 0){
-+ printf OUT_UBOOT_ASC ("33333333");
-+ }
-+ chomp($line);
-+ $line=~s/\t//;
-+ @array=split(/ +/,$line);
-+ $j=0;
-+ while(@array[$j]!~/\w/){
-+ $j=$j+1;
-+ }
-+ $addr=@array[$j];
-+ $regval=@array[$j+1];
-+ $addr=~s/0x//;
-+ $regval=~s/0x//;
-+ printf OUT_UBOOT_ASC ("%08x%08x",hex($addr),hex($regval));
-+ $i=$i+1;
-+ if($i eq 8){
-+ $i=0;
-+ printf OUT_UBOOT_ASC ("\n");
-+ }
-+ }
-+ }
-+}
-+
-+while($i lt 8 && $i gt 0){
-+ printf OUT_UBOOT_ASC "00"x8;
-+ $i=$i+1;
-+}
-+
-+if($i eq 8){
-+ printf OUT_UBOOT_ASC ("\n");
-+}
-+
-+while($aline=<IN_UART_SREC>){
-+ $aline=uc($aline);
-+ chomp($aline);
-+ next if(($aline=~/^S0/) || ($aline=~/^S7/));
-+ ($lineid, $length, $address, @bytes) = unpack"A2A2A8"."A2"x300, $aline;
-+ $length = hex($length);
-+ $address = hex($address);
-+ $length -=5;
-+ $i=0;
-+
-+ while($length>0){
-+ if($firstime==1){
-+ $addstr = sprintf("%x", $address);
-+ $addstr = "0"x(8-length($addstr)).$addstr;
-+ print OUT_UBOOT_ASC $addstr;
-+ addchsum($addstr);
-+ $firstime=0;
-+ $currentaddr=$address;
-+ $loadaddr = $addstr;
-+ }
-+ else{
-+ if($count==64){
-+ $addstr = sprintf("%x", $currentaddr);
-+ $addstr = "0"x(8-length($addstr)).$addstr;
-+ print OUT_UBOOT_ASC $addstr;
-+ addchsum($addstr);
-+ $count=0;
-+ }
-+#printf("*** %x != %x\n", $address, $currentaddr) if $address != $currentaddr;
-+ }
-+ if($currentaddr < $address) {
-+ print OUT_UBOOT_ASC "00";
-+ addchsum("00");
-+ $count++;
-+ $currentaddr++;
-+ }
-+ else {
-+ while($count<64){
-+ $bytes[$i]=~tr/ABCDEF/abcdef/;
-+ print OUT_UBOOT_ASC "$bytes[$i]";
-+ addchsum($bytes[$i]);
-+ $i++;
-+ $count++;
-+ $currentaddr++;
-+ $length--;
-+ last if($length==0);
-+ }
-+ }
-+ if($count==64){
-+ print OUT_UBOOT_ASC "\n";
-+ }
-+ }
-+}
-+if($count != 64){
-+ $tmp = "00";
-+ for($i=0;$i<(64-$count);$i++){
-+ print OUT_UBOOT_ASC "00";
-+ addchsum($tmp);
-+ }
-+ print OUT_UBOOT_ASC "\n";
-+}
-+
-+
-+print OUT_UBOOT_ASC "11"x4;
-+use integer;
-+$chsum=$chsum & 0xffffffff;
-+$chsum = sprintf("%X", $chsum);
-+$chsum = "0"x(8-length($chsum)).$chsum;
-+$chsum =~tr/ABCDEF/abcdef/;
-+print OUT_UBOOT_ASC $chsum;
-+print OUT_UBOOT_ASC "00"x60;
-+print OUT_UBOOT_ASC "\n";
-+
-+print OUT_UBOOT_ASC "99"x4;
-+print OUT_UBOOT_ASC $loadaddr;
-+print OUT_UBOOT_ASC "00"x60;
-+print OUT_UBOOT_ASC "\n";
-+
-+close OUT_UBOOT_ASC;
-+
-+sub addchsum{
-+ my $cc=$_[0];
-+ $holder=$holder.$cc;
-+ if(length($holder)==8){
-+ $holder = hex($holder);
-+ $chsum+=$holder;
-+ $holder="";
-+ }
-+}
---- /dev/null
-+++ b/tools/lantiq_extract_openwrt_patches.sh
-@@ -0,0 +1,15 @@
-+#!/bin/bash
-+
-+set -e
-+set -x
-+
-+test $# -eq 1
-+
-+openwrt_root=$(readlink -f $1)
-+test -d $openwrt_root
-+
-+uboot_lantiq_dir=$openwrt_root/package/boot/uboot-lantiq/patches
-+test -d $uboot_lantiq_dir
-+
-+rm -vf $uboot_lantiq_dir/*
-+git format-patch -k -p --no-renames --text --full-index -o $uboot_lantiq_dir v2012.10..openwrt/v2013.01
---- /dev/null
-+++ b/tools/lantiq_ram_extract_magic.awk
-@@ -0,0 +1,70 @@
-+#
-+# This file is released under the terms of GPL v2 and any later version.
-+# See the file COPYING in the root directory of the source tree for details.
-+#
-+# Copyright (C) 2011 Luka Perkov <luka@openwrt.org>
-+#
-+# usage: mips-openwrt-linux-objdump -EB -b binary -m mips:isa32r2 -D YOUR_IMAGE_DUMP | awk -f lantiq_ram_extract_magic.awk
-+#
-+
-+BEGIN {
-+ print "/* "
-+ print " * This file is released under the terms of GPL v2 and any later version. "
-+ print " * See the file COPYING in the root directory of the source tree for details. "
-+ print " * "
-+ print " * generated with lantiq_ram_extract_magic.awk "
-+ print " * "
-+ print " * Copyright (C) 2011 Luka Perkov <luka@openwrt.org> "
-+ print " */ "
-+ print ""
-+
-+ mc_dc_value=0
-+ mc_dc_number=0
-+ right_section=0
-+ mc_dc_value_print=0
-+ mc_dc_number_print=0
-+}
-+
-+/t2,[0-9]+$/ {
-+ if (right_section) {
-+ split($4, tmp, ",")
-+ mc_dc_value=sprintf("%X", tmp[2])
-+ mc_dc_value_print=1
-+ }
-+}
-+
-+/t2,0x[0-9a-f]+$/ {
-+ if (right_section) {
-+ split($4, tmp, ",0x")
-+ mc_dc_value=sprintf("%s", tmp[2])
-+ mc_dc_value=toupper(mc_dc_value)
-+ mc_dc_value_print=1
-+ }
-+}
-+
-+/t2,[0-9]+\(t1\)$/ {
-+ if (right_section) {
-+ split($4, tmp, ",")
-+ split(tmp[2], tmp, "(")
-+ mc_dc_number=tmp[1]/16
-+ mc_dc_number_print=1
-+ }
-+}
-+
-+{
-+ if (right_section && mc_dc_number_print && mc_dc_value_print) {
-+ if (mc_dc_number < 10)
-+ print "#define MC_DC0" mc_dc_number "_VALUE\t0x" mc_dc_value
-+ else
-+ print "#define MC_DC" mc_dc_number "_VALUE\t0x" mc_dc_value
-+ mc_dc_value_print=0
-+ mc_dc_number_print=0
-+ }
-+
-+ if ($4 == "t1,t1,0x1000")
-+ right_section=1
-+
-+
-+ if ($4 == "t2,736(t1)")
-+ right_section=0
-+}
---- /dev/null
-+++ b/tools/lantiq_ram_init_uart.awk
-@@ -0,0 +1,101 @@
-+#!/usr/bin/awk -f
-+#
-+# This file is released under the terms of GPL v2 and any later version.
-+# See the file COPYING in the root directory of the source tree for details.
-+#
-+# Copyright (C) 2011-2012 Luka Perkov <luka@openwrt.org>
-+# Copyright (C) 2012 Daniel Schwierzeck <daniel.schwierzeck@gmail.com>
-+#
-+# usage: awk -f lantiq_ram_init_uart.awk -v soc=<danube|ar9|vr9> PATH_TO_BOARD/ddr_settings.h
-+#
-+
-+function print_header()
-+{
-+ print "; "
-+ print "; This file is released under the terms of GPL v2 and any later version. "
-+ print "; See the file COPYING in the root directory of the source tree for details. "
-+ print "; "
-+ print "; generated with lantiq_ram_init_uart.awk "
-+ print "; "
-+ print "; Copyright (C) 2011-2012 Luka Perkov <luka@openwrt.org> "
-+ print "; Copyright (C) 2012 Daniel Schwierzeck <daniel.schwierzeck@gmail.com> "
-+ print "; "
-+ print ""
-+}
-+
-+function mc_ddr1_prologue()
-+{
-+ /* Clear access error log registers */
-+ print "0xbf800010", "0x0"
-+ print "0xbf800020", "0x0"
-+
-+ /* Enable DDR and SRAM module in memory controller */
-+ print "0xbf800060", "0x5"
-+
-+ /* Clear start bit of DDR memory controller */
-+ print "0xbf801030", "0x0"
-+}
-+
-+function mc_ddr1_epilogue()
-+{
-+ /* Set start bit of DDR memory controller */
-+ print "0xbf801030", "0x100"
-+}
-+
-+function mc_ddr2_prologue()
-+{
-+ /* Put memory controller in inactive mode */
-+ print "0xbf401070", "0x0"
-+}
-+
-+function mc_ddr2_epilogue(mc_ccr07_value)
-+{
-+ /* Put memory controller in active mode */
-+ mc_ccr07_value = or(mc_ccr07_value, 0x100)
-+ printf("0xbf401070 0x%x\n", mc_ccr07_value)
-+}
-+
-+BEGIN {
-+ switch (soc) {
-+ case "danube":
-+ case "ar9":
-+ reg_base = 0xbf801000
-+ print_header()
-+ mc_ddr1_prologue()
-+ break
-+ case "vr9":
-+ reg_base = 0xbf401000
-+ print_header()
-+ mc_ddr2_prologue()
-+ break
-+ default:
-+ print "Invalid or no value for soc specified!"
-+ exit 1
-+ }
-+
-+ mc_ccr07_value = 0
-+}
-+
-+/^#define/ {
-+ printf("0x%x %s\n", reg_base, tolower($3))
-+ reg_base += 0x10
-+}
-+
-+/^#define(.*)MC_CCR07_VALUE/ {
-+ printf("0x%x %s\n", reg_base, tolower($3))
-+ reg_base += 0x10
-+ mc_ccr07_value = strtonum($3)
-+}
-+
-+END {
-+ switch (soc) {
-+ case "danube":
-+ case "ar9":
-+ mc_ddr1_epilogue()
-+ break
-+ case "vr9":
-+ mc_ddr2_epilogue(mc_ccr07_value)
-+ break
-+ default:
-+ }
-+}