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