1// SPDX-License-Identifier: GPL-2.0-only 2/* 3 * Old U-boot compatibility for Taishan 4 * 5 * Author: Hugh Blemings <hugh@au.ibm.com> 6 * 7 * Copyright 2007 Hugh Blemings, IBM Corporation. 8 * Based on cuboot-ebony.c which is: 9 * Copyright 2007 David Gibson, IBM Corporation. 10 * Based on cuboot-83xx.c, which is: 11 * Copyright (c) 2007 Freescale Semiconductor, Inc. 12 */ 13 14#include "ops.h" 15#include "stdio.h" 16#include "cuboot.h" 17#include "reg.h" 18#include "dcr.h" 19#include "4xx.h" 20 21#define TARGET_4xx 22#define TARGET_44x 23#define TARGET_440GX 24#include "ppcboot.h" 25 26static bd_t bd; 27 28BSS_STACK(4096); 29 30static void taishan_fixups(void) 31{ 32 /* FIXME: sysclk should be derived by reading the FPGA 33 registers */ 34 unsigned long sysclk = 33000000; 35 36 ibm440gx_fixup_clocks(sysclk, 6 * 1843200, 25000000); 37 38 ibm4xx_sdram_fixup_memsize(); 39 40 dt_fixup_mac_address_by_alias("ethernet0", bd.bi_enetaddr); 41 dt_fixup_mac_address_by_alias("ethernet1", bd.bi_enet1addr); 42 43 ibm4xx_fixup_ebc_ranges("/plb/opb/ebc"); 44} 45 46void platform_init(unsigned long r3, unsigned long r4, unsigned long r5, 47 unsigned long r6, unsigned long r7) 48{ 49 CUBOOT_INIT(); 50 51 platform_ops.fixups = taishan_fixups; 52 fdt_init(_dtb_start); 53 serial_console_init(); 54} 55