1 /* 2 * Copyright (C) 2007,2008 Nobuhiro Iwamatsu <iwamatsu@nigauri.org> 3 * Copyright (C) 2008 Yusuke Goda <goda.yusuke@renesas.com> 4 * 5 * SPDX-License-Identifier: GPL-2.0+ 6 */ 7 8 #include <common.h> 9 #include <ide.h> 10 #include <asm/processor.h> 11 #include <asm/io.h> 12 #include <asm/pci.h> 13 #include <netdev.h> 14 #include "r7780mp.h" 15 16 int checkboard(void) 17 { 18 #if defined(CONFIG_R7780MP) 19 puts("BOARD: Renesas Solutions R7780MP\n"); 20 #else 21 puts("BOARD: Renesas Solutions R7780RP\n"); 22 #endif 23 return 0; 24 } 25 26 int board_init(void) 27 { 28 /* SCIF Enable */ 29 writew(0x0, PHCR); 30 31 return 0; 32 } 33 34 void led_set_state(unsigned short value) 35 { 36 37 } 38 39 void ide_set_reset(int idereset) 40 { 41 /* if reset = 1 IDE reset will be asserted */ 42 if (idereset) { 43 writew(0x432, FPGA_CFCTL); 44 #if defined(CONFIG_R7780MP) 45 writew(inw(FPGA_CFPOW)|0x01, FPGA_CFPOW); 46 #else 47 writew(inw(FPGA_CFPOW)|0x02, FPGA_CFPOW); 48 #endif 49 writew(0x01, FPGA_CFCDINTCLR); 50 } 51 } 52 53 static struct pci_controller hose; 54 void pci_init_board(void) 55 { 56 pci_sh7780_init(&hose); 57 } 58 59 int board_eth_init(bd_t *bis) 60 { 61 /* return >= 0 if a chip is found, the board's AX88796L is n2k-based */ 62 return ne2k_register() + pci_eth_init(bis); 63 } 64