diff options
Diffstat (limited to 'target/linux/mpc83xx/patches-2.6.36/022-boot_rb333.patch')
-rw-r--r-- | target/linux/mpc83xx/patches-2.6.36/022-boot_rb333.patch | 76 |
1 files changed, 0 insertions, 76 deletions
diff --git a/target/linux/mpc83xx/patches-2.6.36/022-boot_rb333.patch b/target/linux/mpc83xx/patches-2.6.36/022-boot_rb333.patch deleted file mode 100644 index 8c70a0b56..000000000 --- a/target/linux/mpc83xx/patches-2.6.36/022-boot_rb333.patch +++ /dev/null @@ -1,76 +0,0 @@ ---- /dev/null -+++ b/arch/powerpc/boot/rb333.c -@@ -0,0 +1,73 @@ -+/* -+ * The RouterBOARD platform -- for booting RB333 RouterBOARDs. -+ * -+ * Author: Alexandros C. Couloumbis <alex@ozo.com> -+ * Author: Michael Guntsche <mike@it-loops.com> -+ * -+ * Copyright (c) 2010 Alexandros C. Couloumbis -+ * Copyright (c) 2009 Michael Guntsche -+ * -+ * This program is free software; you can redistribute it and/or modify it -+ * under the terms of the GNU General Public License version 2 as published -+ * by the Free Software Foundation. -+ */ -+ -+#include "ops.h" -+#include "types.h" -+#include "io.h" -+#include "stdio.h" -+#include <libfdt.h> -+ -+BSS_STACK(4*1024); -+ -+u64 memsize64; -+const void *fw_dtb; -+ -+static void rb333_fixups(void) -+{ -+ const u32 *reg, *timebase, *clock; -+ int node, size; -+ void *chosen; -+ const char* bootargs; -+ -+ dt_fixup_memory(0, memsize64); -+ -+ /* Find the CPU timebase and clock frequencies. */ -+ node = fdt_node_offset_by_prop_value(fw_dtb, -1, "device_type", "cpu", sizeof("cpu")); -+ timebase = fdt_getprop(fw_dtb, node, "timebase-frequency", &size); -+ clock = fdt_getprop(fw_dtb, node, "clock-frequency", &size); -+ dt_fixup_cpu_clocks(*clock, *timebase, 0); -+ -+ /* Fixup chosen -+ * The bootloader reads the kernelparm segment and adds the content to -+ * bootargs. This is needed to specify root and other boot flags. -+ */ -+ chosen = finddevice("/chosen"); -+ node = fdt_path_offset(fw_dtb, "/chosen"); -+ bootargs = fdt_getprop(fw_dtb, node, "bootargs", &size); -+ setprop_str(chosen, "bootargs", bootargs); -+} -+ -+void platform_init(unsigned long r3, unsigned long r4, unsigned long r5, -+ unsigned long r6, unsigned long r7) -+{ -+ const u32 *reg; -+ int node, size; -+ -+ fw_dtb = (const void *)r3; -+ -+ /* Find the memory range. */ -+ node = fdt_node_offset_by_prop_value(fw_dtb, -1, "device_type", "memory", sizeof("memory")); -+ reg = fdt_getprop(fw_dtb, node, "reg", &size); -+ memsize64 = reg[1]; -+ -+ /* Now we have the memory size; initialize the heap. */ -+ simple_alloc_init(_end, memsize64 - (unsigned long)_end, 32, 64); -+ -+ /* Prepare the device tree and find the console. */ -+ fdt_init(_dtb_start); -+ serial_console_init(); -+ -+ /* Remaining fixups... */ -+ platform_ops.fixups = rb333_fixups; -+} |