Linux-libre 5.4.49-gnu
[librecmc/linux-libre.git] / arch / powerpc / boot / cuboot-yosemite.c
1 // SPDX-License-Identifier: GPL-2.0-only
2 /*
3  * Old U-boot compatibility for Yosemite
4  *
5  * Author: Josh Boyer <jwboyer@linux.vnet.ibm.com>
6  *
7  * Copyright 2008 IBM Corporation
8  */
9
10 #include "ops.h"
11 #include "stdio.h"
12 #include "4xx.h"
13 #include "44x.h"
14 #include "cuboot.h"
15
16 #define TARGET_4xx
17 #define TARGET_44x
18 #include "ppcboot.h"
19
20 static bd_t bd;
21
22 static void yosemite_fixups(void)
23 {
24         unsigned long sysclk = 66666666;
25
26         ibm440ep_fixup_clocks(sysclk, 11059200, 50000000);
27         ibm4xx_sdram_fixup_memsize();
28         ibm4xx_quiesce_eth((u32 *)0xef600e00, (u32 *)0xef600f00);
29         dt_fixup_mac_address_by_alias("ethernet0", bd.bi_enetaddr);
30         dt_fixup_mac_address_by_alias("ethernet1", bd.bi_enet1addr);
31 }
32
33 void platform_init(unsigned long r3, unsigned long r4, unsigned long r5,
34                 unsigned long r6, unsigned long r7)
35 {
36         CUBOOT_INIT();
37         platform_ops.fixups = yosemite_fixups;
38         platform_ops.exit = ibm44x_dbcr_reset;
39         fdt_init(_dtb_start);
40         serial_console_init();
41 }