Merge branch 'master' of git://git.denx.de/u-boot-tegra
This commit is contained in:
commit
f812574e61
arch/arm
drivers
include/configs
@ -14,42 +14,35 @@
|
||||
i2c0 = "/i2c@7000d000";
|
||||
i2c1 = "/i2c@7000c000";
|
||||
i2c2 = "/i2c@7000c400";
|
||||
usb0 = "/usb@c5008000";
|
||||
usb1 = "/usb@c5000000";
|
||||
usb2 = "/usb@c5004000";
|
||||
mmc0 = "/sdhci@c8000600";
|
||||
usb0 = "/usb@c5000000";
|
||||
usb1 = "/usb@c5004000"; /* on-module only, for ASIX */
|
||||
usb2 = "/usb@c5008000";
|
||||
};
|
||||
|
||||
host1x@50000000 {
|
||||
status = "okay";
|
||||
dc@54200000 {
|
||||
status = "okay";
|
||||
rgb {
|
||||
status = "okay";
|
||||
nvidia,panel = <&lcd_panel>;
|
||||
display-timings {
|
||||
timing@0 {
|
||||
/* VESA VGA */
|
||||
clock-frequency = <25175000>;
|
||||
hactive = <640>;
|
||||
vactive = <480>;
|
||||
hback-porch = <48>;
|
||||
hfront-porch = <16>;
|
||||
hsync-len = <96>;
|
||||
vback-porch = <31>;
|
||||
vfront-porch = <11>;
|
||||
vsync-len = <2>;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
usb@c5000000 {
|
||||
statuc = "okay";
|
||||
dr_mode = "otg";
|
||||
};
|
||||
|
||||
usb@c5004000 {
|
||||
statuc = "okay";
|
||||
/* VBUS_LAN */
|
||||
nvidia,phy-reset-gpio = <&gpio TEGRA_GPIO(V, 1)
|
||||
GPIO_ACTIVE_LOW>;
|
||||
nvidia,vbus-gpio = <&gpio TEGRA_GPIO(BB, 1) GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
|
||||
usb@c5008000 {
|
||||
statuc = "okay";
|
||||
/* USBH_PEN */
|
||||
nvidia,vbus-gpio = <&gpio TEGRA_GPIO(W, 2) GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
|
||||
nand-controller@70008000 {
|
||||
nvidia,wp-gpios = <&gpio TEGRA_GPIO(S, 0) GPIO_ACTIVE_HIGH>;
|
||||
nvidia,width = <8>;
|
||||
@ -61,6 +54,10 @@
|
||||
};
|
||||
};
|
||||
|
||||
pwm@7000a000 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
/*
|
||||
* GEN1_I2C: I2C_SDA/SCL on SODIMM pin 194/196 (e.g. RTC on carrier
|
||||
* board)
|
||||
@ -86,12 +83,45 @@
|
||||
clock-frequency = <100000>;
|
||||
};
|
||||
|
||||
/* EHCI instance 0: USB1_DP/N -> USBC_P/N */
|
||||
usb@c5000000 {
|
||||
status = "okay";
|
||||
dr_mode = "otg";
|
||||
};
|
||||
|
||||
/* EHCI instance 1: ULPI -> USB3340 -> AX88772B */
|
||||
usb@c5004000 {
|
||||
status = "okay";
|
||||
/* VBUS_LAN */
|
||||
nvidia,phy-reset-gpio = <&gpio TEGRA_GPIO(V, 1) GPIO_ACTIVE_HIGH>;
|
||||
nvidia,vbus-gpio = <&gpio TEGRA_GPIO(BB, 1) GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
|
||||
/* EHCI instance 2: USB3_DP/N -> USBH_P/N */
|
||||
usb@c5008000 {
|
||||
status = "okay";
|
||||
/* USBH_PEN */
|
||||
nvidia,vbus-gpio = <&gpio TEGRA_GPIO(W, 2) GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
|
||||
sdhci@c8000600 {
|
||||
status = "okay";
|
||||
bus-width = <4>;
|
||||
cd-gpios = <&gpio TEGRA_GPIO(C, 7) GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
|
||||
backlight: backlight {
|
||||
compatible = "pwm-backlight";
|
||||
|
||||
brightness-levels = <255 128 64 32 16 8 4 0>;
|
||||
default-brightness-level = <6>;
|
||||
/* BL_ON */
|
||||
enable-gpios = <&gpio TEGRA_GPIO(T, 4) GPIO_ACTIVE_HIGH>;
|
||||
power-supply = <®_3v3>;
|
||||
/* PWM<A> */
|
||||
pwms = <&pwm 0 5000000>;
|
||||
};
|
||||
|
||||
clocks {
|
||||
compatible = "simple-bus";
|
||||
#address-cells = <1>;
|
||||
@ -105,25 +135,28 @@
|
||||
};
|
||||
};
|
||||
|
||||
pwm: pwm@7000a000 {
|
||||
status = "okay";
|
||||
lcd_panel: panel {
|
||||
/*
|
||||
* edt,et057090dhu: EDT 5.7" LCD TFT
|
||||
* edt,et070080dh6: EDT 7.0" LCD TFT
|
||||
*/
|
||||
compatible = "edt,et057090dhu", "simple-panel";
|
||||
|
||||
backlight = <&backlight>;
|
||||
};
|
||||
|
||||
lcd_panel: panel {
|
||||
clock = <25175000>;
|
||||
xres = <640>;
|
||||
yres = <480>;
|
||||
left-margin = <48>; /* horizontal back porch */
|
||||
right-margin = <16>; /* horizontal front porch */
|
||||
hsync-len = <96>;
|
||||
lower-margin = <11>; /* vertical front porch */
|
||||
upper-margin = <31>; /* vertical back porch */
|
||||
vsync-len = <2>;
|
||||
hsync-active-high;
|
||||
vsync-active-high;
|
||||
nvidia,bits-per-pixel = <16>;
|
||||
nvidia,pwm = <&pwm 0 0>;
|
||||
nvidia,backlight-enable-gpios = <&gpio TEGRA_GPIO(T, 4) GPIO_ACTIVE_HIGH>;
|
||||
nvidia,panel-timings = <0 0 0 0>;
|
||||
regulators {
|
||||
compatible = "simple-bus";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
reg_3v3: regulator@0 {
|
||||
compatible = "regulator-fixed";
|
||||
reg = <0>;
|
||||
regulator-name = "+V3.3";
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
@ -23,7 +23,7 @@ static struct mm_region tegra_mem_map[] = {
|
||||
}, {
|
||||
.virt = 0x80000000UL,
|
||||
.phys = 0x80000000UL,
|
||||
.size = 0xff80000000UL,
|
||||
.size = 0x80000000UL,
|
||||
.attrs = PTE_BLOCK_MEMTYPE(MT_NORMAL) |
|
||||
PTE_BLOCK_INNER_SHARE
|
||||
}, {
|
||||
|
@ -37,11 +37,15 @@ static int fixed_regulator_ofdata_to_platdata(struct udevice *dev)
|
||||
/* Set type to fixed */
|
||||
uc_pdata->type = REGULATOR_TYPE_FIXED;
|
||||
|
||||
/* Get fixed regulator gpio desc */
|
||||
/* Get fixed regulator optional enable GPIO desc */
|
||||
gpio = &dev_pdata->gpio;
|
||||
ret = gpio_request_by_name(dev, "gpio", 0, gpio, GPIOD_IS_OUT);
|
||||
if (ret)
|
||||
debug("Fixed regulator gpio - not found! Error: %d", ret);
|
||||
if (ret) {
|
||||
debug("Fixed regulator optional enable GPIO - not found! Error: %d\n",
|
||||
ret);
|
||||
if (ret != -ENOENT)
|
||||
return ret;
|
||||
}
|
||||
|
||||
/* Get optional ramp up delay */
|
||||
dev_pdata->startup_delay_us = fdtdec_get_uint(gd->fdt_blob,
|
||||
@ -87,8 +91,9 @@ static bool fixed_regulator_get_enable(struct udevice *dev)
|
||||
{
|
||||
struct fixed_regulator_platdata *dev_pdata = dev_get_platdata(dev);
|
||||
|
||||
/* Enable GPIO is optional */
|
||||
if (!dev_pdata->gpio.dev)
|
||||
return false;
|
||||
return true;
|
||||
|
||||
return dm_gpio_get_value(&dev_pdata->gpio);
|
||||
}
|
||||
@ -98,8 +103,12 @@ static int fixed_regulator_set_enable(struct udevice *dev, bool enable)
|
||||
struct fixed_regulator_platdata *dev_pdata = dev_get_platdata(dev);
|
||||
int ret;
|
||||
|
||||
if (!dev_pdata->gpio.dev)
|
||||
return -ENOSYS;
|
||||
/* Enable GPIO is optional */
|
||||
if (!dev_pdata->gpio.dev) {
|
||||
if (!enable)
|
||||
return -ENOSYS;
|
||||
return 0;
|
||||
}
|
||||
|
||||
ret = dm_gpio_set_value(&dev_pdata->gpio, enable);
|
||||
if (ret) {
|
||||
|
@ -42,7 +42,7 @@ static int simple_panel_ofdata_to_platdata(struct udevice *dev)
|
||||
ret = uclass_get_device_by_phandle(UCLASS_REGULATOR, dev,
|
||||
"power-supply", &priv->reg);
|
||||
if (ret) {
|
||||
debug("%s: Warning: cnnot get power supply: ret=%d\n",
|
||||
debug("%s: Warning: cannot get power supply: ret=%d\n",
|
||||
__func__, ret);
|
||||
if (ret != -ENOENT)
|
||||
return ret;
|
||||
|
@ -10,7 +10,9 @@
|
||||
|
||||
#ifndef CONFIG_SPL_BUILD
|
||||
/* USB gadget mode support*/
|
||||
#ifndef CONFIG_TEGRA20
|
||||
#define CONFIG_CI_UDC_HAS_HOSTPC
|
||||
#endif
|
||||
/* USB mass storage protocol */
|
||||
#define CONFIG_USB_FUNCTION_MASS_STORAGE
|
||||
/* DFU protocol */
|
||||
|
Loading…
Reference in New Issue
Block a user