mirror of
https://github.com/brain-hackers/u-boot-brain
synced 2024-09-04 20:03:20 +09:00
![Masahiro Yamada](/assets/img/avatar_default.png)
The Linux coding style guide (Documentation/process/coding-style.rst) clearly says: It's a **mistake** to use typedef for structures and pointers. Besides, using typedef for structures is annoying when you try to make headers self-contained. Let's say you have the following function declaration in a header: void foo(bd_t *bd); This is not self-contained since bd_t is not defined. To tell the compiler what 'bd_t' is, you need to include <asm/u-boot.h> #include <asm/u-boot.h> void foo(bd_t *bd); Then, the include direcective pulls in more bloat needlessly. If you use 'struct bd_info' instead, it is enough to put a forward declaration as follows: struct bd_info; void foo(struct bd_info *bd); Right, typedef'ing bd_t is a mistake. I used coccinelle to generate this commit. The semantic patch that makes this change is as follows: <smpl> @@ typedef bd_t; @@ -bd_t +struct bd_info </smpl> Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
65 lines
1.2 KiB
C
65 lines
1.2 KiB
C
// SPDX-License-Identifier: GPL-2.0+
|
|
/*
|
|
* Copyright (C) 2007,2008 Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
|
|
* Copyright (C) 2008 Yusuke Goda <goda.yusuke@renesas.com>
|
|
*/
|
|
|
|
#include <common.h>
|
|
#include <ide.h>
|
|
#include <init.h>
|
|
#include <net.h>
|
|
#include <asm/processor.h>
|
|
#include <asm/io.h>
|
|
#include <asm/pci.h>
|
|
#include <netdev.h>
|
|
#include "r7780mp.h"
|
|
|
|
int checkboard(void)
|
|
{
|
|
#if defined(CONFIG_R7780MP)
|
|
puts("BOARD: Renesas Solutions R7780MP\n");
|
|
#else
|
|
puts("BOARD: Renesas Solutions R7780RP\n");
|
|
#endif
|
|
return 0;
|
|
}
|
|
|
|
int board_init(void)
|
|
{
|
|
/* SCIF Enable */
|
|
writew(0x0, PHCR);
|
|
|
|
return 0;
|
|
}
|
|
|
|
void led_set_state(unsigned short value)
|
|
{
|
|
|
|
}
|
|
|
|
void ide_set_reset(int idereset)
|
|
{
|
|
/* if reset = 1 IDE reset will be asserted */
|
|
if (idereset) {
|
|
writew(0x432, FPGA_CFCTL);
|
|
#if defined(CONFIG_R7780MP)
|
|
writew(inw(FPGA_CFPOW)|0x01, FPGA_CFPOW);
|
|
#else
|
|
writew(inw(FPGA_CFPOW)|0x02, FPGA_CFPOW);
|
|
#endif
|
|
writew(0x01, FPGA_CFCDINTCLR);
|
|
}
|
|
}
|
|
|
|
static struct pci_controller hose;
|
|
void pci_init_board(void)
|
|
{
|
|
pci_sh7780_init(&hose);
|
|
}
|
|
|
|
int board_eth_init(struct bd_info *bis)
|
|
{
|
|
/* return >= 0 if a chip is found, the board's AX88796L is n2k-based */
|
|
return ne2k_register() + pci_eth_init(bis);
|
|
}
|