1*1a59d1b8SThomas Gleixner /* SPDX-License-Identifier: GPL-2.0-or-later */ 29b1c59e2SScott Wood /* 39b1c59e2SScott Wood * This interface is used for compatibility with old U-boots *ONLY*. 49b1c59e2SScott Wood * Please do not imitate or extend this. 59b1c59e2SScott Wood */ 69b1c59e2SScott Wood 79b1c59e2SScott Wood /* 89b1c59e2SScott Wood * (C) Copyright 2000, 2001 99b1c59e2SScott Wood * Wolfgang Denk, DENX Software Engineering, wd@denx.de. 109b1c59e2SScott Wood */ 119b1c59e2SScott Wood 129b1c59e2SScott Wood #ifndef __PPCBOOT_H__ 139b1c59e2SScott Wood #define __PPCBOOT_H__ 149b1c59e2SScott Wood 159b1c59e2SScott Wood /* 169b1c59e2SScott Wood * Board information passed to kernel from PPCBoot 179b1c59e2SScott Wood * 189b1c59e2SScott Wood * include/asm-ppc/ppcboot.h 199b1c59e2SScott Wood */ 209b1c59e2SScott Wood 219b1c59e2SScott Wood #include "types.h" 229b1c59e2SScott Wood 239b1c59e2SScott Wood typedef struct bd_info { 249b1c59e2SScott Wood unsigned long bi_memstart; /* start of DRAM memory */ 259b1c59e2SScott Wood unsigned long bi_memsize; /* size of DRAM memory in bytes */ 269b1c59e2SScott Wood unsigned long bi_flashstart; /* start of FLASH memory */ 279b1c59e2SScott Wood unsigned long bi_flashsize; /* size of FLASH memory */ 289b1c59e2SScott Wood unsigned long bi_flashoffset; /* reserved area for startup monitor */ 299b1c59e2SScott Wood unsigned long bi_sramstart; /* start of SRAM memory */ 309b1c59e2SScott Wood unsigned long bi_sramsize; /* size of SRAM memory */ 319b1c59e2SScott Wood #if defined(TARGET_8xx) || defined(TARGET_CPM2) || defined(TARGET_85xx) ||\ 3297493e2eSAlessio Igor Bogani defined(TARGET_83xx) || defined(TARGET_86xx) 339b1c59e2SScott Wood unsigned long bi_immr_base; /* base of IMMR register */ 349b1c59e2SScott Wood #endif 359b1c59e2SScott Wood #if defined(TARGET_PPC_MPC52xx) 369b1c59e2SScott Wood unsigned long bi_mbar_base; /* base of internal registers */ 379b1c59e2SScott Wood #endif 389b1c59e2SScott Wood unsigned long bi_bootflags; /* boot / reboot flag (for LynxOS) */ 399b1c59e2SScott Wood unsigned long bi_ip_addr; /* IP Address */ 409b1c59e2SScott Wood unsigned char bi_enetaddr[6]; /* Ethernet address */ 419b1c59e2SScott Wood unsigned short bi_ethspeed; /* Ethernet speed in Mbps */ 429b1c59e2SScott Wood unsigned long bi_intfreq; /* Internal Freq, in MHz */ 439b1c59e2SScott Wood unsigned long bi_busfreq; /* Bus Freq, in MHz */ 449b1c59e2SScott Wood #if defined(TARGET_CPM2) 459b1c59e2SScott Wood unsigned long bi_cpmfreq; /* CPM_CLK Freq, in MHz */ 469b1c59e2SScott Wood unsigned long bi_brgfreq; /* BRG_CLK Freq, in MHz */ 479b1c59e2SScott Wood unsigned long bi_sccfreq; /* SCC_CLK Freq, in MHz */ 489b1c59e2SScott Wood unsigned long bi_vco; /* VCO Out from PLL, in MHz */ 499b1c59e2SScott Wood #endif 509b1c59e2SScott Wood #if defined(TARGET_PPC_MPC52xx) 519b1c59e2SScott Wood unsigned long bi_ipbfreq; /* IPB Bus Freq, in MHz */ 529b1c59e2SScott Wood unsigned long bi_pcifreq; /* PCI Bus Freq, in MHz */ 539b1c59e2SScott Wood #endif 549b1c59e2SScott Wood unsigned long bi_baudrate; /* Console Baudrate */ 559b1c59e2SScott Wood #if defined(TARGET_4xx) 569b1c59e2SScott Wood unsigned char bi_s_version[4]; /* Version of this structure */ 579b1c59e2SScott Wood unsigned char bi_r_version[32]; /* Version of the ROM (IBM) */ 589b1c59e2SScott Wood unsigned int bi_procfreq; /* CPU (Internal) Freq, in Hz */ 599b1c59e2SScott Wood unsigned int bi_plb_busfreq; /* PLB Bus speed, in Hz */ 609b1c59e2SScott Wood unsigned int bi_pci_busfreq; /* PCI Bus speed, in Hz */ 619b1c59e2SScott Wood unsigned char bi_pci_enetaddr[6]; /* PCI Ethernet MAC address */ 629b1c59e2SScott Wood #endif 639b1c59e2SScott Wood #if defined(TARGET_HYMOD) 649b1c59e2SScott Wood hymod_conf_t bi_hymod_conf; /* hymod configuration information */ 659b1c59e2SScott Wood #endif 669b1c59e2SScott Wood #if defined(TARGET_EVB64260) || defined(TARGET_405EP) || defined(TARGET_44x) || \ 6761d3b949SScott Wood defined(TARGET_85xx) || defined(TARGET_83xx) || defined(TARGET_HAS_ETH1) 689b1c59e2SScott Wood /* second onboard ethernet port */ 699b1c59e2SScott Wood unsigned char bi_enet1addr[6]; 709b1c59e2SScott Wood #define HAVE_ENET1ADDR 719b1c59e2SScott Wood #endif 7261d3b949SScott Wood #if defined(TARGET_EVB64260) || defined(TARGET_440GX) || \ 7361d3b949SScott Wood defined(TARGET_85xx) || defined(TARGET_HAS_ETH2) 749b1c59e2SScott Wood /* third onboard ethernet ports */ 759b1c59e2SScott Wood unsigned char bi_enet2addr[6]; 769b1c59e2SScott Wood #define HAVE_ENET2ADDR 779b1c59e2SScott Wood #endif 7861d3b949SScott Wood #if defined(TARGET_440GX) || defined(TARGET_HAS_ETH3) 799b1c59e2SScott Wood /* fourth onboard ethernet ports */ 809b1c59e2SScott Wood unsigned char bi_enet3addr[6]; 819b1c59e2SScott Wood #define HAVE_ENET3ADDR 829b1c59e2SScott Wood #endif 839b1c59e2SScott Wood #if defined(TARGET_4xx) 849b1c59e2SScott Wood unsigned int bi_opbfreq; /* OB clock in Hz */ 859b1c59e2SScott Wood int bi_iic_fast[2]; /* Use fast i2c mode */ 869b1c59e2SScott Wood #endif 879b1c59e2SScott Wood #if defined(TARGET_440GX) 889b1c59e2SScott Wood int bi_phynum[4]; /* phy mapping */ 899b1c59e2SScott Wood int bi_phymode[4]; /* phy mode */ 909b1c59e2SScott Wood #endif 919b1c59e2SScott Wood } bd_t; 929b1c59e2SScott Wood 939b1c59e2SScott Wood #define bi_tbfreq bi_intfreq 949b1c59e2SScott Wood 959b1c59e2SScott Wood #endif /* __PPCBOOT_H__ */ 96