mirror of
https://github.com/AsahiLinux/u-boot
synced 2024-12-16 16:23:14 +00:00
b1d9554e05
This patch adds support for the following I2C devices connected to I2C bus 0 on the Octeon EBB7304: - Dallas DS1337 RTC - TLV EEPROM Signed-off-by: Aaron Williams <awilliams@marvell.com> Signed-off-by: Stefan Roese <sr@denx.de> Cc: Chandrakala Chavva <cchavva@marvell.com> Cc: Daniel Schwierzeck <daniel.schwierzeck@gmail.com>
203 lines
4.4 KiB
Text
203 lines
4.4 KiB
Text
// SPDX-License-Identifier: GPL-2.0+
|
|
/*
|
|
* Marvell / Cavium Inc. EVB CN7300
|
|
*/
|
|
|
|
/dts-v1/;
|
|
|
|
#include "mrvl,cn73xx.dtsi"
|
|
#include <dt-bindings/gpio/gpio.h>
|
|
|
|
/ {
|
|
model = "cavium,ebb7304";
|
|
compatible = "cavium,ebb7304";
|
|
|
|
aliases {
|
|
mmc0 = &mmc0;
|
|
mmc1 = &mmc1;
|
|
serial0 = &uart0;
|
|
spi0 = &spi;
|
|
};
|
|
|
|
regulators {
|
|
compatible = "simple-bus";
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
|
|
/* Power on GPIO 8, active high */
|
|
reg_mmc_3v3: regulator@0 {
|
|
compatible = "regulator-fixed";
|
|
reg = <0>;
|
|
regulator-name = "mmc-3v3";
|
|
regulator-min-microvolt = <3300000>;
|
|
regulator-max-microvolt = <3300000>;
|
|
gpio = <&gpio 8 GPIO_ACTIVE_HIGH>;
|
|
enable-active-high;
|
|
};
|
|
};
|
|
|
|
chosen {
|
|
stdout-path = &uart0;
|
|
};
|
|
};
|
|
|
|
&bootbus {
|
|
/*
|
|
* bootbus CS0 for CFI flash is remapped (0x1fc0.0000 -> 1f40.0000)
|
|
* as the initial size is too small for the 8MiB flash device
|
|
*/
|
|
ranges = <0 0 0 0x1f400000 0xc00000>,
|
|
<1 0 0x10000 0x10000000 0>,
|
|
<2 0 0x10000 0x20000000 0>,
|
|
<3 0 0x10000 0x30000000 0>,
|
|
<4 0 0 0x1d020000 0x10000>,
|
|
<5 0 0x10000 0x50000000 0>,
|
|
<6 0 0x10000 0x60000000 0>,
|
|
<7 0 0x10000 0x70000000 0>;
|
|
|
|
cavium,cs-config@0 {
|
|
compatible = "cavium,octeon-3860-bootbus-config";
|
|
cavium,cs-index = <0>;
|
|
cavium,t-adr = <10>;
|
|
cavium,t-ce = <50>;
|
|
cavium,t-oe = <50>;
|
|
cavium,t-we = <35>;
|
|
cavium,t-rd-hld = <25>;
|
|
cavium,t-wr-hld = <35>;
|
|
cavium,t-pause = <0>;
|
|
cavium,t-wait = <50>;
|
|
cavium,t-page = <30>;
|
|
cavium,t-rd-dly = <0>;
|
|
cavium,page-mode = <1>;
|
|
cavium,pages = <8>;
|
|
cavium,bus-width = <8>;
|
|
};
|
|
|
|
cavium,cs-config@4 {
|
|
compatible = "cavium,octeon-3860-bootbus-config";
|
|
cavium,cs-index = <4>;
|
|
cavium,t-adr = <10>;
|
|
cavium,t-ce = <10>;
|
|
cavium,t-oe = <160>;
|
|
cavium,t-we = <100>;
|
|
cavium,t-rd-hld = <10>;
|
|
cavium,t-wr-hld = <0>;
|
|
cavium,t-pause = <50>;
|
|
cavium,t-wait = <50>;
|
|
cavium,t-page = <10>;
|
|
cavium,t-rd-dly = <10>;
|
|
cavium,pages = <0>;
|
|
cavium,bus-width = <8>;
|
|
};
|
|
|
|
flash0: nor@0,0 {
|
|
compatible = "cfi-flash";
|
|
reg = <0 0 0x800000>;
|
|
#address-cells = <1>;
|
|
#size-cells = <1>;
|
|
partition@0 {
|
|
label = "bootloader";
|
|
reg = <0 0x340000>;
|
|
read-only;
|
|
};
|
|
partition@300000 {
|
|
label = "storage";
|
|
reg = <0x340000 0x4be000>;
|
|
};
|
|
partition@7fe000 {
|
|
label = "environment";
|
|
reg = <0x7fe000 0x2000>;
|
|
read-only;
|
|
};
|
|
};
|
|
};
|
|
|
|
&i2c0 {
|
|
u-boot,dm-pre-reloc; /* Needed early for DDR SPD EEPROM */
|
|
clock-frequency = <100000>;
|
|
|
|
rtc@68 {
|
|
compatible = "dallas,ds1337";
|
|
reg = <0x68>;
|
|
};
|
|
|
|
tlv-eeprom@56 {
|
|
compatible = "atmel,24c256", "microchip,24lc256";
|
|
reg = <0x56>;
|
|
pagesize = <64>;
|
|
};
|
|
};
|
|
|
|
&i2c1 {
|
|
u-boot,dm-pre-reloc; /* Needed early for DDR SPD EEPROM */
|
|
clock-frequency = <100000>;
|
|
};
|
|
|
|
&spi {
|
|
flash@0 {
|
|
compatible = "micron,n25q128a11", "jedec,spi-nor";
|
|
spi-max-frequency = <2000000>;
|
|
reg = <0>;
|
|
};
|
|
};
|
|
|
|
/* USB 0 */
|
|
&usb0 {
|
|
status = "okay";
|
|
/*
|
|
* Power is specified by three parts:
|
|
* 1) GPIO handle (must be &gpio)
|
|
* 2) GPIO pin number
|
|
* 3) Active high (0) or active low (1)
|
|
*/
|
|
power = <&gpio 20 0>;
|
|
};
|
|
|
|
/* USB 1 */
|
|
&usb1 {
|
|
status = "okay";
|
|
/*
|
|
* Power is specified by three parts:
|
|
* 1) GPIO handle (must be &gpio)
|
|
* 2) GPIO pin number
|
|
* 3) Active high (0) or active low (1)
|
|
*/
|
|
power = <&gpio 21 0>;
|
|
};
|
|
|
|
&mmc {
|
|
status = "okay";
|
|
|
|
/* The board has two MMC slots
|
|
* If both are occupied, the speed must be reduced,
|
|
* as extra data-line load increases slew time,
|
|
* and dat-skew adjustment does not help significantly.
|
|
*/
|
|
mmc0: mmc-slot@0 {
|
|
compatible = "cavium,octeon-6130-mmc-slot", "mmc-slot";
|
|
reg = <0>;
|
|
vqmmc-supply = <®_mmc_3v3>;
|
|
voltage-ranges = <3300 3300>;
|
|
//spi-max-frequency = <52000000>; // just one
|
|
spi-max-frequency = <37000000>; // both slots
|
|
/* bus width can be 1, 4 or 8 */
|
|
bus-width = <8>; /* new std property */
|
|
cavium,bus-max-width = <8>; /* custom property */
|
|
wp-gpios = <&gpio 22 0>; /* active high */
|
|
cd-gpios = <&gpio 23 1>; /* active low */
|
|
};
|
|
|
|
mmc1: mmc-slot@1 {
|
|
compatible = "cavium,octeon-6130-mmc-slot", "mmc-slot";
|
|
reg = <1>;
|
|
vqmmc-supply = <®_mmc_3v3>;
|
|
voltage-ranges = <3300 3300>;
|
|
//spi-max-frequency = <52000000>; // just one
|
|
spi-max-frequency = <37000000>; // both slots
|
|
/* bus width can be 1, 4 or 8 */
|
|
bus-width = <8>; /* new std property */
|
|
cavium,bus-max-width = <8>; /* custom property */
|
|
wp-gpios = <&gpio 24 0>; /* active high */
|
|
cd-gpios = <&gpio 25 1>; /* active low */
|
|
};
|
|
};
|