xref: /rk3399_rockchip-uboot/include/configs/ulcb.h (revision c1c3fe23070ac924e65208abbf8d2396bcc08008)
1*bd39050cSMarek Vasut /*
2*bd39050cSMarek Vasut  * include/configs/ulcb.h
3*bd39050cSMarek Vasut  *     This file is ULCB board configuration.
4*bd39050cSMarek Vasut  *
5*bd39050cSMarek Vasut  * Copyright (C) 2017 Renesas Electronics Corporation
6*bd39050cSMarek Vasut  *
7*bd39050cSMarek Vasut  * SPDX-License-Identifier: GPL-2.0+
8*bd39050cSMarek Vasut  */
9*bd39050cSMarek Vasut 
10*bd39050cSMarek Vasut #ifndef __ULCB_H
11*bd39050cSMarek Vasut #define __ULCB_H
12*bd39050cSMarek Vasut 
13*bd39050cSMarek Vasut #undef DEBUG
14*bd39050cSMarek Vasut 
15*bd39050cSMarek Vasut #define CONFIG_RCAR_BOARD_STRING "ULCB"
16*bd39050cSMarek Vasut 
17*bd39050cSMarek Vasut #include "rcar-gen3-common.h"
18*bd39050cSMarek Vasut 
19*bd39050cSMarek Vasut /* M3 ULCB has 2 banks, each with 1 GiB of RAM */
20*bd39050cSMarek Vasut #if defined(CONFIG_R8A7796)
21*bd39050cSMarek Vasut #undef PHYS_SDRAM_1_SIZE
22*bd39050cSMarek Vasut #undef PHYS_SDRAM_2_SIZE
23*bd39050cSMarek Vasut #define PHYS_SDRAM_1_SIZE		(0x40000000u - DRAM_RSV_SIZE)
24*bd39050cSMarek Vasut #define PHYS_SDRAM_2_SIZE		0x40000000u
25*bd39050cSMarek Vasut #endif
26*bd39050cSMarek Vasut 
27*bd39050cSMarek Vasut /* SCIF */
28*bd39050cSMarek Vasut #define CONFIG_CONS_SCIF2
29*bd39050cSMarek Vasut #define CONFIG_CONS_INDEX	2
30*bd39050cSMarek Vasut #define CONFIG_SH_SCIF_CLK_FREQ        CONFIG_S3D4_CLK_FREQ
31*bd39050cSMarek Vasut 
32*bd39050cSMarek Vasut /* [A] Hyper Flash */
33*bd39050cSMarek Vasut /* use to RPC(SPI Multi I/O Bus Controller) */
34*bd39050cSMarek Vasut 
35*bd39050cSMarek Vasut /* Ethernet RAVB */
36*bd39050cSMarek Vasut #define CONFIG_NET_MULTI
37*bd39050cSMarek Vasut #define CONFIG_PHY_MICREL
38*bd39050cSMarek Vasut #define CONFIG_BITBANGMII
39*bd39050cSMarek Vasut #define CONFIG_BITBANGMII_MULTI
40*bd39050cSMarek Vasut 
41*bd39050cSMarek Vasut /* Board Clock */
42*bd39050cSMarek Vasut /* XTAL_CLK : 33.33MHz */
43*bd39050cSMarek Vasut #define RCAR_XTAL_CLK		33333333u
44*bd39050cSMarek Vasut #define CONFIG_SYS_CLK_FREQ	RCAR_XTAL_CLK
45*bd39050cSMarek Vasut /* ch0to2 CPclk, ch3to11 S3D2_PEREclk, ch12to14 S3D2_RTclk */
46*bd39050cSMarek Vasut /* CPclk 16.66MHz, S3D2 133.33MHz , S3D4 66.66MHz          */
47*bd39050cSMarek Vasut #define CONFIG_CP_CLK_FREQ	(CONFIG_SYS_CLK_FREQ / 2)
48*bd39050cSMarek Vasut #define CONFIG_PLL1_CLK_FREQ	(CONFIG_SYS_CLK_FREQ * 192 / 2)
49*bd39050cSMarek Vasut #define CONFIG_S3D2_CLK_FREQ	(266666666u/2)
50*bd39050cSMarek Vasut #define CONFIG_S3D4_CLK_FREQ	(266666666u/4)
51*bd39050cSMarek Vasut 
52*bd39050cSMarek Vasut /* Generic Timer Definitions (use in assembler source) */
53*bd39050cSMarek Vasut #define COUNTER_FREQUENCY	0xFE502A	/* 16.66MHz from CPclk */
54*bd39050cSMarek Vasut 
55*bd39050cSMarek Vasut /* Generic Interrupt Controller Definitions */
56*bd39050cSMarek Vasut #define CONFIG_GICV2
57*bd39050cSMarek Vasut #define GICD_BASE	0xF1010000
58*bd39050cSMarek Vasut #define GICC_BASE	0xF1020000
59*bd39050cSMarek Vasut 
60*bd39050cSMarek Vasut /* CPLD SPI */
61*bd39050cSMarek Vasut #define CONFIG_CMD_SPI
62*bd39050cSMarek Vasut #define CONFIG_SOFT_SPI
63*bd39050cSMarek Vasut #define SPI_DELAY	udelay(0)
64*bd39050cSMarek Vasut #define SPI_SDA(val)	ulcb_softspi_sda(val)
65*bd39050cSMarek Vasut #define SPI_SCL(val)	ulcb_softspi_scl(val)
66*bd39050cSMarek Vasut #define SPI_READ	ulcb_softspi_read()
67*bd39050cSMarek Vasut #ifndef	__ASSEMBLY__
68*bd39050cSMarek Vasut void ulcb_softspi_sda(int);
69*bd39050cSMarek Vasut void ulcb_softspi_scl(int);
70*bd39050cSMarek Vasut unsigned char ulcb_softspi_read(void);
71*bd39050cSMarek Vasut #endif
72*bd39050cSMarek Vasut 
73*bd39050cSMarek Vasut /* i2c */
74*bd39050cSMarek Vasut #define CONFIG_SYS_I2C
75*bd39050cSMarek Vasut #define CONFIG_SYS_I2C_SH
76*bd39050cSMarek Vasut #define CONFIG_SYS_I2C_SLAVE		0x60
77*bd39050cSMarek Vasut #define CONFIG_SYS_I2C_SH_NUM_CONTROLLERS	1
78*bd39050cSMarek Vasut #define CONFIG_SYS_I2C_SH_SPEED0	400000
79*bd39050cSMarek Vasut #define CONFIG_SH_I2C_DATA_HIGH		4
80*bd39050cSMarek Vasut #define CONFIG_SH_I2C_DATA_LOW		5
81*bd39050cSMarek Vasut #define CONFIG_SH_I2C_CLOCK		10000000
82*bd39050cSMarek Vasut 
83*bd39050cSMarek Vasut #define CONFIG_SYS_I2C_POWERIC_ADDR	0x30
84*bd39050cSMarek Vasut 
85*bd39050cSMarek Vasut /* USB */
86*bd39050cSMarek Vasut #ifdef CONFIG_R8A7795
87*bd39050cSMarek Vasut #define CONFIG_USB_MAX_CONTROLLER_COUNT	3
88*bd39050cSMarek Vasut #else
89*bd39050cSMarek Vasut #define CONFIG_USB_MAX_CONTROLLER_COUNT	2
90*bd39050cSMarek Vasut #endif
91*bd39050cSMarek Vasut 
92*bd39050cSMarek Vasut /* SDHI */
93*bd39050cSMarek Vasut #define CONFIG_SH_SDHI_FREQ		200000000
94*bd39050cSMarek Vasut 
95*bd39050cSMarek Vasut /* Environment in eMMC, at the end of 2nd "boot sector" */
96*bd39050cSMarek Vasut #define CONFIG_ENV_OFFSET		(-CONFIG_ENV_SIZE)
97*bd39050cSMarek Vasut #define CONFIG_SYS_MMC_ENV_DEV		1
98*bd39050cSMarek Vasut #define CONFIG_SYS_MMC_ENV_PART		2
99*bd39050cSMarek Vasut 
100*bd39050cSMarek Vasut /* Module stop status bits */
101*bd39050cSMarek Vasut /* MFIS, SCIF1 */
102*bd39050cSMarek Vasut #define CONFIG_SMSTP2_ENA	0x00002040
103*bd39050cSMarek Vasut /* SCIF2 */
104*bd39050cSMarek Vasut #define CONFIG_SMSTP3_ENA	0x00000400
105*bd39050cSMarek Vasut /* INTC-AP, IRQC */
106*bd39050cSMarek Vasut #define CONFIG_SMSTP4_ENA	0x00000180
107*bd39050cSMarek Vasut 
108*bd39050cSMarek Vasut #endif /* __ULCB_H */
109