Re: [U-Boot] UBI Fastmap seems to be broken
Hello Tony, please add me to Cc, I am little bit under water, and it was just luck, that I found this EMail ;-) Am 22.03.2016 um 13:39 schrieb Benzig, Tony: Hello together, I've been working on an AM335x based board with a NAND Flash attached on the GPMI Interface. I've been using U-boot v2015.01 with the latest ubi patches. Please don't ask why I'm not using the latest U-Boot Version, it's due to some company conventions. That was my first thought ;-) So my ubi and ubifs drivers are the same as the drivers on the current U-Boot master. You should also look, that mtd and your nand driver is the same as in mainline. I also added this patch from Heiko Schocher [U-Boot] [PATCH] mtd, ubi: set free_count to zero before walking through erase list: (http://lists.denx.de/pipermail/u-boot/2016-February/244472.html) Without using this patch, ubi is trying to write on pages which are not empty and this will directly lead to unrecoverable ecc errors. Yes, but I think, this patch needs more investigation why this happens .. Nevertheless, ubi is working so far but once I attach my ubi the second time (this will normally happen via fastmap), I can't mount my UBIFS anymore. Please see the log below. Hmm.. I have such tests running for current mainline, they show no errors ... It looks like there is something wrong with the fastmap anchors, because if I disable "CONFIG_MTD_UBI_FASTMAP_AUTOCONVERT" and let Linux do the conversion, everything is fine until U-Boot is updating the anchors. What Linux version do you use. I did the UBI/UBIFS sync with Linux 4.2, as UBI Fastmap is broken/buggy in Linux version before! So, could you help me to analyse this strange behaviour or is it already known? I am not aware of it ... U-Boot# nand erase.part System device 0 offset 0xa0, size 0x1f60 Erasing at 0x1ffe -- 100% complete. OK U-Boot# usb start (Re)start USB... USB0: scanning bus 0 for devices... 1 USB Device(s) found scanning usb for storage devices... 1 Storage Device(s) found U-Boot# fatload usb 0:1 0x8200 update/rootfs.ubi 2097152 bytes read in 1300 ms (1.5 MiB/s) U-Boot# nand write 0x8200 0xA0 0x20 NAND write: device 0 offset 0xa0, size 0x20 2097152 bytes written: OK U-Boot# ubi part System ubi0: default fastmap pool size: 200 ubi0: default fastmap WL pool size: 100 ubi0: attaching mtd1 ubi0: scanning is finished ubi0: attached mtd1 (name "mtd=2", size 502 MiB) ubi0: PEB size: 131072 bytes (128 KiB), LEB size: 126976 bytes ubi0: min./max. I/O unit sizes: 2048/2048, sub-page size 2048 ubi0: VID header offset: 2048 (aligned 2048), data offset: 4096 ubi0: good PEBs: 4016, bad PEBs: 0, corrupted PEBs: 0 ubi0: user volume: 1, internal volumes: 1, max. volumes count: 128 ubi0: max/mean erase counter: 1/0, WL threshold: 4096, image sequence number: 2042447318 ubi0: available PEBs: 3896, total reserved PEBs: 120, PEBs reserved for bad PEB handling: 80 U-Boot# ubifsmount ubi:hwi UBIFS (ubi0:0): UBIFS: mounted UBI device 0, volume 0, name "hwi", R/O mode UBIFS (ubi0:0): LEB size: 126976 bytes (124 KiB), min./max. I/O unit sizes: 2048 bytes/2048 bytes UBIFS (ubi0:0): FS size: 3047424 bytes (2 MiB, 24 LEBs), journal size 1142785 bytes (1 MiB, 8 LEBs) UBIFS (ubi0:0): reserved for root: 0 bytes (0 KiB) UBIFS (ubi0:0): media format: w4/r0 (latest is w4/r0), UUID 8db76d20, small LPT model U-Boot# ubi part System Unmounting UBIFS volume hwi! ubi0 error: ubi_detach_mtd_dev: ubi0 reference count 1, destroy anyway ubi0: detaching mtd1 ubi0: mtd1 is detached ubi0: default fastmap pool size: 200 ubi0: default fastmap WL pool size: 100 ubi0: attaching mtd1 ubi0: attached by fastmap Here a fastmap is found ... looks good. ubi0: fastmap pool size: 200 ubi0: fastmap WL pool size: 100 ubi0: attached mtd1 (name "mtd=2", size 502 MiB) ubi0: PEB size: 131072 bytes (128 KiB), LEB size: 126976 bytes ubi0: min./max. I/O unit sizes: 2048/2048, sub-page size 2048 ubi0: VID header offset: 2048 (aligned 2048), data offset: 4096 ubi0: good PEBs: 4016, bad PEBs: 0, corrupted PEBs: 0 ubi0: user volume: 1, internal volumes: 1, max. volumes count: 128 ubi0: max/mean erase counter: 2/0, WL threshold: 4096, image sequence number: 2042447318 ubi0: available PEBs: 3896, total reserved PEBs: 120, PEBs reserved for bad PEB handling: 80 Looks good ... U-Boot# ubifsmount ubi:hwi UBIFS error (ubi0:0 pid 0): mount_ubifs: can't format empty UBI volume: read-only mount Error reading superblock on volume 'ubi:hwi' errno=-30! ubifsmount - mount UBIFS volume Usage: ubifsmount - mount 'volume-name' volume No real idea, whats happen here ... you have to debug into it, sorry. bye, Heiko -- DENX Software Engineering GmbH, Managing Director: Wolfgang Denk HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH 5/6 v2] i2c: designware_i2c: Add DM support
This patch adds DM support to the designware I2C driver. It currently supports DM and the legacy I2C support. The legacy support should be removed, once all platforms using it have DM enabled. Signed-off-by: Stefan RoeseCc: Simon Glass Reviewed-by: Bin Meng Cc: Marek Vasut Cc: Heiko Schocher --- v2: - Fix typos in comments - Use single line comments where appropriate - Added Reviewed-by from Bin drivers/i2c/designware_i2c.c | 149 +++ 1 file changed, 123 insertions(+), 26 deletions(-) diff --git a/drivers/i2c/designware_i2c.c b/drivers/i2c/designware_i2c.c index 8dd1de9..886897c 100644 --- a/drivers/i2c/designware_i2c.c +++ b/drivers/i2c/designware_i2c.c @@ -6,10 +6,15 @@ */ #include +#include #include #include #include "designware_i2c.h" +struct dw_i2c { + struct i2c_regs *regs; +}; + static void dw_i2c_enable(struct i2c_regs *i2c_base, bool enable) { int timeout = 100; @@ -293,6 +298,36 @@ static int __dw_i2c_write(struct i2c_regs *i2c_base, u8 dev, uint addr, return i2c_xfer_finish(i2c_base); } +/* + * __dw_i2c_init - Init function + * @speed: required i2c speed + * @slaveaddr: slave address for the device + * + * Initialization function. + */ +static void __dw_i2c_init(struct i2c_regs *i2c_base, int speed, int slaveaddr) +{ + /* Disable i2c */ + dw_i2c_enable(i2c_base, false); + + writel((IC_CON_SD | IC_CON_SPD_FS | IC_CON_MM), _base->ic_con); + writel(IC_RX_TL, _base->ic_rx_tl); + writel(IC_TX_TL, _base->ic_tx_tl); + writel(IC_STOP_DET, _base->ic_intr_mask); +#ifndef CONFIG_DM_I2C + __dw_i2c_set_bus_speed(i2c_base, speed); + writel(slaveaddr, _base->ic_sar); +#endif + + /* Enable i2c */ + dw_i2c_enable(i2c_base, true); +} + +#ifndef CONFIG_DM_I2C +/* + * The legacy I2C functions. These need to get removed once + * all users of this driver are converted to DM. + */ static struct i2c_regs *i2c_get_base(struct i2c_adapter *adap) { switch (adap->hwadapnr) { @@ -324,30 +359,9 @@ static unsigned int dw_i2c_set_bus_speed(struct i2c_adapter *adap, return __dw_i2c_set_bus_speed(i2c_get_base(adap), speed); } -/* - * i2c_init - Init function - * @speed: required i2c speed - * @slaveaddr: slave address for the device - * - * Initialization function. - */ -static void dw_i2c_init(struct i2c_adapter *adap, int speed, - int slaveaddr) +static void dw_i2c_init(struct i2c_adapter *adap, int speed, int slaveaddr) { - struct i2c_regs *i2c_base = i2c_get_base(adap); - - /* Disable i2c */ - dw_i2c_enable(i2c_base, false); - - writel((IC_CON_SD | IC_CON_SPD_FS | IC_CON_MM), _base->ic_con); - writel(IC_RX_TL, _base->ic_rx_tl); - writel(IC_TX_TL, _base->ic_tx_tl); - dw_i2c_set_bus_speed(adap, speed); - writel(IC_STOP_DET, _base->ic_intr_mask); - writel(slaveaddr, _base->ic_sar); - - /* Enable i2c */ - dw_i2c_enable(i2c_base, true); + __dw_i2c_init(i2c_get_base(adap), speed, slaveaddr); } static int dw_i2c_read(struct i2c_adapter *adap, u8 dev, uint addr, @@ -362,9 +376,7 @@ static int dw_i2c_write(struct i2c_adapter *adap, u8 dev, uint addr, return __dw_i2c_write(i2c_get_base(adap), dev, addr, alen, buffer, len); } -/* - * i2c_probe - Probe the i2c chip - */ +/* dw_i2c_probe - Probe the i2c chip */ static int dw_i2c_probe(struct i2c_adapter *adap, u8 dev) { struct i2c_regs *i2c_base = i2c_get_base(adap); @@ -402,3 +414,88 @@ U_BOOT_I2C_ADAP_COMPLETE(dw_3, dw_i2c_init, dw_i2c_probe, dw_i2c_read, dw_i2c_write, dw_i2c_set_bus_speed, CONFIG_SYS_I2C_SPEED3, CONFIG_SYS_I2C_SLAVE3, 3) #endif + +#else /* CONFIG_DM_I2C */ +/* The DM I2C functions */ + +static int designware_i2c_xfer(struct udevice *bus, struct i2c_msg *msg, + int nmsgs) +{ + struct dw_i2c *i2c = dev_get_priv(bus); + int ret; + + debug("i2c_xfer: %d messages\n", nmsgs); + for (; nmsgs > 0; nmsgs--, msg++) { + debug("i2c_xfer: chip=0x%x, len=0x%x\n", msg->addr, msg->len); + if (msg->flags & I2C_M_RD) { + ret = __dw_i2c_read(i2c->regs, msg->addr, 0, 0, + msg->buf, msg->len); + } else { + ret = __dw_i2c_write(i2c->regs, msg->addr, 0, 0, +msg->buf, msg->len); + } + if (ret) { + debug("i2c_write: error sending\n"); + return -EREMOTEIO; + } + } + + return 0; +} + +static int designware_i2c_set_bus_speed(struct udevice *bus, unsigned int speed) +{ + struct dw_i2c *i2c = dev_get_priv(bus); + + return
[U-Boot] [PATCH 3/6 v2] i2c: designware_i2c: Integrate set_speed() into dw_i2c_set_bus_speed()
Integrating set_speed() into dw_i2c_set_bus_speed() will make the conversion to DM easier for this driver. Signed-off-by: Stefan RoeseCc: Simon Glass Reviewed-by: Bin Meng Cc: Marek Vasut Cc: Heiko Schocher --- v2: - Added Reviewed-by from Bin drivers/i2c/designware_i2c.c | 37 + 1 file changed, 13 insertions(+), 24 deletions(-) diff --git a/drivers/i2c/designware_i2c.c b/drivers/i2c/designware_i2c.c index 2b0c8cb..aac56a7 100644 --- a/drivers/i2c/designware_i2c.c +++ b/drivers/i2c/designware_i2c.c @@ -55,16 +55,25 @@ static void dw_i2c_enable(struct i2c_regs *i2c_base, bool enable) } /* - * set_speed - Set the i2c speed mode (standard, high, fast) - * @i2c_spd: required i2c speed mode + * i2c_set_bus_speed - Set the i2c speed + * @speed: required i2c speed * - * Set the i2c speed mode (standard, high, fast) + * Set the i2c speed. */ -static void set_speed(struct i2c_adapter *adap, int i2c_spd) +static unsigned int dw_i2c_set_bus_speed(struct i2c_adapter *adap, +unsigned int speed) { struct i2c_regs *i2c_base = i2c_get_base(adap); unsigned int cntl; unsigned int hcnt, lcnt; + int i2c_spd; + + if (speed >= I2C_MAX_SPEED) + i2c_spd = IC_SPEED_MODE_MAX; + else if (speed >= I2C_FAST_SPEED) + i2c_spd = IC_SPEED_MODE_FAST; + else + i2c_spd = IC_SPEED_MODE_STANDARD; /* to set speed cltr must be disabled */ dw_i2c_enable(i2c_base, false); @@ -102,27 +111,7 @@ static void set_speed(struct i2c_adapter *adap, int i2c_spd) /* Enable back i2c now speed set */ dw_i2c_enable(i2c_base, true); -} - -/* - * i2c_set_bus_speed - Set the i2c speed - * @speed: required i2c speed - * - * Set the i2c speed. - */ -static unsigned int dw_i2c_set_bus_speed(struct i2c_adapter *adap, -unsigned int speed) -{ - int i2c_spd; - - if (speed >= I2C_MAX_SPEED) - i2c_spd = IC_SPEED_MODE_MAX; - else if (speed >= I2C_FAST_SPEED) - i2c_spd = IC_SPEED_MODE_FAST; - else - i2c_spd = IC_SPEED_MODE_STANDARD; - set_speed(adap, i2c_spd); adap->speed = speed; return 0; -- 2.7.4 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH 4/6 v2] i2c: designware_i2c: Prepare for DM driver conversion
This patch prepares the designware I2C driver for the DM conversion. This is mainly done by removing struct i2c_adapter from the functions that shall be used by the DM driver version as well. Signed-off-by: Stefan RoeseCc: Simon Glass Reviewed-by: Bin Meng Cc: Marek Vasut Cc: Heiko Schocher --- v2: - Added Reviewed-by from Bin drivers/i2c/designware_i2c.c | 173 ++- 1 file changed, 90 insertions(+), 83 deletions(-) diff --git a/drivers/i2c/designware_i2c.c b/drivers/i2c/designware_i2c.c index aac56a7..8dd1de9 100644 --- a/drivers/i2c/designware_i2c.c +++ b/drivers/i2c/designware_i2c.c @@ -10,30 +10,6 @@ #include #include "designware_i2c.h" -static struct i2c_regs *i2c_get_base(struct i2c_adapter *adap) -{ - switch (adap->hwadapnr) { -#if CONFIG_SYS_I2C_BUS_MAX >= 4 - case 3: - return (struct i2c_regs *)CONFIG_SYS_I2C_BASE3; -#endif -#if CONFIG_SYS_I2C_BUS_MAX >= 3 - case 2: - return (struct i2c_regs *)CONFIG_SYS_I2C_BASE2; -#endif -#if CONFIG_SYS_I2C_BUS_MAX >= 2 - case 1: - return (struct i2c_regs *)CONFIG_SYS_I2C_BASE1; -#endif - case 0: - return (struct i2c_regs *)CONFIG_SYS_I2C_BASE; - default: - printf("Wrong I2C-adapter number %d\n", adap->hwadapnr); - } - - return NULL; -} - static void dw_i2c_enable(struct i2c_regs *i2c_base, bool enable) { int timeout = 100; @@ -60,10 +36,9 @@ static void dw_i2c_enable(struct i2c_regs *i2c_base, bool enable) * * Set the i2c speed. */ -static unsigned int dw_i2c_set_bus_speed(struct i2c_adapter *adap, -unsigned int speed) +static unsigned int __dw_i2c_set_bus_speed(struct i2c_regs *i2c_base, + unsigned int speed) { - struct i2c_regs *i2c_base = i2c_get_base(adap); unsigned int cntl; unsigned int hcnt, lcnt; int i2c_spd; @@ -112,47 +87,17 @@ static unsigned int dw_i2c_set_bus_speed(struct i2c_adapter *adap, /* Enable back i2c now speed set */ dw_i2c_enable(i2c_base, true); - adap->speed = speed; - return 0; } /* - * i2c_init - Init function - * @speed: required i2c speed - * @slaveaddr: slave address for the device - * - * Initialization function. - */ -static void dw_i2c_init(struct i2c_adapter *adap, int speed, - int slaveaddr) -{ - struct i2c_regs *i2c_base = i2c_get_base(adap); - - /* Disable i2c */ - dw_i2c_enable(i2c_base, false); - - writel((IC_CON_SD | IC_CON_SPD_FS | IC_CON_MM), _base->ic_con); - writel(IC_RX_TL, _base->ic_rx_tl); - writel(IC_TX_TL, _base->ic_tx_tl); - dw_i2c_set_bus_speed(adap, speed); - writel(IC_STOP_DET, _base->ic_intr_mask); - writel(slaveaddr, _base->ic_sar); - - /* Enable i2c */ - dw_i2c_enable(i2c_base, true); -} - -/* * i2c_setaddress - Sets the target slave address * @i2c_addr: target i2c address * * Sets the target slave address. */ -static void i2c_setaddress(struct i2c_adapter *adap, unsigned int i2c_addr) +static void i2c_setaddress(struct i2c_regs *i2c_base, unsigned int i2c_addr) { - struct i2c_regs *i2c_base = i2c_get_base(adap); - /* Disable i2c */ dw_i2c_enable(i2c_base, false); @@ -167,10 +112,8 @@ static void i2c_setaddress(struct i2c_adapter *adap, unsigned int i2c_addr) * * Flushes the i2c RX FIFO */ -static void i2c_flush_rxfifo(struct i2c_adapter *adap) +static void i2c_flush_rxfifo(struct i2c_regs *i2c_base) { - struct i2c_regs *i2c_base = i2c_get_base(adap); - while (readl(_base->ic_status) & IC_STATUS_RFNE) readl(_base->ic_cmd_data); } @@ -180,9 +123,8 @@ static void i2c_flush_rxfifo(struct i2c_adapter *adap) * * Waits for bus busy */ -static int i2c_wait_for_bb(struct i2c_adapter *adap) +static int i2c_wait_for_bb(struct i2c_regs *i2c_base) { - struct i2c_regs *i2c_base = i2c_get_base(adap); unsigned long start_time_bb = get_timer(0); while ((readl(_base->ic_status) & IC_STATUS_MA) || @@ -196,15 +138,13 @@ static int i2c_wait_for_bb(struct i2c_adapter *adap) return 0; } -static int i2c_xfer_init(struct i2c_adapter *adap, uchar chip, uint addr, +static int i2c_xfer_init(struct i2c_regs *i2c_base, uchar chip, uint addr, int alen) { - struct i2c_regs *i2c_base = i2c_get_base(adap); - - if (i2c_wait_for_bb(adap)) + if (i2c_wait_for_bb(i2c_base)) return 1; - i2c_setaddress(adap, chip); + i2c_setaddress(i2c_base, chip); while (alen) { alen--; /* high byte address going out first */ @@ -214,9 +154,8 @@ static int i2c_xfer_init(struct i2c_adapter *adap, uchar chip, uint addr,
[U-Boot] [PATCH 6/6 v2] i2c: designware_i2c: Add support for PCI(e) based I2C cores (x86)
This patch adds support for the PCI(e) based I2C cores. Which can be found for example on the Intel Bay Trail SoC. It has 7 I2C controllers implemented as PCI devices. This patch also adds the fixed values for the timing registers for BayTrail which are taken from the Linux designware I2C driver. Signed-off-by: Stefan RoeseCc: Simon Glass Cc: Bin Meng Cc: Marek Vasut Cc: Heiko Schocher --- v2: - Use device_is_on_pci_bus(dev) in designware_i2c_probe() drivers/i2c/designware_i2c.c | 131 +++ 1 file changed, 119 insertions(+), 12 deletions(-) diff --git a/drivers/i2c/designware_i2c.c b/drivers/i2c/designware_i2c.c index 886897c..23c5985 100644 --- a/drivers/i2c/designware_i2c.c +++ b/drivers/i2c/designware_i2c.c @@ -8,11 +8,32 @@ #include #include #include +#include #include #include "designware_i2c.h" +struct dw_scl_sda_cfg { + u32 ss_hcnt; + u32 fs_hcnt; + u32 ss_lcnt; + u32 fs_lcnt; + u32 sda_hold; +}; + +#ifdef CONFIG_X86 +/* BayTrail HCNT/LCNT/SDA hold time */ +static struct dw_scl_sda_cfg byt_config = { + .ss_hcnt = 0x200, + .fs_hcnt = 0x55, + .ss_lcnt = 0x200, + .fs_lcnt = 0x99, + .sda_hold = 0x6, +}; +#endif + struct dw_i2c { struct i2c_regs *regs; + struct dw_scl_sda_cfg *scl_sda_cfg; }; static void dw_i2c_enable(struct i2c_regs *i2c_base, bool enable) @@ -42,6 +63,7 @@ static void dw_i2c_enable(struct i2c_regs *i2c_base, bool enable) * Set the i2c speed. */ static unsigned int __dw_i2c_set_bus_speed(struct i2c_regs *i2c_base, + struct dw_scl_sda_cfg *scl_sda_cfg, unsigned int speed) { unsigned int cntl; @@ -61,34 +83,55 @@ static unsigned int __dw_i2c_set_bus_speed(struct i2c_regs *i2c_base, cntl = (readl(_base->ic_con) & (~IC_CON_SPD_MSK)); switch (i2c_spd) { +#ifndef CONFIG_X86 /* No High-speed for BayTrail yet */ case IC_SPEED_MODE_MAX: - cntl |= IC_CON_SPD_HS; - hcnt = (IC_CLK * MIN_HS_SCL_HIGHTIME) / NANO_TO_MICRO; + cntl |= IC_CON_SPD_SS; + if (scl_sda_cfg) { + hcnt = scl_sda_cfg->fs_hcnt; + lcnt = scl_sda_cfg->fs_lcnt; + } else { + hcnt = (IC_CLK * MIN_HS_SCL_HIGHTIME) / NANO_TO_MICRO; + lcnt = (IC_CLK * MIN_HS_SCL_LOWTIME) / NANO_TO_MICRO; + } writel(hcnt, _base->ic_hs_scl_hcnt); - lcnt = (IC_CLK * MIN_HS_SCL_LOWTIME) / NANO_TO_MICRO; writel(lcnt, _base->ic_hs_scl_lcnt); break; +#endif case IC_SPEED_MODE_STANDARD: cntl |= IC_CON_SPD_SS; - hcnt = (IC_CLK * MIN_SS_SCL_HIGHTIME) / NANO_TO_MICRO; + if (scl_sda_cfg) { + hcnt = scl_sda_cfg->ss_hcnt; + lcnt = scl_sda_cfg->ss_lcnt; + } else { + hcnt = (IC_CLK * MIN_SS_SCL_HIGHTIME) / NANO_TO_MICRO; + lcnt = (IC_CLK * MIN_SS_SCL_LOWTIME) / NANO_TO_MICRO; + } writel(hcnt, _base->ic_ss_scl_hcnt); - lcnt = (IC_CLK * MIN_SS_SCL_LOWTIME) / NANO_TO_MICRO; writel(lcnt, _base->ic_ss_scl_lcnt); break; case IC_SPEED_MODE_FAST: default: cntl |= IC_CON_SPD_FS; - hcnt = (IC_CLK * MIN_FS_SCL_HIGHTIME) / NANO_TO_MICRO; + if (scl_sda_cfg) { + hcnt = scl_sda_cfg->fs_hcnt; + lcnt = scl_sda_cfg->fs_lcnt; + } else { + hcnt = (IC_CLK * MIN_FS_SCL_HIGHTIME) / NANO_TO_MICRO; + lcnt = (IC_CLK * MIN_FS_SCL_LOWTIME) / NANO_TO_MICRO; + } writel(hcnt, _base->ic_fs_scl_hcnt); - lcnt = (IC_CLK * MIN_FS_SCL_LOWTIME) / NANO_TO_MICRO; writel(lcnt, _base->ic_fs_scl_lcnt); break; } writel(cntl, _base->ic_con); + /* Configure SDA Hold Time if required */ + if (scl_sda_cfg) + writel(scl_sda_cfg->sda_hold, _base->ic_sda_hold); + /* Enable back i2c now speed set */ dw_i2c_enable(i2c_base, true); @@ -315,7 +358,7 @@ static void __dw_i2c_init(struct i2c_regs *i2c_base, int speed, int slaveaddr) writel(IC_TX_TL, _base->ic_tx_tl); writel(IC_STOP_DET, _base->ic_intr_mask); #ifndef CONFIG_DM_I2C - __dw_i2c_set_bus_speed(i2c_base, speed); + __dw_i2c_set_bus_speed(i2c_base, NULL, speed); writel(slaveaddr, _base->ic_sar); #endif @@ -356,7 +399,7 @@ static unsigned int dw_i2c_set_bus_speed(struct i2c_adapter *adap,
[U-Boot] [PATCH 1/6 v2] i2c: designware_i2c: Add ic_enable_status to ic_regs struct
Add the ic_enable_status register to the i2c_regs struct. Additionally the register offsets are added, to better check, if the offset matches the register description in the datasheet. Signed-off-by: Stefan RoeseCc: Simon Glass Reviewed-by: Bin Meng Cc: Marek Vasut Cc: Heiko Schocher --- v2: - Fix typo in commit text - Added Reviewed-by from Bin drivers/i2c/designware_i2c.h | 68 +++- 1 file changed, 35 insertions(+), 33 deletions(-) diff --git a/drivers/i2c/designware_i2c.h b/drivers/i2c/designware_i2c.h index 19b09df..270c29c 100644 --- a/drivers/i2c/designware_i2c.h +++ b/drivers/i2c/designware_i2c.h @@ -9,39 +9,41 @@ #define __DW_I2C_H_ struct i2c_regs { - u32 ic_con; - u32 ic_tar; - u32 ic_sar; - u32 ic_hs_maddr; - u32 ic_cmd_data; - u32 ic_ss_scl_hcnt; - u32 ic_ss_scl_lcnt; - u32 ic_fs_scl_hcnt; - u32 ic_fs_scl_lcnt; - u32 ic_hs_scl_hcnt; - u32 ic_hs_scl_lcnt; - u32 ic_intr_stat; - u32 ic_intr_mask; - u32 ic_raw_intr_stat; - u32 ic_rx_tl; - u32 ic_tx_tl; - u32 ic_clr_intr; - u32 ic_clr_rx_under; - u32 ic_clr_rx_over; - u32 ic_clr_tx_over; - u32 ic_clr_rd_req; - u32 ic_clr_tx_abrt; - u32 ic_clr_rx_done; - u32 ic_clr_activity; - u32 ic_clr_stop_det; - u32 ic_clr_start_det; - u32 ic_clr_gen_call; - u32 ic_enable; - u32 ic_status; - u32 ic_txflr; - u32 ix_rxflr; - u32 reserved_1; - u32 ic_tx_abrt_source; + u32 ic_con; /* 0x00 */ + u32 ic_tar; /* 0x04 */ + u32 ic_sar; /* 0x08 */ + u32 ic_hs_maddr;/* 0x0c */ + u32 ic_cmd_data;/* 0x10 */ + u32 ic_ss_scl_hcnt; /* 0x14 */ + u32 ic_ss_scl_lcnt; /* 0x18 */ + u32 ic_fs_scl_hcnt; /* 0x1c */ + u32 ic_fs_scl_lcnt; /* 0x20 */ + u32 ic_hs_scl_hcnt; /* 0x24 */ + u32 ic_hs_scl_lcnt; /* 0x28 */ + u32 ic_intr_stat; /* 0x2c */ + u32 ic_intr_mask; /* 0x30 */ + u32 ic_raw_intr_stat; /* 0x34 */ + u32 ic_rx_tl; /* 0x38 */ + u32 ic_tx_tl; /* 0x3c */ + u32 ic_clr_intr;/* 0x40 */ + u32 ic_clr_rx_under;/* 0x44 */ + u32 ic_clr_rx_over; /* 0x48 */ + u32 ic_clr_tx_over; /* 0x4c */ + u32 ic_clr_rd_req; /* 0x50 */ + u32 ic_clr_tx_abrt; /* 0x54 */ + u32 ic_clr_rx_done; /* 0x58 */ + u32 ic_clr_activity;/* 0x5c */ + u32 ic_clr_stop_det;/* 0x60 */ + u32 ic_clr_start_det; /* 0x64 */ + u32 ic_clr_gen_call;/* 0x68 */ + u32 ic_enable; /* 0x6c */ + u32 ic_status; /* 0x70 */ + u32 ic_txflr; /* 0x74 */ + u32 ic_rxflr; /* 0x78 */ + u32 ic_sda_hold;/* 0x7c */ + u32 ic_tx_abrt_source; /* 0x80 */ + u8 res1[0x18]; /* 0x84 */ + u32 ic_enable_status; /* 0x9c */ }; #if !defined(IC_CLK) -- 2.7.4 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH 2/6 v2] i2c: designware_i2c: Add dw_i2c_enable() helper function
dw_i2c_enable() is used to dis-/en-able the I2C controller. It makes sense to add such a function, as the controller is dis-/en-abled multiple times in the code. Additionally, this function now checks, if the controller is really dis-/en-abled. This code is copied from the Linux I2C driver version. Signed-off-by: Stefan RoeseCc: Simon Glass Cc: Bin Meng Cc: Marek Vasut Cc: Heiko Schocher --- v2: - Use true / false for binary values as suggested by Bin drivers/i2c/designware_i2c.c | 46 +--- 1 file changed, 26 insertions(+), 20 deletions(-) diff --git a/drivers/i2c/designware_i2c.c b/drivers/i2c/designware_i2c.c index e768cde..2b0c8cb 100644 --- a/drivers/i2c/designware_i2c.c +++ b/drivers/i2c/designware_i2c.c @@ -34,6 +34,26 @@ static struct i2c_regs *i2c_get_base(struct i2c_adapter *adap) return NULL; } +static void dw_i2c_enable(struct i2c_regs *i2c_base, bool enable) +{ + int timeout = 100; + + do { + writel(enable, _base->ic_enable); + if ((readl(_base->ic_enable_status) & 1) == enable) + return; + + /* +* Wait 10 times the signaling period of the highest I2C +* transfer supported by the driver (for 400KHz this is +* 25us) as described in the DesignWare I2C databook. +*/ + udelay(25); + } while (timeout--); + + printf("timeout in %sabling I2C adapter\n", enable ? "en" : "dis"); +} + /* * set_speed - Set the i2c speed mode (standard, high, fast) * @i2c_spd: required i2c speed mode @@ -45,12 +65,9 @@ static void set_speed(struct i2c_adapter *adap, int i2c_spd) struct i2c_regs *i2c_base = i2c_get_base(adap); unsigned int cntl; unsigned int hcnt, lcnt; - unsigned int enbl; /* to set speed cltr must be disabled */ - enbl = readl(_base->ic_enable); - enbl &= ~IC_ENABLE_0B; - writel(enbl, _base->ic_enable); + dw_i2c_enable(i2c_base, false); cntl = (readl(_base->ic_con) & (~IC_CON_SPD_MSK)); @@ -84,8 +101,7 @@ static void set_speed(struct i2c_adapter *adap, int i2c_spd) writel(cntl, _base->ic_con); /* Enable back i2c now speed set */ - enbl |= IC_ENABLE_0B; - writel(enbl, _base->ic_enable); + dw_i2c_enable(i2c_base, true); } /* @@ -123,12 +139,9 @@ static void dw_i2c_init(struct i2c_adapter *adap, int speed, int slaveaddr) { struct i2c_regs *i2c_base = i2c_get_base(adap); - unsigned int enbl; /* Disable i2c */ - enbl = readl(_base->ic_enable); - enbl &= ~IC_ENABLE_0B; - writel(enbl, _base->ic_enable); + dw_i2c_enable(i2c_base, false); writel((IC_CON_SD | IC_CON_SPD_FS | IC_CON_MM), _base->ic_con); writel(IC_RX_TL, _base->ic_rx_tl); @@ -138,9 +151,7 @@ static void dw_i2c_init(struct i2c_adapter *adap, int speed, writel(slaveaddr, _base->ic_sar); /* Enable i2c */ - enbl = readl(_base->ic_enable); - enbl |= IC_ENABLE_0B; - writel(enbl, _base->ic_enable); + dw_i2c_enable(i2c_base, true); } /* @@ -152,19 +163,14 @@ static void dw_i2c_init(struct i2c_adapter *adap, int speed, static void i2c_setaddress(struct i2c_adapter *adap, unsigned int i2c_addr) { struct i2c_regs *i2c_base = i2c_get_base(adap); - unsigned int enbl; /* Disable i2c */ - enbl = readl(_base->ic_enable); - enbl &= ~IC_ENABLE_0B; - writel(enbl, _base->ic_enable); + dw_i2c_enable(i2c_base, false); writel(i2c_addr, _base->ic_tar); /* Enable i2c */ - enbl = readl(_base->ic_enable); - enbl |= IC_ENABLE_0B; - writel(enbl, _base->ic_enable); + dw_i2c_enable(i2c_base, true); } /* -- 2.7.4 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH] smsc95xx: fix operation on 64-bit systems
smsc95xx_read_reg() should calculate sizeof(*data) not sizeof(data) since data is a pointer, and the value pointed at is being transferred over USB, not the value of the pointer. This fixes operation of the driver in 64-bit builds, such as the Raspberry Pi 3. Reported-by: Eric AnholtSigned-off-by: Stephen Warren --- drivers/usb/eth/smsc95xx.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/usb/eth/smsc95xx.c b/drivers/usb/eth/smsc95xx.c index 3099bf4fd4e5..08eaed5c2e03 100644 --- a/drivers/usb/eth/smsc95xx.c +++ b/drivers/usb/eth/smsc95xx.c @@ -188,10 +188,10 @@ static int smsc95xx_read_reg(struct usb_device *udev, u32 index, u32 *data) len = usb_control_msg(udev, usb_rcvctrlpipe(udev, 0), USB_VENDOR_REQUEST_READ_REGISTER, USB_DIR_IN | USB_TYPE_VENDOR | USB_RECIP_DEVICE, - 0, index, tmpbuf, sizeof(data), + 0, index, tmpbuf, sizeof(*data), USB_CTRL_GET_TIMEOUT); *data = tmpbuf[0]; - if (len != sizeof(data)) { + if (len != sizeof(*data)) { debug("smsc95xx_read_reg failed: index=%d, len=%d", index, len); return -EIO; -- 2.7.3 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [U-Boot,v2,3/3] net: Move CONFIG_RTL8169 to Kconfig
On Mon, Mar 21, 2016 at 06:47:42AM -0700, Bin Meng wrote: > Introduce CONFIG_RTL8169 in Kconfig and move over boards' defconfig > to use that. > > Signed-off-by: Bin Meng> Acked-by: Stephen Warren > Acked-by: Joe Hershberger Applied to u-boot/master, thanks! -- Tom signature.asc Description: Digital signature ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [U-Boot, 14/14] usb: Correct return value in usb_stor_info()
On Wed, Mar 16, 2016 at 07:45:44AM -0600, Simon Glass wrote: > This should return 0 on success, not 1. Fix it. > > Signed-off-by: Simon Glass> Acked-by: Marek Vasut > Reviewed-by: Tom Rini Applied to u-boot/master, thanks! -- Tom signature.asc Description: Digital signature ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [U-Boot,v2,2/3] net: Move CONFIG_RTL8139 to Kconfig
On Mon, Mar 21, 2016 at 06:47:41AM -0700, Bin Meng wrote: > Introduce CONFIG_RTL8139 in Kconfig and move over boards' defconfig > to use that. > > Signed-off-by: Bin Meng> Acked-by: Joe Hershberger Manually fixed up the boards Scott noted and then, applied to u-boot/master, thanks! -- Tom signature.asc Description: Digital signature ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [U-Boot, 13/14] mkimage: Don't close the file if it wasn't opened
On Wed, Mar 16, 2016 at 07:45:43AM -0600, Simon Glass wrote: > The error path for fit_import_data() is incorrect if the second open() call > fails. > > Reported-by: Coverity (CID: 138489) > Signed-off-by: Simon Glass> Reviewed-by: Tom Rini Applied to u-boot/master, thanks! -- Tom signature.asc Description: Digital signature ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [U-Boot, 12/14] mkimage: Ensure file is closed in fdt_property_file()
On Wed, Mar 16, 2016 at 07:45:42AM -0600, Simon Glass wrote: > The file that is opened is not closed in all cases. Fix it. > > Reported-by: Coverity (CID: 138490) > Signed-off-by: Simon Glass> Reviewed-by: Tom Rini Applied to u-boot/master, thanks! -- Tom signature.asc Description: Digital signature ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [U-Boot, v2, 1/3] defconfig: Reorder boards' defconfig files
On Mon, Mar 21, 2016 at 06:47:40AM -0700, Bin Meng wrote: > Some boards' defconfig files are out of order. Clean this up. > > Signed-off-by: Bin Meng> Acked-by: Joe Hershberger Applied to u-boot/master, thanks! -- Tom signature.asc Description: Digital signature ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [U-Boot, 11/14] mkimage: Fix missing free() and close() in fit_build()
On Wed, Mar 16, 2016 at 07:45:41AM -0600, Simon Glass wrote: > Make sure that both the error path and normal return free the buffer and > close the file. > > Reported-by: Coverity (CID: 138491) > Signed-off-by: Simon Glass> Reviewed-by: Tom Rini Applied to u-boot/master, thanks! -- Tom signature.asc Description: Digital signature ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [U-Boot, 09/14] mkimage: Fix error path in fit_extract_data()
On Wed, Mar 16, 2016 at 07:45:39AM -0600, Simon Glass wrote: > The 'fdt' variable is not unmapped in all error cases. Fix this. > > Reported-by: Coverity (CID: 138493) > > Signed-off-by: Simon Glass> Reviewed-by: Tom Rini Applied to u-boot/master, thanks! -- Tom signature.asc Description: Digital signature ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [U-Boot, 10/14] mkimage: Fix missing free() in fit_extract_data()
On Wed, Mar 16, 2016 at 07:45:40AM -0600, Simon Glass wrote: > The 'buf' variable is not freed. Fix it. > > Reported-by: Coverity (CID: 138492) > Signed-off-by: Simon Glass> Reviewed-by: Tom Rini Applied to u-boot/master, thanks! -- Tom signature.asc Description: Digital signature ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [U-Boot, 08/14] mkimage: Add a missing free() to fit_import_data()
On Wed, Mar 16, 2016 at 07:45:38AM -0600, Simon Glass wrote: > The space allocated to fdt is not freed on error. Fix it. > > Reported-by: Coverity (CID: 138494) > > Signed-off-by: Simon Glass> Reviewed-by: Tom Rini Applied to u-boot/master, thanks! -- Tom signature.asc Description: Digital signature ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [U-Boot, 07/14] mkimage: Close the file when unable to get its size
On Wed, Mar 16, 2016 at 07:45:37AM -0600, Simon Glass wrote: > There is a missing close() on the error path. Add it. > > Reported-by: Coverity (CID: 138496) > Signed-off-by: Simon Glass> Reviewed-by: Tom Rini Applied to u-boot/master, thanks! -- Tom signature.asc Description: Digital signature ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [U-Boot, 06/14] part_efi: Drop NULL check in part_get_info_efi()
On Wed, Mar 16, 2016 at 07:45:36AM -0600, Simon Glass wrote: > This cannot be NULL since part_get_info() calls this function and requires > it to be non-NULL. > > Reported-by: Coverity (CID: 138497) > > Signed-off-by: Simon Glass> Reviewed-by: Tom Rini Applied to u-boot/master, thanks! -- Tom signature.asc Description: Digital signature ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [U-Boot, 03/14] mkimage: Correct file being closed twice in fit_extract_data()
On Wed, Mar 16, 2016 at 07:45:33AM -0600, Simon Glass wrote: > The code flows through to the end of the function, so we don't need another > close() before this. Remove it. > > Reported-by: Coverity (CID: 138503) > > Signed-off-by: Simon Glass> Reviewed-by: Tom Rini Applied to u-boot/master, thanks! -- Tom signature.asc Description: Digital signature ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [U-Boot, 05/14] part_efi: Drop the NULL check on dev_desc in part_print_efi()
On Wed, Mar 16, 2016 at 07:45:35AM -0600, Simon Glass wrote: > This cannot be NULL since part_print() calls this function and requires it > to be non-NULL. > > Reported-by: Coverity (CID: 138498) > Signed-off-by: Simon Glass> Reviewed-by: Tom Rini Applied to u-boot/master, thanks! -- Tom signature.asc Description: Digital signature ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [U-Boot, 04/14] part_iso: Drop the customer unaligned access functions
On Wed, Mar 16, 2016 at 07:45:34AM -0600, Simon Glass wrote: > One of these is causing a coverity warning. Drop these functions and use the > standard U-Boot ones instead. > > Reported-by: Coverity (CID: 138499) > > Signed-off-by: Simon Glass> Reviewed-by: Tom Rini Applied to u-boot/master, thanks! -- Tom signature.asc Description: Digital signature ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [U-Boot, 02/14] mkimage: Correct file being closed twice in fit_import_data()
On Wed, Mar 16, 2016 at 07:45:32AM -0600, Simon Glass wrote: > The code flows through to the end of the function, so we don't need another > close() before this. Remove it. > > Reported-by: Coverity (CID: 138504) > > Signed-off-by: Simon Glass> Reviewed-by: Tom Rini Applied to u-boot/master, thanks! -- Tom signature.asc Description: Digital signature ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] Fix spelling of "transferred".
On Tue, Mar 15, 2016 at 12:16:39PM -0700, Vagrant Cascadian wrote: > Signed-off-by: Vagrant Cascadian> Acked-by: Marek Vasut > Reviewed-by: Simon Glass > Reviewed-by: Tom Rini Applied to u-boot/master, thanks! -- Tom signature.asc Description: Digital signature ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [U-Boot, 01/14] mkimage: Fix munmap() call when importing data
On Wed, Mar 16, 2016 at 07:45:31AM -0600, Simon Glass wrote: > The munmap() call unmaps the wrong memory buffer. Fix it. > > Reported-by: Coverity (CID: 138505) > Reported-by: Coverity (CID: 138495) > Signed-off-by: Simon Glass> Reviewed-by: Tom Rini Applied to u-boot/master, thanks! -- Tom signature.asc Description: Digital signature ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [U-Boot,2/2] Fix spelling of "supported/unsupported".
On Tue, Mar 15, 2016 at 12:11:13PM -0700, Vagrant Cascadian wrote: > Signed-off-by: Vagrant Cascadian> Reviewed-by: Simon Glass > Reviewed-by: Tom Rini > Reviewed-by: Peter Griffin Applied to u-boot/master, thanks! -- Tom signature.asc Description: Digital signature ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] cmd: Fix license command
On Tue, Mar 15, 2016 at 12:49:12PM -0400, Tom Rini wrote: > The license command isn't usually built and has a few problems: > - The rules to generate license.h haven't worked in a long time, > re-write these based on the bmp_logo.h rules. > - 'tok' is unused and the license text size has increased > - bin2header.c wasn't grabbing unistd.h to know the prototype for > read(). > > Cc: Masahiro Yamada> Signed-off-by: Tom Rini Applied to u-boot/master, thanks! -- Tom signature.asc Description: Digital signature ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [U-Boot,1/2] Fix spelling of "comment".
On Tue, Mar 15, 2016 at 12:11:12PM -0700, Vagrant Cascadian wrote: > Signed-off-by: Vagrant Cascadian> Reviewed-by: Tom Rini Applied to u-boot/master, thanks! -- Tom signature.asc Description: Digital signature ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [U-Boot, v2] serial: pl01x: Add support for devices with the rate pre-configured.
On Sun, Mar 13, 2016 at 06:16:54PM -0700, Eric Anholt wrote: > For Raspberry Pi, we had the input clock rate to the pl011 fixed in > the rpi.c file, but it may be changed by firmware due to user changes > to config.txt. Since the firmware always sets up the uart (default > 115200 output unless the user changes it), we can just skip our own > uart init to simplify the boot process and more reliably get serial > output. > > Signed-off-by: Eric Anholt> Reviewed-by: Tom Rini > Tested-by: Stephen Warren Applied to u-boot/master, thanks! -- Tom signature.asc Description: Digital signature ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [U-Boot, v2, 8/9] Allow command-line files to be dropped
On Sun, Mar 13, 2016 at 07:07:34PM -0600, Simon Glass wrote: > These files do not need to be compiled when CONFIG_CMDLINE is disabled. > Update the Makefile to reflect this. > > Signed-off-by: Simon Glass> Reviewed-by: Tom Rini Applied to u-boot/master, thanks! -- Tom signature.asc Description: Digital signature ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [U-Boot, v2, 6/9] Panic when no command line processing can be performed
On Sun, Mar 13, 2016 at 07:07:32PM -0600, Simon Glass wrote: > Normally board_run_command() will handle command processed. But if for some > reason it returns then we should panic to avoid further processing. > > Signed-off-by: Simon Glass> Reviewed-by: Tom Rini Applied to u-boot/master, thanks! -- Tom signature.asc Description: Digital signature ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [U-Boot, v2, 9/9] Drop various features when the command line is not available
On Sun, Mar 13, 2016 at 07:07:35PM -0600, Simon Glass wrote: > Some features are only useful or meaningful when the command line is > present. Ensure that these features are not compiled in when CONFIG_CMDLINE > is not enabled. > > Signed-off-by: Simon Glass> Reviewed-by: Tom Rini Applied to u-boot/master, thanks! -- Tom signature.asc Description: Digital signature ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [U-Boot, v2, 3/9] arm: x86: Drop command-line code when CONFIG_CMDLINE is disabled
On Sun, Mar 13, 2016 at 07:07:29PM -0600, Simon Glass wrote: > Update the link script to drop this code when not needed. This is only done > for two architectures at present. > > Signed-off-by: Simon Glass> Reviewed-by: Tom Rini Applied to u-boot/master, thanks! -- Tom signature.asc Description: Digital signature ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [U-Boot, v2, 7/9] Allow command code to compile to nothing
On Sun, Mar 13, 2016 at 07:07:33PM -0600, Simon Glass wrote: > When CONFIG_CMDLINE is disabled we need to remove all the command-line > code. Most can be removed by dropping the appropriate linker lists from the > images, but sub-commands must be dealt with specially. > > A simple mechanism is used to avoid 'unused static function' errors. > > Signed-off-by: Simon Glass> Reviewed-by: Tom Rini Applied to u-boot/master, thanks! -- Tom signature.asc Description: Digital signature ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] ti: k2g: increase phy autoneg timeout
On Fri, Mar 11, 2016 at 08:23:04AM -0500, Vitaly Andrianov wrote: > After power cycle of a K2G EVM dhcp fails due to a auto-negotiation > timeout. This commit increases the timeout to fix the issue. > > Signed-off-by: Vitaly Andrianov> Reviewed-by: Tom Rini Applied to u-boot/master, thanks! -- Tom signature.asc Description: Digital signature ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [U-Boot, v2, 4/9] sandbox: Avoid calling commands when not available
On Sun, Mar 13, 2016 at 07:07:30PM -0600, Simon Glass wrote: > Don't try to run commands when not supported. > > Signed-off-by: Simon Glass> Reviewed-by: Tom Rini Applied to u-boot/master, thanks! -- Tom signature.asc Description: Digital signature ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [U-Boot, v2, 2/9] Add an option to enable the command line
On Sun, Mar 13, 2016 at 07:07:28PM -0600, Simon Glass wrote: > Add a new Kconfig option for the command line. This is enabled by default, > but when disabled it will remove the command line. > > Signed-off-by: Simon Glass> Reviewed-by: Tom Rini Applied to u-boot/master, thanks! -- Tom signature.asc Description: Digital signature ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] Please pull u-boot-fsl-qoriq master
On Tue, Mar 22, 2016 at 03:52:25PM +, york sun wrote: > Tom, > > The following changes since commit f23baa572f96e1e13d7f1a3c8addb61b5d0dbd29: > > cmd_dhry.c: Use lldiv for vax_mips calculation as well (2016-03-17 10:14:25 > -0400) > > are available in the git repository at: > > git://git.denx.de/u-boot-fsl-qoriq.git master > > for you to fetch changes up to 6dedcedd6442295428ea7f02b0d30739499858a2: > > driver: net: fsl-mc: Return from DPAA_exit if boot_status !=0 (2016-03-21 > 12:42:15 -0700) > Applied to u-boot/master, thanks! -- Tom signature.asc Description: Digital signature ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [U-Boot,v2,1/9] cbfs: Update a function to be static
On Sun, Mar 13, 2016 at 07:07:27PM -0600, Simon Glass wrote: > All command functions should be static. Update the CBFS functions to follow > this rule. > > Signed-off-by: Simon Glass> Reviewed-by: Tom Rini Applied to u-boot/master, thanks! -- Tom signature.asc Description: Digital signature ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH V2] fsl: esdhc: support driver model
On 03/22/2016 06:25 PM, Peng Fan wrote: > Hi York, > > On Tue, Mar 22, 2016 at 07:26:08PM +, york sun wrote: >> On 03/15/2016 03:23 AM, Peng Fan wrote: >>> Support Driver Model for fsl esdhc driver. >>> >>> 1. Introduce a new structure struct fsl_esdhc_priv >>> 2. Refactor fsl_esdhc_initialize which is originally used by board code. >>>- Introduce fsl_esdhc_init to be common usage for DM and non-DM >>>- Introduce fsl_esdhc_cfg_to_priv to build the bridge for non-DM part. >>>- The original API for board code is still there, but we use >>> 'fsl_esdhc_cfg_to_priv' and 'fsl_esdhc_init' to serve it. >>> 3. All the functions are changed to use 'struct fsl_esdhc_priv', except >>>fsl_esdhc_initialize. >>> 4. Since clk driver is not implemented, use mxc_get_clock to geth >>>the clk and fill 'priv->sdhc_clk'. >>> >>> Has been tested on i.MX6UL 14X14 EVK board: >>> " >>> =>dm tree >>> >>> simple_bus [ + ]| `-- aips-bus@0210 >>> mmc[ + ]| |-- usdhc@0219 >>> mmc[ + ]| |-- usdhc@02194000 >>> >>> => mmc list >>> FSL_SDHC: 0 (SD) >>> FSL_SDHC: 1 (SD) >>> " >>> >>> Signed-off-by: Peng Fan>>> Cc: York Sun >>> Cc: Yangbo Lu >>> Cc: Hector Palacios >>> Cc: Eric Nelson >>> Cc: Stefano Babic >>> Cc: Fabio Estevam >>> Cc: Pantelis Antoniou >>> Cc: Simon Glass >>> --- >>> >>> V2: >>> restructure the V1 patch. >>> Introduce fsl_esdhc_priv structure. >>> Introduce code to handle cd-gpios and non-removable. >>> >>> drivers/mmc/fsl_esdhc.c | 253 >>> >>> 1 file changed, 213 insertions(+), 40 deletions(-) >>> >>> diff --git a/drivers/mmc/fsl_esdhc.c b/drivers/mmc/fsl_esdhc.c >>> index ea5f4bf..6fadde1 100644 >>> --- a/drivers/mmc/fsl_esdhc.c >>> +++ b/drivers/mmc/fsl_esdhc.c >>> @@ -20,6 +20,9 @@ >> >> >> >>> +static int fsl_esdhc_probe(struct udevice *dev) >>> +{ >>> + struct mmc_uclass_priv *upriv = dev_get_uclass_priv(dev); >>> + struct fsl_esdhc_priv *priv = dev_get_priv(dev); >>> + const void *fdt = gd->fdt_blob; >>> + int node = dev->of_offset; >>> + fdt_addr_t addr; >>> + unsigned int val; >>> + int ret; >>> + >>> + addr = dev_get_addr(dev); >>> + if (addr == FDT_ADDR_T_NONE) >>> + return -EINVAL; >>> + >>> + priv->esdhc_base = (phys_addr_t)addr; >>> + priv->dev = dev; >>> + >>> + val = fdtdec_get_int(fdt, node, "bus-width", -1); >>> + if (val == 8) >>> + priv->bus_width = 8; >>> + else if (val == 4) >>> + priv->bus_width = 4; >>> + else >>> + priv->bus_width = 1; >>> + >>> + if (fdt_get_property(fdt, node, "non-removable", NULL)) { >>> + priv->non_removable = 1; >>> +} else { >>> + priv->non_removable = 0; >>> + gpio_request_by_name_nodev(fdt, node, "cd-gpios", 0, >>> + >cd_gpio, GPIOD_IS_IN); >>> + } >>> + >>> + /* >>> +* TODO: >>> +* Because lack of clk driver, if SDHC clk is not enabled, >>> +* need to enable it first before this driver is invoked. >>> +* >>> +* we use MXC_ESDHC_CLK to get clk freq. >>> +* If one would like to make this function work, >>> +* the aliases should be provided in dts as this: >>> +* >>> +* aliases { >>> +* mmc0 = >>> +* mmc1 = >>> +* mmc2 = >>> +* mmc3 = >>> +* }; >>> +* Then if your board only supports mmc2 and mmc3, but we can >>> +* correctly get the seq as 2 and 3, then let mxc_get_clock >>> +* work as expected. >>> +*/ >>> + priv->sdhc_clk = mxc_get_clock(MXC_ESDHC_CLK + dev->seq); >> >> Peng, >> >> This seems to be problematic on powerpc platforms. Have you tested (at least >> compiled) for any of them (eg. T2080, T4240, P1022, MPC8536, etc.)? > > I only test the patch on i.MX platform with DM and non_DM option. > > I have no ppc compilers, Could you tell me where to download the powerpc > compiler > for the platform you listed? I know it is in our SDK release http://www.nxp.com/products/software-and-tools/run-time-software/linux-sdk:CW_LXSUPPORT Let me try to find direct link to toolchains. I am not sure if they are individually available. Maybe other people can point you to prebuilt toolchains from somewhere else. York ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH V2] fsl: esdhc: support driver model
Hi York, On Tue, Mar 22, 2016 at 07:26:08PM +, york sun wrote: >On 03/15/2016 03:23 AM, Peng Fan wrote: >> Support Driver Model for fsl esdhc driver. >> >> 1. Introduce a new structure struct fsl_esdhc_priv >> 2. Refactor fsl_esdhc_initialize which is originally used by board code. >>- Introduce fsl_esdhc_init to be common usage for DM and non-DM >>- Introduce fsl_esdhc_cfg_to_priv to build the bridge for non-DM part. >>- The original API for board code is still there, but we use >> 'fsl_esdhc_cfg_to_priv' and 'fsl_esdhc_init' to serve it. >> 3. All the functions are changed to use 'struct fsl_esdhc_priv', except >>fsl_esdhc_initialize. >> 4. Since clk driver is not implemented, use mxc_get_clock to geth >>the clk and fill 'priv->sdhc_clk'. >> >> Has been tested on i.MX6UL 14X14 EVK board: >> " >> =>dm tree >> >> simple_bus [ + ]| `-- aips-bus@0210 >> mmc[ + ]| |-- usdhc@0219 >> mmc[ + ]| |-- usdhc@02194000 >> >> => mmc list >> FSL_SDHC: 0 (SD) >> FSL_SDHC: 1 (SD) >> " >> >> Signed-off-by: Peng Fan>> Cc: York Sun >> Cc: Yangbo Lu >> Cc: Hector Palacios >> Cc: Eric Nelson >> Cc: Stefano Babic >> Cc: Fabio Estevam >> Cc: Pantelis Antoniou >> Cc: Simon Glass >> --- >> >> V2: >> restructure the V1 patch. >> Introduce fsl_esdhc_priv structure. >> Introduce code to handle cd-gpios and non-removable. >> >> drivers/mmc/fsl_esdhc.c | 253 >> >> 1 file changed, 213 insertions(+), 40 deletions(-) >> >> diff --git a/drivers/mmc/fsl_esdhc.c b/drivers/mmc/fsl_esdhc.c >> index ea5f4bf..6fadde1 100644 >> --- a/drivers/mmc/fsl_esdhc.c >> +++ b/drivers/mmc/fsl_esdhc.c >> @@ -20,6 +20,9 @@ > > > >> +static int fsl_esdhc_probe(struct udevice *dev) >> +{ >> +struct mmc_uclass_priv *upriv = dev_get_uclass_priv(dev); >> +struct fsl_esdhc_priv *priv = dev_get_priv(dev); >> +const void *fdt = gd->fdt_blob; >> +int node = dev->of_offset; >> +fdt_addr_t addr; >> +unsigned int val; >> +int ret; >> + >> +addr = dev_get_addr(dev); >> +if (addr == FDT_ADDR_T_NONE) >> +return -EINVAL; >> + >> +priv->esdhc_base = (phys_addr_t)addr; >> +priv->dev = dev; >> + >> +val = fdtdec_get_int(fdt, node, "bus-width", -1); >> +if (val == 8) >> +priv->bus_width = 8; >> +else if (val == 4) >> +priv->bus_width = 4; >> +else >> +priv->bus_width = 1; >> + >> +if (fdt_get_property(fdt, node, "non-removable", NULL)) { >> +priv->non_removable = 1; >> + } else { >> +priv->non_removable = 0; >> +gpio_request_by_name_nodev(fdt, node, "cd-gpios", 0, >> + >cd_gpio, GPIOD_IS_IN); >> +} >> + >> +/* >> + * TODO: >> + * Because lack of clk driver, if SDHC clk is not enabled, >> + * need to enable it first before this driver is invoked. >> + * >> + * we use MXC_ESDHC_CLK to get clk freq. >> + * If one would like to make this function work, >> + * the aliases should be provided in dts as this: >> + * >> + * aliases { >> + * mmc0 = >> + * mmc1 = >> + * mmc2 = >> + * mmc3 = >> + * }; >> + * Then if your board only supports mmc2 and mmc3, but we can >> + * correctly get the seq as 2 and 3, then let mxc_get_clock >> + * work as expected. >> + */ >> +priv->sdhc_clk = mxc_get_clock(MXC_ESDHC_CLK + dev->seq); > >Peng, > >This seems to be problematic on powerpc platforms. Have you tested (at least >compiled) for any of them (eg. T2080, T4240, P1022, MPC8536, etc.)? I only test the patch on i.MX platform with DM and non_DM option. I have no ppc compilers, Could you tell me where to download the powerpc compiler for the platform you listed? Thanks, Peng. > >York > ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH v2 2/3] net: Move CONFIG_RTL8139 to Kconfig
On Wed, Mar 23, 2016 at 6:50 AM, Tom Riniwrote: > On Tue, Mar 22, 2016 at 05:25:04PM -0500, Joe Hershberger wrote: >> Hi Bin, >> >> On Mon, Mar 21, 2016 at 9:14 PM, Bin Meng wrote: >> > On Tue, Mar 22, 2016 at 1:01 AM, Scott Wood wrote: >> >> On 03/21/2016 08:44 AM, Bin Meng wrote: >> >>> Introduce CONFIG_RTL8139 in Kconfig and move over boards' defconfig >> >>> to use that. >> >>> >> >>> Signed-off-by: Bin Meng >> >>> --- >> >>> >> >>> Changes in v2: None >> >>> >> >>> configs/MPC8544DS_defconfig | 1 + >> >>> drivers/net/Kconfig | 6 ++ >> >>> include/configs/MPC8536DS.h | 1 - >> >>> include/configs/MPC8544DS.h | 1 - >> >>> include/configs/MPC8572DS.h | 1 - >> >>> include/configs/MPC8641HPCN.h | 1 - >> >>> include/configs/r2dplus.h | 5 - >> >>> 7 files changed, 7 insertions(+), 9 deletions(-) >> >> >> >> What about the defconfig for MPC8641HPCN and r2dplus? >> >> >> > >> > Looks they should be added automatically by moveconfig, but somehow >> > they were not. >> > >> > Hi Joe, Masahiro, >> > >> > Do you know why moveconfig fails to handle these two board files? >> >> I've seen it miss moves for several reasons. Maybe your build env >> failed to create the intermediate files for those targets? > > Please note that I've fixed this up locally and will be pushing shortly, > so no need for a v3. Thanks Tom! Regards, Bin ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH v1] Revert "fastboot: OUT transaction length must be aligned to wMaxPacketSize"
This reverts commit 9e4b510d40310bf46e09f4edd0a0b6356213df47. Signed-off-by: Steve Rae--- As discussed on the mailing list, this change breaks the download portion of fastboot by causing the server (the device running U-Boot) to wait forever for bytes which are never sent by the client (the host connected via USB). Does anyone know how to contact: Dileep Katta (this email bounces) ? drivers/usb/gadget/f_fastboot.c | 27 +-- 1 file changed, 5 insertions(+), 22 deletions(-) diff --git a/drivers/usb/gadget/f_fastboot.c b/drivers/usb/gadget/f_fastboot.c index a54b4ee..887cf4f 100644 --- a/drivers/usb/gadget/f_fastboot.c +++ b/drivers/usb/gadget/f_fastboot.c @@ -57,7 +57,6 @@ static struct f_fastboot *fastboot_func; static unsigned int fastboot_flash_session_id; static unsigned int download_size; static unsigned int download_bytes; -static bool is_high_speed; static struct usb_endpoint_descriptor fs_ep_in = { .bLength= USB_DT_ENDPOINT_SIZE, @@ -241,13 +240,10 @@ static int fastboot_set_alt(struct usb_function *f, __func__, f->name, interface, alt); /* make sure we don't enable the ep twice */ - if (gadget->speed == USB_SPEED_HIGH) { + if (gadget->speed == USB_SPEED_HIGH) ret = usb_ep_enable(f_fb->out_ep, _ep_out); - is_high_speed = true; - } else { + else ret = usb_ep_enable(f_fb->out_ep, _ep_out); - is_high_speed = false; - } if (ret) { puts("failed to enable out ep\n"); return ret; @@ -419,20 +415,13 @@ static void cb_getvar(struct usb_ep *ep, struct usb_request *req) fastboot_tx_write_str(response); } -static unsigned int rx_bytes_expected(unsigned int maxpacket) +static unsigned int rx_bytes_expected(void) { int rx_remain = download_size - download_bytes; - int rem = 0; if (rx_remain < 0) return 0; if (rx_remain > EP_BUFFER_SIZE) return EP_BUFFER_SIZE; - if (rx_remain < maxpacket) { - rx_remain = maxpacket; - } else if (rx_remain % maxpacket != 0) { - rem = rx_remain % maxpacket; - rx_remain = rx_remain + (maxpacket - rem); - } return rx_remain; } @@ -444,7 +433,6 @@ static void rx_handler_dl_image(struct usb_ep *ep, struct usb_request *req) const unsigned char *buffer = req->buf; unsigned int buffer_size = req->actual; unsigned int pre_dot_num, now_dot_num; - unsigned int max; if (req->status != 0) { printf("Bad status: %d\n", req->status); @@ -482,9 +470,7 @@ static void rx_handler_dl_image(struct usb_ep *ep, struct usb_request *req) printf("\ndownloading of %d bytes finished\n", download_bytes); } else { - max = is_high_speed ? hs_ep_out.wMaxPacketSize : - fs_ep_out.wMaxPacketSize; - req->length = rx_bytes_expected(max); + req->length = rx_bytes_expected(); if (req->length < ep->maxpacket) req->length = ep->maxpacket; } @@ -497,7 +483,6 @@ static void cb_download(struct usb_ep *ep, struct usb_request *req) { char *cmd = req->buf; char response[FASTBOOT_RESPONSE_LEN]; - unsigned int max; strsep(, ":"); download_size = simple_strtoul(cmd, NULL, 16); @@ -513,9 +498,7 @@ static void cb_download(struct usb_ep *ep, struct usb_request *req) } else { sprintf(response, "DATA%08x", download_size); req->complete = rx_handler_dl_image; - max = is_high_speed ? hs_ep_out.wMaxPacketSize : - fs_ep_out.wMaxPacketSize; - req->length = rx_bytes_expected(max); + req->length = rx_bytes_expected(); if (req->length < ep->maxpacket) req->length = ep->maxpacket; } -- 1.8.5 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH v2 2/3] net: Move CONFIG_RTL8139 to Kconfig
On Tue, Mar 22, 2016 at 05:25:04PM -0500, Joe Hershberger wrote: > Hi Bin, > > On Mon, Mar 21, 2016 at 9:14 PM, Bin Mengwrote: > > On Tue, Mar 22, 2016 at 1:01 AM, Scott Wood wrote: > >> On 03/21/2016 08:44 AM, Bin Meng wrote: > >>> Introduce CONFIG_RTL8139 in Kconfig and move over boards' defconfig > >>> to use that. > >>> > >>> Signed-off-by: Bin Meng > >>> --- > >>> > >>> Changes in v2: None > >>> > >>> configs/MPC8544DS_defconfig | 1 + > >>> drivers/net/Kconfig | 6 ++ > >>> include/configs/MPC8536DS.h | 1 - > >>> include/configs/MPC8544DS.h | 1 - > >>> include/configs/MPC8572DS.h | 1 - > >>> include/configs/MPC8641HPCN.h | 1 - > >>> include/configs/r2dplus.h | 5 - > >>> 7 files changed, 7 insertions(+), 9 deletions(-) > >> > >> What about the defconfig for MPC8641HPCN and r2dplus? > >> > > > > Looks they should be added automatically by moveconfig, but somehow > > they were not. > > > > Hi Joe, Masahiro, > > > > Do you know why moveconfig fails to handle these two board files? > > I've seen it miss moves for several reasons. Maybe your build env > failed to create the intermediate files for those targets? Please note that I've fixed this up locally and will be pushing shortly, so no need for a v3. -- Tom signature.asc Description: Digital signature ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] Fwd: difference between ft_board_setup() and ft_system_setup()
ping ... Forwarded Message Subject:difference between ft_board_setup() and ft_system_setup() Date: Thu, 17 Mar 2016 09:36:32 +0100 From: Hannes SchmelzerTo: u-boot@lists.denx.de hi, i've seen today that there is some kconfig option to switch on CONFIG_OF_SYSTEM_SETUP, which turns on calling some ft_system_setup() function before booting the OS. In the days before this my meaning was to implement all things which i have to modify dynamically within ft_board_setup(). What is the purpose of ft_system_setup, which thing should be implemented here and which things should stay in ft_board_setup? many thanks and best regards, Hannes ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH 2/2] net: xilinx_axi: Clear Isolate bit if found during phy setup
On Fri, Mar 18, 2016 at 11:37 AM, Michal Simekwrote: > From: Siva Durga Prasad Paladugu > > In SGMII cases the isolate bit might set after DMA and > ethernet resets and hence check and clear during > setup_phy if it was set. > > Signed-off-by: Siva Durga Prasad Paladugu > Signed-off-by: Michal Simek Acked-by: Joe Hershberger ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH 1/2] net: xilinx_axi: use interface type instead of zero
On Fri, Mar 18, 2016 at 11:37 AM, Michal Simekwrote: > From: Siva Durga Prasad Paladugu > > Pass appropriate interface type to phy_connect > instead of zero. > > Signed-off-by: Siva Durga Prasad Paladugu > Signed-off-by: Michal Simek Acked-by: Joe Hershberger ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH] net: phy: Realtek RTL8211B/C PHY ID fix
On Mon, Mar 21, 2016 at 2:29 PM, Karsten Merkerwrote: > The RTL8211B_driver structure in drivers/net/phy/realtek.c contains a > wrong PHY ID (0x1cc910 instead of 0x1cc912) in the uid field. > > The lowest four bits of the PHY ID encode the chip revision (B+C/D/E/F) > of the RTL8211 and the code originally applied a mask of 0xf0 to > the PHY ID, so that matching the PHY ID to the appropriate driver code > was only done on the chip type (RTL8211), but not on a specific > revision. > > After introduction of support for the RTL8211E, which needed another > startup function than the older chip revisions, commit > 42205047674d7fc9e0aa747273fbc7dcfbac3183 changed the mask to 0xff > to make the chip revision relevant for the match, but didn't provide > the now-relevant lower bits of the uid field for the RTL8211B/C. > > Fix this by setting the full PHY ID in the RTL8211B_driver uid field. > > Fixes: 42205047674d ("net/phy: realtek: Fix the PHY ID mask to ensure the > correct Realtek PHY is detected") > Signed-off-by: Karsten Merker Acked-by: Joe Hershberger ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH v2 2/3] net: Move CONFIG_RTL8139 to Kconfig
Hi Bin, On Mon, Mar 21, 2016 at 9:14 PM, Bin Mengwrote: > On Tue, Mar 22, 2016 at 1:01 AM, Scott Wood wrote: >> On 03/21/2016 08:44 AM, Bin Meng wrote: >>> Introduce CONFIG_RTL8139 in Kconfig and move over boards' defconfig >>> to use that. >>> >>> Signed-off-by: Bin Meng >>> --- >>> >>> Changes in v2: None >>> >>> configs/MPC8544DS_defconfig | 1 + >>> drivers/net/Kconfig | 6 ++ >>> include/configs/MPC8536DS.h | 1 - >>> include/configs/MPC8544DS.h | 1 - >>> include/configs/MPC8572DS.h | 1 - >>> include/configs/MPC8641HPCN.h | 1 - >>> include/configs/r2dplus.h | 5 - >>> 7 files changed, 7 insertions(+), 9 deletions(-) >> >> What about the defconfig for MPC8641HPCN and r2dplus? >> > > Looks they should be added automatically by moveconfig, but somehow > they were not. > > Hi Joe, Masahiro, > > Do you know why moveconfig fails to handle these two board files? I've seen it miss moves for several reasons. Maybe your build env failed to create the intermediate files for those targets? -Joe ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH] fastboot: allow retrieving fastboot variables from env
On Thu, Mar 17, 2016 at 9:44 AM, Boris Brezillon < boris.brezil...@free-electrons.com> wrote: > On Thu, 17 Mar 2016 17:21:23 +0100 > Boris Brezillonwrote: > > > From: Rob Herring > > > > Some boards need to expose device specific variable through fastboot > > (to adpat the flashing script depending on hardware revision for > > example). > > > > Provide a way to expose custom fastboot variables. Note that all > > variables meant to be exposed through fastboot should be be prefixed > > with 'fastboot.', the variable should not exceed 32 bytes (including > > the prefix and the trailing '\0') and the variable content should > > fit in the response buffer (60 bytes excluding the 'OKAY' prefix and > > the trailing '\0'). > > > > Signed-off-by: Rob Herring > > [Boris Brezillon: add a commit message] > > Signed-off-by: Boris Brezillon > > > > Signed-off-by: Boris Brezillon > > Sorry for the duplicated SoB. > > > --- > > drivers/usb/gadget/f_fastboot.c | 12 ++-- > > 1 file changed, 10 insertions(+), 2 deletions(-) > > > > diff --git a/drivers/usb/gadget/f_fastboot.c > b/drivers/usb/gadget/f_fastboot.c > > index a54b4ee..2e87fee 100644 > > --- a/drivers/usb/gadget/f_fastboot.c > > +++ b/drivers/usb/gadget/f_fastboot.c > > @@ -413,8 +413,16 @@ static void cb_getvar(struct usb_ep *ep, struct > usb_request *req) > > else > > strcpy(response, "FAILValue not set"); > > } else { > > - printf("WARNING: unknown variable: %s\n", cmd); > > - strcpy(response, "FAILVariable not implemented"); > > + char envstr[32]; > > + > > + snprintf(envstr, sizeof(envstr) - 1, "fastboot.%s", cmd); > > + s = getenv(envstr); > > + if (s) { > > + strncat(response, s, chars_left); > > + } else { > > + printf("WARNING: unknown variable: %s\n", cmd); > > + strcpy(response, "FAILVariable not implemented"); > > + } > > } > > fastboot_tx_write_str(response); > > } > > Acked-by: Steve Rae > > > -- > Boris Brezillon, Free Electrons > Embedded Linux and Kernel engineering > http://free-electrons.com > ___ > U-Boot mailing list > U-Boot@lists.denx.de > http://lists.denx.de/mailman/listinfo/u-boot > ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH] fastboot: allow retrieving fastboot variables from env
On Thu, Mar 17, 2016 at 9:44 AM, Boris Brezillon < boris.brezil...@free-electrons.com> wrote: > On Thu, 17 Mar 2016 17:21:23 +0100 > Boris Brezillonwrote: > > > From: Rob Herring > > > > Some boards need to expose device specific variable through fastboot > > (to adpat the flashing script depending on hardware revision for > > example). > > > > Provide a way to expose custom fastboot variables. Note that all > > variables meant to be exposed through fastboot should be be prefixed > > with 'fastboot.', the variable should not exceed 32 bytes (including > > the prefix and the trailing '\0') and the variable content should > > fit in the response buffer (60 bytes excluding the 'OKAY' prefix and > > the trailing '\0'). > > > > Signed-off-by: Rob Herring > > [Boris Brezillon: add a commit message] > > Signed-off-by: Boris Brezillon > > > > Signed-off-by: Boris Brezillon > > Sorry for the duplicated SoB. > > > --- > > drivers/usb/gadget/f_fastboot.c | 12 ++-- > > 1 file changed, 10 insertions(+), 2 deletions(-) > > > > diff --git a/drivers/usb/gadget/f_fastboot.c > b/drivers/usb/gadget/f_fastboot.c > > index a54b4ee..2e87fee 100644 > > --- a/drivers/usb/gadget/f_fastboot.c > > +++ b/drivers/usb/gadget/f_fastboot.c > > @@ -413,8 +413,16 @@ static void cb_getvar(struct usb_ep *ep, struct > usb_request *req) > > else > > strcpy(response, "FAILValue not set"); > > } else { > > - printf("WARNING: unknown variable: %s\n", cmd); > > - strcpy(response, "FAILVariable not implemented"); > > + char envstr[32]; > > + > > + snprintf(envstr, sizeof(envstr) - 1, "fastboot.%s", cmd); > > + s = getenv(envstr); > > + if (s) { > > + strncat(response, s, chars_left); > > + } else { > > + printf("WARNING: unknown variable: %s\n", cmd); > > + strcpy(response, "FAILVariable not implemented"); > > + } > > } > > fastboot_tx_write_str(response); > > } > > > > -- > Boris Brezillon, Free Electrons > Embedded Linux and Kernel engineering > http://free-electrons.com > ___ > U-Boot mailing list > U-Boot@lists.denx.de > http://lists.denx.de/mailman/listinfo/u-boot > ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH v2] sunxi: Select CONFIG_OF_BOARD_SETUP from CONFIG_VIDEO
Select OF_BOARD_SETUP when CONFIG_VIDEO is set, rather then having it in almost all our defconfigs. This also fixes it missing from some recently added defconfigs. Signed-off-by: Hans de Goede--- Changes in v2: -Only select CONFIG_OF_BOARD_SETUP when CONFIG_VIDEO is set, rather then always --- board/sunxi/Kconfig| 1 + configs/A10-OLinuXino-Lime_defconfig | 1 - configs/A10s-OLinuXino-M_defconfig | 1 - configs/A13-OLinuXinoM_defconfig | 1 - configs/A13-OLinuXino_defconfig| 1 - configs/A20-OLinuXino-Lime2_defconfig | 1 - configs/A20-OLinuXino-Lime_defconfig | 1 - configs/A20-OLinuXino_MICRO_defconfig | 1 - configs/A20-Olimex-SOM-EVB_defconfig | 1 - configs/Ainol_AW1_defconfig| 1 - configs/Ampe_A76_defconfig | 1 - configs/Auxtek-T003_defconfig | 1 - configs/Auxtek-T004_defconfig | 1 - configs/Bananapi_defconfig | 1 - configs/Bananapro_defconfig| 1 - configs/CHIP_defconfig | 1 - configs/CSQ_CS908_defconfig| 1 - configs/Chuwi_V7_CW0825_defconfig | 1 - configs/Colombus_defconfig | 1 - configs/Cubieboard2_defconfig | 1 - configs/Cubieboard_defconfig | 1 - configs/Cubietruck_defconfig | 1 - configs/Empire_electronix_d709_defconfig | 1 - configs/Hummingbird_A31_defconfig | 1 - configs/Hyundai_A7HD_defconfig | 1 - configs/Lamobo_R1_defconfig| 1 - configs/Linksprite_pcDuino3_Nano_defconfig | 1 - configs/Linksprite_pcDuino3_defconfig | 1 - configs/Linksprite_pcDuino_defconfig | 1 - configs/MK808C_defconfig | 1 - configs/MSI_Primo73_defconfig | 1 - configs/MSI_Primo81_defconfig | 1 - configs/Marsboard_A10_defconfig| 1 - configs/Mele_A1000G_quad_defconfig | 1 - configs/Mele_A1000_defconfig | 1 - configs/Mele_I7_defconfig | 1 - configs/Mele_M3_defconfig | 1 - configs/Mele_M5_defconfig | 1 - configs/Mele_M9_defconfig | 1 - configs/Mini-X_defconfig | 1 - configs/Orangepi_defconfig | 1 - configs/Orangepi_mini_defconfig| 1 - configs/Sinlinx_SinA31s_defconfig | 1 - configs/Sinlinx_SinA33_defconfig | 1 - configs/Sinovoip_BPI_M2_defconfig | 1 - configs/UTOO_P66_defconfig | 1 - configs/Wexler_TAB7200_defconfig | 1 - configs/Wits_Pro_A20_DKT_defconfig | 1 - configs/Wobo_i5_defconfig | 1 - configs/Yones_Toptech_BD1078_defconfig | 1 - configs/ba10_tv_box_defconfig | 1 - configs/dserve_dsrv9703c_defconfig | 1 - configs/ga10h_v1_1_defconfig | 1 - configs/gt90h_v4_defconfig | 1 - configs/i12-tvbox_defconfig| 1 - configs/iNet_3F_defconfig | 1 - configs/iNet_3W_defconfig | 1 - configs/iNet_86VS_defconfig| 1 - configs/inet1_defconfig| 1 - configs/inet97fv2_defconfig| 1 - configs/inet98v_rev2_defconfig | 1 - configs/inet9f_rev03_defconfig | 1 - configs/jesurun_q5_defconfig | 1 - configs/mixtile_loftq_defconfig| 1 - configs/mk802_a10s_defconfig | 1 - configs/mk802_defconfig| 1 - configs/mk802ii_defconfig | 1 - configs/pov_protab2_ips9_defconfig | 1 - configs/q8_a13_tablet_defconfig| 1 - configs/q8_a23_tablet_800x480_defconfig| 1 - configs/q8_a33_tablet_1024x600_defconfig | 1 - configs/q8_a33_tablet_800x480_defconfig| 1 - configs/r7-tv-dongle_defconfig | 1 - configs/sunxi_Gemei_G9_defconfig | 1 - 74 files changed, 1 insertion(+), 73 deletions(-) diff --git a/board/sunxi/Kconfig b/board/sunxi/Kconfig index 5e72fac..6211968 100644 --- a/board/sunxi/Kconfig +++ b/board/sunxi/Kconfig @@ -403,6 +403,7 @@ config AXP_GPIO config VIDEO boolean "Enable graphical uboot console on HDMI, LCD or VGA" + select OF_BOARD_SETUP depends on !MACH_SUN8I_A83T default y ---help--- diff --git a/configs/A10-OLinuXino-Lime_defconfig b/configs/A10-OLinuXino-Lime_defconfig index 6235d1f..af96f5b 100644 --- a/configs/A10-OLinuXino-Lime_defconfig +++ b/configs/A10-OLinuXino-Lime_defconfig @@ -8,7 +8,6 @@ CONFIG_MMC0_CD_PIN="PH1" CONFIG_DEFAULT_DEVICE_TREE="sun4i-a10-olinuxino-lime" # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set CONFIG_SPL=y -CONFIG_OF_BOARD_SETUP=y CONFIG_SYS_EXTRA_OPTIONS="SUNXI_EMAC,AHCI,SATAPWR=SUNXI_GPC(3)" # CONFIG_CMD_IMLS is not set # CONFIG_CMD_FLASH is not set diff --git a/configs/A10s-OLinuXino-M_defconfig
Re: [U-Boot] [PATCH] sunxi: Select OF_BOARD_SETUP from arch/arm/Kconfig
Hi, On 22-03-16 22:58, Ian Campbell wrote: On Tue, 2016-03-22 at 22:56 +0100, Hans de Goede wrote: Select OF_BOARD_SETUP from arch/arm/Kconfig when building for sunxi, rather then having it in all our defconfigs. This also fixes it missing from some recently added defconfigs. Signed-off-by: Hans de GoedeAcked-byL Ian Campbell Actually this is wrong, it causes warnings for boards where CONFIG_VIDEO is not set, v2 coming up ... Regards, Hans ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH] sunxi: Select OF_BOARD_SETUP from arch/arm/Kconfig
On Tue, 2016-03-22 at 22:56 +0100, Hans de Goede wrote: > Select OF_BOARD_SETUP from arch/arm/Kconfig when building for sunxi, > rather then having it in all our defconfigs. This also fixes it > missing > from some recently added defconfigs. > > Signed-off-by: Hans de GoedeAcked-byL Ian Campbell ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH] sunxi: Select OF_BOARD_SETUP from arch/arm/Kconfig
Select OF_BOARD_SETUP from arch/arm/Kconfig when building for sunxi, rather then having it in all our defconfigs. This also fixes it missing from some recently added defconfigs. Signed-off-by: Hans de Goede--- arch/arm/Kconfig | 1 + configs/A10-OLinuXino-Lime_defconfig | 1 - configs/A10s-OLinuXino-M_defconfig | 1 - configs/A13-OLinuXinoM_defconfig | 1 - configs/A13-OLinuXino_defconfig| 1 - configs/A20-OLinuXino-Lime2_defconfig | 1 - configs/A20-OLinuXino-Lime_defconfig | 1 - configs/A20-OLinuXino_MICRO_defconfig | 1 - configs/A20-Olimex-SOM-EVB_defconfig | 1 - configs/Ainol_AW1_defconfig| 1 - configs/Ampe_A76_defconfig | 1 - configs/Auxtek-T003_defconfig | 1 - configs/Auxtek-T004_defconfig | 1 - configs/Bananapi_defconfig | 1 - configs/Bananapro_defconfig| 1 - configs/CHIP_defconfig | 1 - configs/CSQ_CS908_defconfig| 1 - configs/Chuwi_V7_CW0825_defconfig | 1 - configs/Colombus_defconfig | 1 - configs/Cubieboard2_defconfig | 1 - configs/Cubieboard_defconfig | 1 - configs/Cubietruck_defconfig | 1 - configs/Empire_electronix_d709_defconfig | 1 - configs/Hummingbird_A31_defconfig | 1 - configs/Hyundai_A7HD_defconfig | 1 - configs/Lamobo_R1_defconfig| 1 - configs/Linksprite_pcDuino3_Nano_defconfig | 1 - configs/Linksprite_pcDuino3_defconfig | 1 - configs/Linksprite_pcDuino_defconfig | 1 - configs/MK808C_defconfig | 1 - configs/MSI_Primo73_defconfig | 1 - configs/MSI_Primo81_defconfig | 1 - configs/Marsboard_A10_defconfig| 1 - configs/Mele_A1000G_quad_defconfig | 1 - configs/Mele_A1000_defconfig | 1 - configs/Mele_I7_defconfig | 1 - configs/Mele_M3_defconfig | 1 - configs/Mele_M5_defconfig | 1 - configs/Mele_M9_defconfig | 1 - configs/Mini-X_defconfig | 1 - configs/Orangepi_defconfig | 1 - configs/Orangepi_mini_defconfig| 1 - configs/Sinlinx_SinA31s_defconfig | 1 - configs/Sinlinx_SinA33_defconfig | 1 - configs/Sinovoip_BPI_M2_defconfig | 1 - configs/UTOO_P66_defconfig | 1 - configs/Wexler_TAB7200_defconfig | 1 - configs/Wits_Pro_A20_DKT_defconfig | 1 - configs/Wobo_i5_defconfig | 1 - configs/Yones_Toptech_BD1078_defconfig | 1 - configs/ba10_tv_box_defconfig | 1 - configs/dserve_dsrv9703c_defconfig | 1 - configs/ga10h_v1_1_defconfig | 1 - configs/gt90h_v4_defconfig | 1 - configs/i12-tvbox_defconfig| 1 - configs/iNet_3F_defconfig | 1 - configs/iNet_3W_defconfig | 1 - configs/iNet_86VS_defconfig| 1 - configs/inet1_defconfig| 1 - configs/inet97fv2_defconfig| 1 - configs/inet98v_rev2_defconfig | 1 - configs/inet9f_rev03_defconfig | 1 - configs/jesurun_q5_defconfig | 1 - configs/mixtile_loftq_defconfig| 1 - configs/mk802_a10s_defconfig | 1 - configs/mk802_defconfig| 1 - configs/mk802ii_defconfig | 1 - configs/pov_protab2_ips9_defconfig | 1 - configs/q8_a13_tablet_defconfig| 1 - configs/q8_a23_tablet_800x480_defconfig| 1 - configs/q8_a33_tablet_1024x600_defconfig | 1 - configs/q8_a33_tablet_800x480_defconfig| 1 - configs/r7-tv-dongle_defconfig | 1 - configs/sunxi_Gemei_G9_defconfig | 1 - 74 files changed, 1 insertion(+), 73 deletions(-) diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig index e5f57ef..ab986d3 100644 --- a/arch/arm/Kconfig +++ b/arch/arm/Kconfig @@ -531,6 +531,7 @@ config ARCH_SUNXI select DM_KEYBOARD select DM_SERIAL select DM_USB + select OF_BOARD_SETUP select OF_CONTROL select OF_SEPARATE select SPL_STACK_R if !MACH_SUN9I diff --git a/configs/A10-OLinuXino-Lime_defconfig b/configs/A10-OLinuXino-Lime_defconfig index 6235d1f..af96f5b 100644 --- a/configs/A10-OLinuXino-Lime_defconfig +++ b/configs/A10-OLinuXino-Lime_defconfig @@ -8,7 +8,6 @@ CONFIG_MMC0_CD_PIN="PH1" CONFIG_DEFAULT_DEVICE_TREE="sun4i-a10-olinuxino-lime" # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set CONFIG_SPL=y -CONFIG_OF_BOARD_SETUP=y CONFIG_SYS_EXTRA_OPTIONS="SUNXI_EMAC,AHCI,SATAPWR=SUNXI_GPC(3)" # CONFIG_CMD_IMLS is not set # CONFIG_CMD_FLASH is not set diff --git a/configs/A10s-OLinuXino-M_defconfig b/configs/A10s-OLinuXino-M_defconfig index 3cddc12..cba2cfd 100644 ---
Re: [U-Boot] [linux-sunxi] [PATCH] sunxi: Add defconfig for yones toptech bs1078-v2 tablet
Hi, On 22-03-16 22:02, Peter Korsgaard wrote: The yones toptech bs1078-v2 is a 10.1" tablet without any clear markings on the outside, but 'YONESTOPTECH-BS1078' written on the PCB silkscreen. It features a 16:9 1024:600 LCD, A31s SoC, 1GB RAM, 8G NAND, silead gsl3675 touchscreen and a RTL8723AS wifi chip: https://linux-sunxi.org/Yones_Toptech_BS1078_V2 Signed-off-by: Peter KorsgaardThanks, applied. Regards, Hans --- board/sunxi/MAINTAINERS | 5 + configs/Yones_Toptech_BS1078_V2_defconfig | 24 2 files changed, 29 insertions(+) create mode 100644 configs/Yones_Toptech_BS1078_V2_defconfig diff --git a/board/sunxi/MAINTAINERS b/board/sunxi/MAINTAINERS index 5ae5ce6..4370303 100644 --- a/board/sunxi/MAINTAINERS +++ b/board/sunxi/MAINTAINERS @@ -211,3 +211,8 @@ YONES TOPTECH BD1078 BOARD M:Paul Kocialkowski S:Maintained F:configs/Yones_Toptech_BD1078_defconfig + +YONES TOPTECH BS1078 V2 BOARD +M: Peter Korsgaard +S: Maintained +F: configs/Yones_Toptech_BS1078_V2_defconfig diff --git a/configs/Yones_Toptech_BS1078_V2_defconfig b/configs/Yones_Toptech_BS1078_V2_defconfig new file mode 100644 index 000..26f5923 --- /dev/null +++ b/configs/Yones_Toptech_BS1078_V2_defconfig @@ -0,0 +1,24 @@ +CONFIG_ARM=y +CONFIG_ARCH_SUNXI=y +CONFIG_MACH_SUN6I=y +CONFIG_DRAM_CLK=420 +CONFIG_DRAM_ZQ=251 +CONFIG_MMC0_CD_PIN="PA8" +CONFIG_USB0_VBUS_PIN="AXP0-VBUS-ENABLE" +CONFIG_USB0_VBUS_DET="AXP0-VBUS-DETECT" +CONFIG_USB0_ID_DET="PA15" +CONFIG_AXP_GPIO=y +CONFIG_VIDEO_LCD_MODE="x:1024,y:600,depth:24,pclk_khz:7,le:120,ri:180,up:17,lo:15,hs:20,vs:3,sync:3,vmode:0" +CONFIG_VIDEO_LCD_DCLK_PHASE=0 +CONFIG_VIDEO_LCD_BL_EN="PA25" +CONFIG_VIDEO_LCD_BL_PWM="PH13" +CONFIG_VIDEO_LCD_PANEL_LVDS=y +CONFIG_DEFAULT_DEVICE_TREE="sun6i-a31s-yones-toptech-bs1078-v2" +# CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set +CONFIG_SPL=y +# CONFIG_CMD_IMLS is not set +# CONFIG_CMD_FLASH is not set +# CONFIG_CMD_FPGA is not set +CONFIG_CMD_GPIO=y +CONFIG_AXP_DLDO1_VOLT=3300 +CONFIG_USB_MUSB_HOST=y ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH 1/2] sunxi: Turn satapwr on from board_init
On Tue, 2016-03-22 at 21:49 +0100, Hans de Goede wrote: > There are 2 reasons for doing this: > > 1) The main reason for doing this is to move it outside of > board/sunxi/ahci.c, so that it can be used on boards which use > a usb<->sata chip too; > 2) While doing this I realized that doing it from board_init also > meant > doing it much earlier. Some printf get_timer(0) calls show that > the > time between board_init() and scsi_init() is more then 600 ms, > so we can drop the mdelay(500) > > While at it also drop the printf("SUNXI SCSI INIT\n") AHCI init is > noisy enough by itself. > > Signed-off-by: Hans de GoedeBoth: Acked-by: Ian Campbell ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH] sunxi: Fix 2nd usb controller on sun4i/sun7i no longer working
On Mon, 2016-03-21 at 14:50 +0100, Hans de Goede wrote: > The 2nd usb controller on sun4i/sun7i has its base address 0x8000 > bytes from the 1st one, rather then 0x1000. Also the ahb clk gates > are interleaved with the ohci clk-gates introducing a hole between > the clks for usb1 and usb2. > > Signed-off-by: Hans de GoedeAcked-by: Ian Campbell ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH] sunxi: Enable support for the eMMC found on the orangepi plus
On Mon, 2016-03-21 at 22:46 +0100, Hans de Goede wrote: > Hi, > > On 21-03-16 07:05, Chen-Yu Tsai wrote: > > Hi, > > > > On Sun, Mar 20, 2016 at 9:21 PM, Hans de Goede> wrote: > >> This enables support for the eMMC found on the orangepi plus. > >> > >> Signed-off-by: Hans de Goede > >> --- > >> configs/orangepi_plus_defconfig | 2 ++ > >> 1 file changed, 2 insertions(+) > >> > >> diff --git a/configs/orangepi_plus_defconfig > b/configs/orangepi_plus_defconfig > >> index c4885f4..770bd98 100644 > >> --- a/configs/orangepi_plus_defconfig > >> +++ b/configs/orangepi_plus_defconfig > >> @@ -4,6 +4,8 @@ CONFIG_MACH_SUN8I_H3=y > >> CONFIG_DRAM_CLK=672 > >> CONFIG_DRAM_ZQ=3881979 > >> CONFIG_DRAM_ODT_EN=y > >> +CONFIG_MMC0_CD_PIN="PF6" > >> +CONFIG_MMC_SUNXI_SLOT_EXTRA=2 > > > > Does CONFIG_MMC2_PINS also need to be set? > > No there only is one pinmux option for MMC2 on H8, so there is no > need to set this. Acked-by: Ian Campbell ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH] sunxi:Correct the LDO settings for sinovoip-bpi-m3 board
Hi, On 21-03-16 15:28, Vishnu Patekar wrote: Hello, I forgot to post this patch, Thanks to Kevin Chua Soon Jiawho reported that latest mainline u-boot fail to boot and reminded me to post it. For Banana-pi m3, ALDO must not be set to zero, default settings are same as mentioned Sinovoip Bpi-m3 schematic. Thanks, applied. Regards, Hans ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH 1/3] sunxi: Add support for USB vbus pin for USB3
On Fri, 2016-03-18 at 08:55 +0100, Hans de Goede wrote: > The H3 has USB0 - USB3, add support for having a USB vbus pin for > USB3. > > Signed-off-by: Hans de GoedeAll three of these patches: Acked-by: Ian Campbell ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH] arm: sunxi: Add icnova-a20-swac defconfig
Hi, On 21-03-16 09:09, Stefan Roese wrote: The ICnova-A20-SWAC is a baseboard, equipped with the ICnova-A20 SoM from In-Circuit: http://wiki.in-circuit.de/index.php5?title=ICnova_A20_SODIMM http://linux-sunxi.org/In-Circuit_ICnova_A20 This patch adds support for this board, including ethernet, LCD and USB support. Signed-off-by: Stefan RoeseCc: Marcus Heuer Cc: Hans de Goede Cc: Ian Campbell Thanks, applied. Regards, Hans --- board/sunxi/MAINTAINERS | 5 + configs/icnova-a20-swac_defconfig | 21 + 2 files changed, 26 insertions(+) create mode 100644 configs/icnova-a20-swac_defconfig diff --git a/board/sunxi/MAINTAINERS b/board/sunxi/MAINTAINERS index 5ae5ce6..c4fe11f 100644 --- a/board/sunxi/MAINTAINERS +++ b/board/sunxi/MAINTAINERS @@ -121,6 +121,11 @@ M: Chen-Yu Tsai S:Maintained F:configs/Hummingbird_A31_defconfig +ICnova-A20-SWAC BOARD +M: Stefan Roese +S: Maintained +F: configs/icnova-a20-swac_defconfig + ITEAD IBOX BOARD M:Marcus Cooper S:Maintained diff --git a/configs/icnova-a20-swac_defconfig b/configs/icnova-a20-swac_defconfig new file mode 100644 index 000..548a07e --- /dev/null +++ b/configs/icnova-a20-swac_defconfig @@ -0,0 +1,21 @@ +CONFIG_ARM=y +CONFIG_ARCH_SUNXI=y +CONFIG_MACH_SUN7I=y +CONFIG_DRAM_CLK=384 +CONFIG_OLD_SUNXI_KERNEL_COMPAT=y +CONFIG_MMC0_CD_PIN="PI5" +CONFIG_USB0_VBUS_PIN="PG11" +CONFIG_USB0_VBUS_DET="PH7" +CONFIG_USB1_VBUS_PIN="PG10" +CONFIG_VIDEO_LCD_MODE="x:800,y:480,depth:24,pclk_khz:33000,le:45,ri:209,up:22,lo:22,hs:1,vs:1,sync:3,vmode:0" +CONFIG_VIDEO_LCD_POWER="PH22" +CONFIG_VIDEO_LCD_PANEL_LVDS=y +CONFIG_DEFAULT_DEVICE_TREE="sun7i-a20-icnova-swac" +# CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set +CONFIG_SPL=y +CONFIG_SYS_EXTRA_OPTIONS="AXP209_POWER,SUNXI_GMAC,CMD_BMP,CMD_UNZIP" +# CONFIG_CMD_IMLS is not set +# CONFIG_CMD_FLASH is not set +# CONFIG_CMD_FPGA is not set +CONFIG_ETH_DESIGNWARE=y +CONFIG_USB_EHCI_HCD=y ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH] sunxi: Add defconfig for Sinlinx SinA31s
Hi, On 21-03-16 09:39, Chen-Yu Tsai wrote: The Sinlinx A31s SDK is a A31s based module/baseboard development kit. The core module has the SoC, PMIC, DRAM, eMMC and supporting components. There are also pads for UART0, JTAG and I2S. The baseboard has 100 Mbps Ethernet, 5x USB 2.0 host ports via a USB 2.0 hub chip, MMC, HDMI, SPDIF, CIR, audio jacks, 2 tablet-like volume buttons, RS232 style UART and USB OTG (though VBUS is not connected). Various headers are available for other addon modules, such as SDIO WiFi, LCD display, camera sensor, UARTs, I2C, SPI and GPIOs. Signed-off-by: Chen-Yu TsaiThanks, applied. Regards, Hans --- board/sunxi/MAINTAINERS | 6 ++ configs/Sinlinx_SinA31s_defconfig | 21 + 2 files changed, 27 insertions(+) create mode 100644 configs/Sinlinx_SinA31s_defconfig diff --git a/board/sunxi/MAINTAINERS b/board/sunxi/MAINTAINERS index 5ae5ce6..8cb9051 100644 --- a/board/sunxi/MAINTAINERS +++ b/board/sunxi/MAINTAINERS @@ -191,6 +191,12 @@ M: Siarhei Siamashka S:Maintained F:configs/MSI_Primo81_defconfig +SINLINX SINA31s BOARD +M: Chen-Yu Tsai +S: Maintained +F: configs/Sinlinx_SinA31s_defconfig +W: http://linux-sunxi.org/Sinlinx_SinA31s + SINLINX SINA33 BOARD M:Chen-Yu Tsai S:Maintained diff --git a/configs/Sinlinx_SinA31s_defconfig b/configs/Sinlinx_SinA31s_defconfig new file mode 100644 index 000..9254bb2 --- /dev/null +++ b/configs/Sinlinx_SinA31s_defconfig @@ -0,0 +1,21 @@ +CONFIG_ARM=y +CONFIG_ARCH_SUNXI=y +CONFIG_MACH_SUN6I=y +CONFIG_DRAM_CLK=432 +CONFIG_DRAM_ZQ=251 +CONFIG_MMC0_CD_PIN="PA4" +CONFIG_MMC3_PINS="PC" +CONFIG_MMC_SUNXI_SLOT_EXTRA=3 +CONFIG_USB1_VBUS_PIN="" +CONFIG_USB2_VBUS_PIN="" +CONFIG_DEFAULT_DEVICE_TREE="sun6i-a31s-sina31s" +# CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set +CONFIG_SPL=y +CONFIG_OF_BOARD_SETUP=y +CONFIG_SYS_EXTRA_OPTIONS="SUNXI_GMAC" +# CONFIG_CMD_IMLS is not set +# CONFIG_CMD_FLASH is not set +# CONFIG_CMD_FPGA is not set +CONFIG_ETH_DESIGNWARE=y +CONFIG_AXP_DLDO1_VOLT=3300 +CONFIG_USB_EHCI_HCD=y ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH] sunxi: Add defconfig for yones toptech bs1078-v2 tablet
The yones toptech bs1078-v2 is a 10.1" tablet without any clear markings on the outside, but 'YONESTOPTECH-BS1078' written on the PCB silkscreen. It features a 16:9 1024:600 LCD, A31s SoC, 1GB RAM, 8G NAND, silead gsl3675 touchscreen and a RTL8723AS wifi chip: https://linux-sunxi.org/Yones_Toptech_BS1078_V2 Signed-off-by: Peter Korsgaard--- board/sunxi/MAINTAINERS | 5 + configs/Yones_Toptech_BS1078_V2_defconfig | 24 2 files changed, 29 insertions(+) create mode 100644 configs/Yones_Toptech_BS1078_V2_defconfig diff --git a/board/sunxi/MAINTAINERS b/board/sunxi/MAINTAINERS index 5ae5ce6..4370303 100644 --- a/board/sunxi/MAINTAINERS +++ b/board/sunxi/MAINTAINERS @@ -211,3 +211,8 @@ YONES TOPTECH BD1078 BOARD M: Paul Kocialkowski S: Maintained F: configs/Yones_Toptech_BD1078_defconfig + +YONES TOPTECH BS1078 V2 BOARD +M: Peter Korsgaard +S: Maintained +F: configs/Yones_Toptech_BS1078_V2_defconfig diff --git a/configs/Yones_Toptech_BS1078_V2_defconfig b/configs/Yones_Toptech_BS1078_V2_defconfig new file mode 100644 index 000..26f5923 --- /dev/null +++ b/configs/Yones_Toptech_BS1078_V2_defconfig @@ -0,0 +1,24 @@ +CONFIG_ARM=y +CONFIG_ARCH_SUNXI=y +CONFIG_MACH_SUN6I=y +CONFIG_DRAM_CLK=420 +CONFIG_DRAM_ZQ=251 +CONFIG_MMC0_CD_PIN="PA8" +CONFIG_USB0_VBUS_PIN="AXP0-VBUS-ENABLE" +CONFIG_USB0_VBUS_DET="AXP0-VBUS-DETECT" +CONFIG_USB0_ID_DET="PA15" +CONFIG_AXP_GPIO=y +CONFIG_VIDEO_LCD_MODE="x:1024,y:600,depth:24,pclk_khz:7,le:120,ri:180,up:17,lo:15,hs:20,vs:3,sync:3,vmode:0" +CONFIG_VIDEO_LCD_DCLK_PHASE=0 +CONFIG_VIDEO_LCD_BL_EN="PA25" +CONFIG_VIDEO_LCD_BL_PWM="PH13" +CONFIG_VIDEO_LCD_PANEL_LVDS=y +CONFIG_DEFAULT_DEVICE_TREE="sun6i-a31s-yones-toptech-bs1078-v2" +# CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set +CONFIG_SPL=y +# CONFIG_CMD_IMLS is not set +# CONFIG_CMD_FLASH is not set +# CONFIG_CMD_FPGA is not set +CONFIG_CMD_GPIO=y +CONFIG_AXP_DLDO1_VOLT=3300 +CONFIG_USB_MUSB_HOST=y -- 2.7.0 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH 2/2] sunxi: Specify SATAPWR pin for Orangepi Plus
This enables the use of the sata connector in u-boot. Signed-off-by: Hans de Goede--- configs/orangepi_plus_defconfig | 1 + 1 file changed, 1 insertion(+) diff --git a/configs/orangepi_plus_defconfig b/configs/orangepi_plus_defconfig index 08f291c..ff124bd 100644 --- a/configs/orangepi_plus_defconfig +++ b/configs/orangepi_plus_defconfig @@ -17,3 +17,4 @@ CONFIG_CMD_GPIO=y CONFIG_SY8106A_POWER=y CONFIG_USB_EHCI_HCD=y CONFIG_USB1_VBUS_PIN="PG13" +CONFIG_SYS_EXTRA_OPTIONS="SATAPWR=SUNXI_GPG(11)" -- 2.7.3 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH 1/2] sunxi: Turn satapwr on from board_init
There are 2 reasons for doing this: 1) The main reason for doing this is to move it outside of board/sunxi/ahci.c, so that it can be used on boards which use a usb<->sata chip too; 2) While doing this I realized that doing it from board_init also meant doing it much earlier. Some printf get_timer(0) calls show that the time between board_init() and scsi_init() is more then 600 ms, so we can drop the mdelay(500) While at it also drop the printf("SUNXI SCSI INIT\n") AHCI init is noisy enough by itself. Signed-off-by: Hans de Goede--- board/sunxi/ahci.c | 8 board/sunxi/board.c | 4 2 files changed, 4 insertions(+), 8 deletions(-) diff --git a/board/sunxi/ahci.c b/board/sunxi/ahci.c index 6d51b9b..522e54a 100644 --- a/board/sunxi/ahci.c +++ b/board/sunxi/ahci.c @@ -72,14 +72,6 @@ static int sunxi_ahci_phy_init(u32 base) void scsi_init(void) { - printf("SUNXI SCSI INIT\n"); -#ifdef CONFIG_SATAPWR - gpio_request(CONFIG_SATAPWR, "satapwr"); - gpio_direction_output(CONFIG_SATAPWR, 1); - /* Give attached sata device time to power-up to avoid link timeouts */ - mdelay(500); -#endif - if (sunxi_ahci_phy_init(SUNXI_SATA_BASE) < 0) return; diff --git a/board/sunxi/board.c b/board/sunxi/board.c index e16718f..2e2a1f5 100644 --- a/board/sunxi/board.c +++ b/board/sunxi/board.c @@ -90,6 +90,10 @@ int board_init(void) if (ret) return ret; +#ifdef CONFIG_SATAPWR + gpio_request(CONFIG_SATAPWR, "satapwr"); + gpio_direction_output(CONFIG_SATAPWR, 1); +#endif #ifdef CONFIG_MACPWR gpio_request(CONFIG_MACPWR, "macpwr"); gpio_direction_output(CONFIG_MACPWR, 1); -- 2.7.3 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH] usb: gadget: Move CONFIG_USB_GADGET to Kconfig
From: Sam ProtsenkoThe description was borrowed from kernel. "tristate" type was changed to "bool" (I believe we don't support modules for u-boot yet, right?). CONFIG_USB_GADGET requires CONFIG_USB to be defined too, so add it along as well. Some platforms weren't ported though: include/configs/e2220-1170.h include/configs/sunxi-common.h include/configs/xilinx_zynqmp.h CONFIG_USB_GADGET remains in those files as there is no corresponding defconfig files for those and I don't want to break anything. Signed-off-by: Sam Protsenko --- configs/am335x_baltos_defconfig | 2 ++ configs/am335x_boneblack_defconfig | 2 ++ configs/am335x_boneblack_vboot_defconfig | 2 ++ configs/am335x_evm_defconfig | 2 ++ configs/am335x_evm_nor_defconfig | 2 ++ configs/am335x_evm_norboot_defconfig | 2 ++ configs/am335x_evm_spiboot_defconfig | 2 ++ configs/am335x_evm_usbspl_defconfig | 2 ++ configs/am335x_gp_evm_defconfig | 2 ++ configs/am437x_gp_evm_defconfig | 2 ++ configs/am437x_sk_evm_defconfig | 2 ++ configs/am43xx_evm_defconfig | 2 ++ configs/am43xx_evm_ethboot_defconfig | 2 ++ configs/am43xx_evm_qspiboot_defconfig| 2 ++ configs/am43xx_evm_usbhost_boot_defconfig| 2 ++ configs/apalis_t30_defconfig | 1 + configs/bcm11130_defconfig | 2 ++ configs/bcm11130_nand_defconfig | 2 ++ configs/bcm28155_ap_defconfig| 2 ++ configs/bcm28155_w1d_defconfig | 2 ++ configs/beaver_defconfig | 1 + configs/birdland_bav335a_defconfig | 2 ++ configs/birdland_bav335b_defconfig | 2 ++ configs/cgtqmx6eval_defconfig| 2 ++ configs/colibri_t20_defconfig| 1 + configs/colibri_t30_defconfig| 1 + configs/colibri_vf_defconfig | 2 ++ configs/corvus_defconfig | 2 ++ configs/dalmore_defconfig| 1 + configs/dra72_evm_defconfig | 2 ++ configs/dra74_evm_defconfig | 2 ++ configs/dra7xx_evm_defconfig | 2 ++ configs/dra7xx_evm_qspiboot_defconfig| 2 ++ configs/dra7xx_evm_uart3_defconfig | 2 ++ configs/draco_defconfig | 2 ++ configs/gwventana_defconfig | 2 ++ configs/jetson-tk1_defconfig | 1 + configs/kc1_defconfig| 1 + configs/ma5d4evk_defconfig | 2 ++ configs/mx6dlsabreauto_defconfig | 2 ++ configs/mx6dlsabresd_defconfig | 2 ++ configs/mx6qpsabreauto_defconfig | 2 ++ configs/mx6qsabreauto_defconfig | 2 ++ configs/mx6qsabrelite_defconfig | 2 ++ configs/mx6qsabresd_defconfig| 2 ++ configs/mx6sabresd_spl_defconfig | 2 ++ configs/mx7dsabresd_defconfig| 2 ++ configs/nitrogen6dl2g_defconfig | 2 ++ configs/nitrogen6dl_defconfig| 2 ++ configs/nitrogen6q2g_defconfig | 2 ++ configs/nitrogen6q_defconfig | 2 ++ configs/nitrogen6s1g_defconfig | 2 ++ configs/nitrogen6s_defconfig | 2 ++ configs/nyan-big_defconfig | 1 + configs/odroid-xu3_defconfig | 1 + configs/odroid_defconfig | 1 + configs/omap3_beagle_defconfig | 2 ++ configs/omap3_logic_defconfig| 2 ++ configs/omap5_uevm_defconfig | 2 ++ configs/origen_defconfig | 1 + configs/p2371-_defconfig | 1 + configs/p2371-2180_defconfig | 1 + configs/p2571_defconfig | 1 + configs/pengwyn_defconfig| 2 ++ configs/pxm2_defconfig | 2 ++ configs/rastaban_defconfig | 2 ++ configs/rut_defconfig| 2 ++ configs/s5p_goni_defconfig | 2 ++ configs/s5pc210_universal_defconfig | 1 + configs/sama5d2_xplained_mmc_defconfig | 2 ++ configs/sama5d2_xplained_spiflash_defconfig | 2 ++ configs/sama5d3xek_mmc_defconfig | 2 ++ configs/sama5d3xek_nandflash_defconfig | 2 ++ configs/sama5d3xek_spiflash_defconfig| 2 ++ configs/sama5d4_xplained_mmc_defconfig | 2 ++ configs/sama5d4_xplained_nandflash_defconfig | 2 ++ configs/sama5d4_xplained_spiflash_defconfig | 2 ++ configs/sama5d4ek_mmc_defconfig | 2 ++ configs/sama5d4ek_nandflash_defconfig| 2 ++ configs/sama5d4ek_spiflash_defconfig | 2 ++ configs/smartweb_defconfig | 2 ++ configs/sniper_defconfig
Re: [U-Boot] [PATCH] armv8/ls2080ardb: Update DDR timing to support more UDIMMs
On 03/20/2016 08:03 PM, Shengzhou Liu wrote: > Optimize DDR timing for good margins to support new Transcend > and Apacer DDR4 UDIMM besides current Micron UDIMM. > > Verified 1866MT/s and 2133MT/s with following UDIMM on LS2080ARDB. > - Micron UDIMM: MTA18ASF1G72AZ-2G1A1Z > - Apacer UDIMM: 78.C1GM4.AF10B > - Transcend UDIMM: TS1GLH72V1H > > Signed-off-by: Shengzhou Liu> --- > board/freescale/ls2080ardb/ddr.h | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/board/freescale/ls2080ardb/ddr.h > b/board/freescale/ls2080ardb/ddr.h > index bda9d4a..7274778 100644 > --- a/board/freescale/ls2080ardb/ddr.h > +++ b/board/freescale/ls2080ardb/ddr.h > @@ -30,8 +30,8 @@ static const struct board_specific_parameters udimm0[] = { >*/ > {2, 1350, 0, 4, 6, 0x0708090B, 0x0C0D0E09,}, > {2, 1666, 0, 4, 8, 0x08090B0D, 0x0E10100C,}, > - {2, 1900, 0, 4, 8, 0x090A0C0E, 0x1012120D,}, > - {2, 2300, 0, 4, 9, 0x0A0B0C10, 0x1114140E,}, > + {2, 1900, 0, 6, 0xA, 0x0B0C0E11, 0x1214140F,}, > + {2, 2300, 0, 6, 0xB, 0x0C0D0F12, 0x14161610,}, > {} > }; > > Please test lower speeds as well, if new DIMMs are to be supported. York ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH V2] fsl: esdhc: support driver model
On 03/15/2016 03:23 AM, Peng Fan wrote: > Support Driver Model for fsl esdhc driver. > > 1. Introduce a new structure struct fsl_esdhc_priv > 2. Refactor fsl_esdhc_initialize which is originally used by board code. >- Introduce fsl_esdhc_init to be common usage for DM and non-DM >- Introduce fsl_esdhc_cfg_to_priv to build the bridge for non-DM part. >- The original API for board code is still there, but we use > 'fsl_esdhc_cfg_to_priv' and 'fsl_esdhc_init' to serve it. > 3. All the functions are changed to use 'struct fsl_esdhc_priv', except >fsl_esdhc_initialize. > 4. Since clk driver is not implemented, use mxc_get_clock to geth >the clk and fill 'priv->sdhc_clk'. > > Has been tested on i.MX6UL 14X14 EVK board: > " > =>dm tree > > simple_bus [ + ]| `-- aips-bus@0210 > mmc[ + ]| |-- usdhc@0219 > mmc[ + ]| |-- usdhc@02194000 > > => mmc list > FSL_SDHC: 0 (SD) > FSL_SDHC: 1 (SD) > " > > Signed-off-by: Peng Fan> Cc: York Sun > Cc: Yangbo Lu > Cc: Hector Palacios > Cc: Eric Nelson > Cc: Stefano Babic > Cc: Fabio Estevam > Cc: Pantelis Antoniou > Cc: Simon Glass > --- > > V2: > restructure the V1 patch. > Introduce fsl_esdhc_priv structure. > Introduce code to handle cd-gpios and non-removable. > > drivers/mmc/fsl_esdhc.c | 253 > > 1 file changed, 213 insertions(+), 40 deletions(-) > > diff --git a/drivers/mmc/fsl_esdhc.c b/drivers/mmc/fsl_esdhc.c > index ea5f4bf..6fadde1 100644 > --- a/drivers/mmc/fsl_esdhc.c > +++ b/drivers/mmc/fsl_esdhc.c > @@ -20,6 +20,9 @@ > +static int fsl_esdhc_probe(struct udevice *dev) > +{ > + struct mmc_uclass_priv *upriv = dev_get_uclass_priv(dev); > + struct fsl_esdhc_priv *priv = dev_get_priv(dev); > + const void *fdt = gd->fdt_blob; > + int node = dev->of_offset; > + fdt_addr_t addr; > + unsigned int val; > + int ret; > + > + addr = dev_get_addr(dev); > + if (addr == FDT_ADDR_T_NONE) > + return -EINVAL; > + > + priv->esdhc_base = (phys_addr_t)addr; > + priv->dev = dev; > + > + val = fdtdec_get_int(fdt, node, "bus-width", -1); > + if (val == 8) > + priv->bus_width = 8; > + else if (val == 4) > + priv->bus_width = 4; > + else > + priv->bus_width = 1; > + > + if (fdt_get_property(fdt, node, "non-removable", NULL)) { > + priv->non_removable = 1; > + } else { > + priv->non_removable = 0; > + gpio_request_by_name_nodev(fdt, node, "cd-gpios", 0, > +>cd_gpio, GPIOD_IS_IN); > + } > + > + /* > + * TODO: > + * Because lack of clk driver, if SDHC clk is not enabled, > + * need to enable it first before this driver is invoked. > + * > + * we use MXC_ESDHC_CLK to get clk freq. > + * If one would like to make this function work, > + * the aliases should be provided in dts as this: > + * > + * aliases { > + * mmc0 = > + * mmc1 = > + * mmc2 = > + * mmc3 = > + * }; > + * Then if your board only supports mmc2 and mmc3, but we can > + * correctly get the seq as 2 and 3, then let mxc_get_clock > + * work as expected. > + */ > + priv->sdhc_clk = mxc_get_clock(MXC_ESDHC_CLK + dev->seq); Peng, This seems to be problematic on powerpc platforms. Have you tested (at least compiled) for any of them (eg. T2080, T4240, P1022, MPC8536, etc.)? York ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH v2 00/11] armv8: ls2080aqds: Enable QSPI boot support
On 03/06/2016 11:56 PM, Yuan Yao wrote: > From: Yuan Yao> > This series add support for QSPI boot on LS2080AQDS. > > Yuan Yao (11): > armv8: ls2080aqds: Select QSPI CLK div via SCFG > configs: ls2080a_common: Remove duplicate NOR configs > configs: ls2080aqds: disable IFC NOR & QIXIS when QSPI enable > configs: ls2080aqds: Enable QSPI flash support > dm: dts: ls2080aqds: Add QSPI dts node > armv8: ls2080aqds: Config QSPI pin mux via FPGA in NAND boot > configs: ls2080a: Increase load image len in NAND boot > ls2080aqds_nand_defconfig: Enable QSPI & its dependence > armv8: ls2080aqds: Enable QSPI boot support > Changed in v2: >merged the patch: >0009-armv8-ls2080aqds-Enable-QSPI-boot-support.patch >0010-ls2080aqds-Enable-support-for-boot-from-QSPI.patch >0012-LS2080QDS-QSPI-boot-fix-issues.patch >in this patch. > board/ls2080qds: add the procedure to deply QSPI image. > New add in v2. > freescale: cmd: qixis: tidy up the duplicated code > > arch/arm/dts/fsl-ls2080a-qds.dts | 14 +++ > arch/arm/dts/fsl-ls2080a.dtsi | 10 + > arch/arm/include/asm/arch-fsl-layerscape/cpu.h | 4 ++ > .../include/asm/arch-fsl-layerscape/immap_lsch3.h | 3 ++ > board/freescale/common/qixis.c | 12 ++ > board/freescale/ls2080aqds/README | 35 ++ > board/freescale/ls2080aqds/ls2080aqds.c| 16 > common/board_f.c | 6 +-- > configs/ls2080aqds_nand_defconfig | 9 + > configs/ls2080aqds_qspi_defconfig | 10 + > include/configs/ls2080a_common.h | 11 ++ > include/configs/ls2080a_simu.h | 7 > include/configs/ls2080aqds.h | 43 > +- > 13 files changed, 159 insertions(+), 21 deletions(-) > create mode 100644 configs/ls2080aqds_qspi_defconfig > Yuan, This set was sent before Jagan's comment on your v1 patch. Please let me know if you need to update your patches. York ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH v2] sunxi: Fix gmac not working due to cpu_eth_init no longer being called
cpu_eth_init is no longer called for dm enabled eth drivers, this was causing the sunxi gmac eth controller to no longer work in u-boot. This commit fixes this by calling the clock, reset and pinmux setup function from s_init() and enabling the phy power pin (if any) from board_init(). The enabling of phy power cannot be done from s_init because it uses dm and dm is not ready yet at this point. Note that the mdelay is dropped as the phy gets enabled much earlier now, so it is no longer needed. Signed-off-by: Hans de GoedeAcked-by: Ian Campbell Tested-by: Karsten Merker --- Changes in v2: -Move enabling of phy power to board_init() --- arch/arm/cpu/armv7/sunxi/board.c| 28 +--- arch/arm/include/asm/arch-sunxi/sys_proto.h | 6 +- board/sunxi/board.c | 5 + board/sunxi/gmac.c | 14 +- 4 files changed, 12 insertions(+), 41 deletions(-) diff --git a/arch/arm/cpu/armv7/sunxi/board.c b/arch/arm/cpu/armv7/sunxi/board.c index e80785b..7653148 100644 --- a/arch/arm/cpu/armv7/sunxi/board.c +++ b/arch/arm/cpu/armv7/sunxi/board.c @@ -152,6 +152,7 @@ void s_init(void) timer_init(); gpio_init(); i2c_init_board(); + eth_init_board(); } #ifdef CONFIG_SPL_BUILD @@ -259,30 +260,3 @@ void enable_caches(void) dcache_enable(); } #endif - -#ifdef CONFIG_CMD_NET -/* - * Initializes on-chip ethernet controllers. - * to override, implement board_eth_init() - */ -int cpu_eth_init(bd_t *bis) -{ - __maybe_unused int rc; - -#ifdef CONFIG_MACPWR - gpio_request(CONFIG_MACPWR, "macpwr"); - gpio_direction_output(CONFIG_MACPWR, 1); - mdelay(200); -#endif - -#ifdef CONFIG_SUNXI_GMAC - rc = sunxi_gmac_initialize(bis); - if (rc < 0) { - printf("sunxi: failed to initialize gmac\n"); - return rc; - } -#endif - - return 0; -} -#endif diff --git a/arch/arm/include/asm/arch-sunxi/sys_proto.h b/arch/arm/include/asm/arch-sunxi/sys_proto.h index 9df3744..a373319 100644 --- a/arch/arm/include/asm/arch-sunxi/sys_proto.h +++ b/arch/arm/include/asm/arch-sunxi/sys_proto.h @@ -24,6 +24,10 @@ void sdelay(unsigned long); void return_to_fel(uint32_t lr, uint32_t sp); /* Board / SoC level designware gmac init */ -int sunxi_gmac_initialize(bd_t *bis); +#if !defined CONFIG_SPL_BUILD && defined CONFIG_SUNXI_GMAC +void eth_init_board(void); +#else +static inline void eth_init_board(void) {} +#endif #endif diff --git a/board/sunxi/board.c b/board/sunxi/board.c index 80eae9c..e16718f 100644 --- a/board/sunxi/board.c +++ b/board/sunxi/board.c @@ -90,6 +90,11 @@ int board_init(void) if (ret) return ret; +#ifdef CONFIG_MACPWR + gpio_request(CONFIG_MACPWR, "macpwr"); + gpio_direction_output(CONFIG_MACPWR, 1); +#endif + /* Uses dm gpio code so do this here and not in i2c_init_board() */ return soft_i2c_board_init(); } diff --git a/board/sunxi/gmac.c b/board/sunxi/gmac.c index 4e222d8..69eb8ff 100644 --- a/board/sunxi/gmac.c +++ b/board/sunxi/gmac.c @@ -6,7 +6,7 @@ #include #include -int sunxi_gmac_initialize(bd_t *bis) +void eth_init_board(void) { int pin; struct sunxi_ccm_reg *const ccm = @@ -79,16 +79,4 @@ int sunxi_gmac_initialize(bd_t *bis) for (pin = SUNXI_GPA(26); pin <= SUNXI_GPA(27); pin++) sunxi_gpio_set_cfgpin(pin, SUN6I_GPA_GMAC); #endif - -#ifdef CONFIG_DM_ETH - return 0; -#else -# ifdef CONFIG_RGMII - return designware_initialize(SUNXI_GMAC_BASE, PHY_INTERFACE_MODE_RGMII); -# elif defined CONFIG_GMII - return designware_initialize(SUNXI_GMAC_BASE, PHY_INTERFACE_MODE_GMII); -# else - return designware_initialize(SUNXI_GMAC_BASE, PHY_INTERFACE_MODE_MII); -# endif -#endif } -- 2.7.3 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH 2/6] net: mvpp2.c: Add Marvell mvpp2 network driver for Armada 375
Hit Stefan, Sorry for the delay. On Tue, Mar 15, 2016 at 11:35 AM, Stefan Roesewrote: > This patch adds support for the mvpp2 ethernet controller which is integrated > in the Marvell Armada 375 SoC. This port is based on the Linux driver (v4.4), > which has been stripped of the in U-Boot unused portions. > > Tested on the Marvell Armada 375 eval board db-88f6720. > > Signed-off-by: Stefan Roese > Cc: Luka Perkov > Cc: Joe Hershberger > --- > drivers/net/Kconfig |8 + > drivers/net/Makefile |1 + > drivers/net/mvpp2.c | 4222 > ++ > 3 files changed, 4231 insertions(+) > create mode 100644 drivers/net/mvpp2.c > > diff --git a/drivers/net/Kconfig b/drivers/net/Kconfig > index bc2f51d..bcb4c96 100644 > --- a/drivers/net/Kconfig > +++ b/drivers/net/Kconfig > @@ -94,6 +94,14 @@ config ETH_DESIGNWARE > 100Mbit and 1 Gbit operation. You must enable CONFIG_PHYLIB to > provide the PHY (physical media interface). > > +config MVPP2 > + bool "Marvell Armada 375 network interface support" > + depends on ARMADA_375 > + select PHYLIB > + help > + This driver supports the network interface units in the > + Marvell ARMADA 375 SoC. > + > config PCH_GBE > bool "Intel Platform Controller Hub EG20T GMAC driver" > depends on DM_ETH && DM_PCI > diff --git a/drivers/net/Makefile b/drivers/net/Makefile > index 33a81ee..fbedd04 100644 > --- a/drivers/net/Makefile > +++ b/drivers/net/Makefile > @@ -42,6 +42,7 @@ obj-$(CONFIG_MPC5xxx_FEC) += mpc5xxx_fec.o > obj-$(CONFIG_MPC512x_FEC) += mpc512x_fec.o > obj-$(CONFIG_MVGBE) += mvgbe.o > obj-$(CONFIG_MVNETA) += mvneta.o > +obj-$(CONFIG_MVPP2) += mvpp2.o > obj-$(CONFIG_NATSEMI) += natsemi.o > obj-$(CONFIG_DRIVER_NE2000) += ne2000.o ne2000_base.o > obj-$(CONFIG_DRIVER_AX88796L) += ax88796.o ne2000_base.o > diff --git a/drivers/net/mvpp2.c b/drivers/net/mvpp2.c > new file mode 100644 > index 000..09dfc7e > --- /dev/null > +++ b/drivers/net/mvpp2.c > @@ -0,0 +1,4222 @@ > +/* > + * Driver for Marvell PPv2 network controller for Armada 375 SoC. > + * > + * Copyright (C) 2014 Marvell > + * > + * Marcin Wojtas > + * > + * U-Boot version: > + * Copyright (C) 2016 Stefan Roese > + * > + * This file is licensed under the terms of the GNU General Public > + * License version 2. This program is licensed "as is" without any > + * warranty of any kind, whether express or implied. > + */ > + > +#include > +#include > +#include > +#include > +#include > +#include > +#include > +#include > +#include > +#include > +#include > +#include > +#include > +#include > +#include > +#include > +#include > + > +DECLARE_GLOBAL_DATA_PTR; > + > +#if !defined(CONFIG_PHYLIB) > +# error Marvell mvpp2 requires PHYLIB > +#endif This isn't needed since you "select" PHYLIB in the Kconfig. > + > +/* Some linux -> U-Boot compatibility stuff */ > +#define netdev_err(dev, fmt, args...) \ > + printf(fmt, ##args) > +#define netdev_warn(dev, fmt, args...) \ > + printf(fmt, ##args) > +#define netdev_info(dev, fmt, args...) \ > + printf(fmt, ##args) > +#define netdev_dbg(dev, fmt, args...) \ > + printf(fmt, ##args) > + > +#define ETH_ALEN 6 /* Octets in one ethernet addr */ > + > +#define ETH_P_IP 0x0800 /* Internet Protocol packet */ Already available in include/net.h as PROT_IP > +#define ETH_P_PPP_SES 0x8864 /* PPPoE session messages */ Add this to include/net.h as PROT_PPP_SES > +#define ETH_P_ARP 0x0806 /* Address Resolution packet*/ Already available in include/net.h as PROT_ARP > +#define ETH_P_IPV6 0x86DD /* IPv6 over bluebook */ Add this to include/net.h as PROT_IPV6 > + > +#define __verify_pcpu_ptr(ptr) \ > +do { \ > + const void __percpu *__vpp_verify = (typeof((ptr) + 0))NULL;\ > + (void)__vpp_verify; \ > +} while (0) > + > +#define VERIFY_PERCPU_PTR(__p) \ > +({ \ > + __verify_pcpu_ptr(__p); \ > + (typeof(*(__p)) __kernel __force *)(__p); \ > +}) > + > +#define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); }) > +#define smp_processor_id() 0 > +#define num_present_cpus() 1 > +#define for_each_present_cpu(cpu) \ > + for ((cpu) = 0; (cpu) < 1; (cpu)++) > + > +#define NET_SKB_PADmax(32, MVPP2_CPU_D_CACHE_LINE_SIZE) > + > +#define CONFIG_NR_CPUS 1 > +#define ETH_HLEN
Re: [U-Boot] [linux-sunxi] Re: Latest U-boot branch not booting on Hummingbird A31
HI, On 21-03-16 11:25, Chen-Yu Tsai wrote: Hi, On Mon, Mar 21, 2016 at 6:18 PM, Hans de Goedewrote: Hi, On 21-03-16 11:06, Chen-Yu Tsai wrote: Hi, On Mon, Mar 21, 2016 at 5:57 PM, Hans de Goede wrote: HI, On 21-03-16 10:49, wens Tsai wrote: Hi Hans, I updated U-boot on my boards to your latest sunxi-wip branch: f965340 ("sunxi: Enable support for the eMMC found on the orangepi plus") My Hummingbird A31 fails to boot after this. See log: HELLO! BOOT0 is starting! boot0 version : 3.0.0 reg_addr 0x01f00100 =0x reg_addr 0x01f00104 =0x reg_addr 0x01f00108 =0x reg_addr 0x01f0010c =0x reg_addr 0x01f00110 =0x reg_addr 0x01f00114 =0x [DRAM]ver 1.03 clk = 312 cpu 0 pmu 0 dram size =1024 sum=0x31776fa8 src_sum=0x31776fa8 Ready to disable icache. Jump to secend Boot. [ 0.209] U-Boot 2011.09-rc1 (Jun 17 2014 - 17:30:56) Allwinner Technology [ 0.217]version: 1.1.0 [ 0.220]pmbus: ready [ 0.222]PMU: AXP221 [ 0.225]PMU: AXP22x found [ 0.227]PMU: bat ratio = 100 [ 0.231]PMU: dcdc3 1260 [ 0.233]PMU: pll1 1008 Mhz dcdc1_vol = 3000 dcdc2_vol = 1200 dcdc3_vol = 1260 dcdc4_vol = 1200 dcdc5_vol = 1500 aldo1_vol = 3000 aldo2_vol = 1800 aldo3_vol = 3000 eldo3_vol = 1800 find power_sply to end fel key old mode run key detect no key found no key input dram_para_set start dram_para_set end [ 0.277]DRAM: 1 GiB relocation Offset is: 15b25000 donn't initialize ther user_gpio (main_key:boot_init_gpio) deu_mode1 not exist. lcdgamma4iep for lcd1 not exist. DRV_DISP_Init: opened [ 0.542]fetch script data boot_disp.output_type fail [ 0.547]fetch script data boot_disp.output_mode fail [ 0.552]fetch script data boot_disp.auto_hpd fail [ 0.557]lcd0_para.lcd_used=1 workmode = 0 [ 0.603]NAND: NAND_UbootInit NB1 : enter NAND_LogicInit not burn nand partition table! NB1 : nftl num: 2 init nftl: 0 NB1 : NAND_LogicInit ok, result = 0x0 [ 1.268]sunxi flash init ok probe mmc0 if exist SUNXI SD/MMC: 0 Man 1d4144 Snr d3602657 SD 0.2 boot0 capacity: 0KB,boot1 capacity: 0KB boot0 magic = eGON.BT0蜡讕 set next system status DRV_DISP_Exit: closed sunxi_board_close_source NAND_UbootExit NB1 : NAND_LogicExit reset cpu HELLO! BOOT0 is starting! boot0 version : 3.0.0 reg_addr 0x01f00100 =0x7347 reg_addr 0x01f00104 =0x703b reg_addr 0x01f00108 =0x5aa5a55a reg_addr 0x01f0010c =0x00ff reg_addr 0x01f00110 =0x00ff reg_addr 0x01f00114 =0x00ff eraly jump fel U-Boot SPL 2016.03-00320-geeea041 (Mar 21 2016 - 15:16:34) DRAM: 1024 MiB Trying to boot from MMC1 and hangs... geeea041 is the SinA31s patch I have on top of your sunxi-wip branch. I bisected it down to 107fb76 ("sunxi: Fix gmac not working due to cpu_eth_init no longer being called"). Not sure why this commit fails though. Hmm, can you try commenting out these 2 lines in arch/arm/cpu/armv7/sunxi/board.c : #ifdef CONFIG_MACPWR gpio_request(CONFIG_MACPWR, "macpwr"); gpio_direction_output(CONFIG_MACPWR, 1); #endif Around line 103 ? That is the only bit which has changed in the SPL path due to this patch. This fixes the problem. Thanks. I'm guessing it's a bad idea to call the generic GPIO functions, which are DM based, in SPL? When building the SPL CONFIG_DM_GPIO is not set, and there are non DM implementations for the SPL in drivers/gpio/sunxi_gpio.c So the functions should work, and the fact that you get to "Trying to boot from MMC1" Shows that at least the SPL does not crash at this code, because that is done way earlier (before the first message is printed on the serial console, the same function also sets up the uart muxing). So I do not believe that the problem is actually calling the gpio_request() (nop in non DM mode) nor gpio_direction_output() in general. Which would lead to the conclusion that the problem is the changing of the gpio pin value before u-boot proper has loaded, which is a bit weird. Note that commenting out these lines will likely lead to a non working ethernet on the board. If it does not then you do not need CONFIG_MACPWR and it could be that you're driving some $random pin high causing issues. Ethernet works with these 2 lines commented. The schematics show an external pull-up on the PHY reset pin, so this GPIO is only used to reset the PHY by driving it low. Driving it high shouldn't cause any issues. I've figured out the cause of why CONFIG_MACPWR all of a sudden makes the Hummingbird A31 not boot. My recent changes make any board which has CONFIG_MACPWR set not boot. Your hunch about using dm-gpio code from the SPL was close, but the problem is actually not in the SPL but in the main u-boot, in SPL we use non dm gpio code, but in main u-boot we do use dm for gpio, and the place where I added the gpio calls for CONFIG_MACPWR get called before dm is setup, that is why that broke things. I'll send a v2 of the patch
Re: [U-Boot] [PATCH] armv8: ls2080a: update fdt path for fsl-mc node
On 03/02/2016 07:01 PM, Stuart Yoder wrote: > > >> -Original Message- >> From: Prabhakar Kushwaha >> Sent: Wednesday, March 02, 2016 8:45 PM >> To: Stuart Yoder; u-boot@lists.denx.de >> Cc: york sun ; Yang-Leo Li ; Stuart >> Yoder >> >> Subject: RE: [PATCH] armv8: ls2080a: update fdt path for fsl-mc node >> >> >>> -Original Message- >>> From: Stuart Yoder [mailto:stuart.yo...@nxp.com] >>> Sent: Thursday, March 03, 2016 4:07 AM >>> To: u-boot@lists.denx.de >>> Cc: york sun ; Prabhakar Kushwaha >>> ; Yang-Leo Li ; >>> Stuart Yoder >>> Subject: [PATCH] armv8: ls2080a: update fdt path for fsl-mc node >>> >>> From: Stuart Yoder >>> >>> The fsl-mc node has been moved under /soc, so update the path references >>> accordingly. Backwards compatibility is retained for /fsl-mc. >>> >>> Delete backwards compatibility for the completely obsolete /fsl,dprc@0. >>> >>> Signed-off-by: Stuart Yoder >> >> How will backward compatibility maintained for older Linux version which has >> previous >> device tree format.. > > As you can see in the patch, we first check /soc/fsl-mc. If that is not > there we check /fsl-mc. So, both will work. > > Use of /fsl,dprc@0 I think was Freescale-internal only and there is > no actual use of it remaining. > Prabhakar, Are you OK with Stuart's answer? York ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH] eth: dtsec: fix TBI ANA setting bug in dtsec_configure_serdes()
On 12/13/2015 11:07 PM, Xie Shaohui-B21989 wrote: > Hi, > > As mentioned, the value 0x4001 is the desired one in AN3869 for SGMII setting, > quoted as below: > " Program TBI ANA = 0x4001 (SGMII) or 0x01A0 (1000BASE-X). " > > I think the AN3869 should be followed, change SGMII setting just because it > worked on P2041rdb is not a good reason. > > To distinguish SGMII from other connections should be the way to program TBI > ANA, > This is also follow the AN3869. > > Best Regards, > Shaohui Xie > > Looks like this patch is dead. I will mark is NA. York ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] Newbie SPL question for socfpga_sockit
On 03/20/2016 11:42 AM, Marek Vasut wrote: >> >> Sorry, I know that doesn't help. So let's walk through my workflow. I am >> not using any Altera tools when I build. >> >> $make socfpga_de0_nano_soc_defconfig >> $make u-boot-with-spl.sfp >> $dd if=u-boot-with-spl.sfp of=/dev/sdb3 >> >> My gcc is: arm-linux-gnueabi-gcc (Ubuntu/Linaro 4.7.3-12ubuntu1) 4.7.3 >> >> Has the board ever worked for you at all? Can you try this image: >> >> https://rocketboards.org/foswiki/view/Documentation/AtlasSoCSdCardImage >> >> Dinh > > I just ported U-Boot to another customer board. I noticed QSPI has > problems and USB can be flaky. That's the standard cache issue we > have, disabling dcache fixed that. > > I am starting to wonder whether we're hitting some corner case here. > Maybe we should eventually try and trace all the register reads and > writes generated by the DDR calibration code both in old and new SPL > and make a diff to see if something really did change. > > Dinh, can you share the marking on the SoC and the DRAMs on your board? > My SoC is: 5CSEMA4U23C6N CACAU1525A DRAMs are: ISSI 1510 IS43TR16256A 15HBL K080 P4482100QER2 TWN Dinh ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH 1/3] ARM: uniphier: fix README instruction for updating U-Boot via TFTP
Commit 3cb9abc9c512 ("ARM: uniphier: update U-Boot file names in workflow") missed to update these two sentences. Fix them now. Replace u-boot-spl-dtb.bin and u-boot-dtb.img with u-boot-spl.bin and u-boot.img, respectively. Signed-off-by: Masahiro Yamada--- doc/README.uniphier | 8 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/doc/README.uniphier b/doc/README.uniphier index 8d043be..47863a4 100644 --- a/doc/README.uniphier +++ b/doc/README.uniphier @@ -80,8 +80,8 @@ Write two files to the NAND device as follows: - u-boot.img at the offset address 0x0001 If a TFTP server is available, the images can be easily updated. -Just copy the u-boot-spl-dtb.bin and u-boot-dtb.img to the TFTP public -directory, and then run the following command at the U-Boot command line: +Just copy the u-boot-spl.bin and u-boot.img to the TFTP public directory, +and then run the following command at the U-Boot command line: => run nandupdate @@ -94,8 +94,8 @@ Write two files to the Boot partition 1 of the eMMC device as follows: - u-boot.img at the offset address 0x0001 If a TFTP server is available, the images can be easily updated. -Just copy the u-boot-spl-dtb.bin and u-boot-dtb.img to the TFTP public -directory, and then run the following command at the U-Boot command line: +Just copy the u-boot-spl.bin and u-boot.img to the TFTP public directory, +and then run the following command at the U-Boot command line: => run emmcupdate -- 1.9.1 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH 2/3] ARM: uniphier: add NOR boot support
This allows to boot from NOR flash (or SRAM) with help of an external loader (NOR-loader). Signed-off-by: Masahiro Yamada--- arch/arm/mach-uniphier/boot-mode/boot-mode-ld4.c | 2 +- arch/arm/mach-uniphier/boot-mode/boot-mode-sld3.c | 2 +- include/configs/uniphier.h| 3 +++ 3 files changed, 5 insertions(+), 2 deletions(-) diff --git a/arch/arm/mach-uniphier/boot-mode/boot-mode-ld4.c b/arch/arm/mach-uniphier/boot-mode/boot-mode-ld4.c index 8334373..ef52d69 100644 --- a/arch/arm/mach-uniphier/boot-mode/boot-mode-ld4.c +++ b/arch/arm/mach-uniphier/boot-mode/boot-mode-ld4.c @@ -43,7 +43,7 @@ struct boot_device_info boot_device_table[] = { {BOOT_DEVICE_NONE, "Reserved"}, {BOOT_DEVICE_NONE, "Reserved"}, {BOOT_DEVICE_NONE, "Reserved"}, - {BOOT_DEVICE_NONE, "Reserved"}, + {BOOT_DEVICE_NOR, "NOR Boot"}, }; static int get_boot_mode_sel(void) diff --git a/arch/arm/mach-uniphier/boot-mode/boot-mode-sld3.c b/arch/arm/mach-uniphier/boot-mode/boot-mode-sld3.c index b0f3f9a..0258fae 100644 --- a/arch/arm/mach-uniphier/boot-mode/boot-mode-sld3.c +++ b/arch/arm/mach-uniphier/boot-mode/boot-mode-sld3.c @@ -12,7 +12,7 @@ #include "boot-device.h" static struct boot_device_info boot_device_table[] = { - {BOOT_DEVICE_NONE, "Reserved"}, + {BOOT_DEVICE_NOR, "NOR boot"}, {BOOT_DEVICE_NONE, "External Master"}, {BOOT_DEVICE_NONE, "Reserved"}, {BOOT_DEVICE_NONE, "Reserved"}, diff --git a/include/configs/uniphier.h b/include/configs/uniphier.h index 076c733..dd7b352 100644 --- a/include/configs/uniphier.h +++ b/include/configs/uniphier.h @@ -261,6 +261,7 @@ #define CONFIG_SPL_FRAMEWORK #define CONFIG_SPL_SERIAL_SUPPORT +#define CONFIG_SPL_NOR_SUPPORT #define CONFIG_SPL_NAND_SUPPORT #define CONFIG_SPL_MMC_SUPPORT @@ -270,6 +271,8 @@ #define CONFIG_SPL_BOARD_INIT #define CONFIG_SYS_NAND_U_BOOT_OFFS0x1 + +#define CONFIG_SYS_UBOOT_BASE 0x6 #define CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR0x80 #define CONFIG_SPL_MAX_FOOTPRINT 0x1 -- 1.9.1 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH 3/3] ARM: uniphier: switch to raw U-Boot image
Now everything is done to load a raw U-Boot proper image instead of an mkimage-processed one (as far as I tested on NAND, eMMC, NOR). The SPL already knows the load address of the U-Boot proper without parsing its uImage header because the load address is defined by CONFIG_SYS_TEXT_BASE, assuming that the two images are generated from the same build. My main motivation of this switch is to use u-boot-with-spl.bin, a concatenation of u-boot-spl.bin and u-boot.bin. (I wish there were a concatenation of u-boot-spl.bin and u-boot.img...) Anyway, this commit would be useful for one-shot image burn. Signed-off-by: Masahiro Yamada--- doc/README.uniphier| 22 -- include/configs/uniphier.h | 9 ++--- 2 files changed, 22 insertions(+), 9 deletions(-) diff --git a/doc/README.uniphier b/doc/README.uniphier index 47863a4..49045a0 100644 --- a/doc/README.uniphier +++ b/doc/README.uniphier @@ -75,12 +75,17 @@ to use your favorite compiler. Burn U-Boot images to NAND -- -Write two files to the NAND device as follows: +Write the following to the NAND device: + - spl/u-boot-spl.bin at the offset address 0x - - u-boot.img at the offset address 0x0001 + - u-boot.bin at the offset address 0x0001 + +or + + - u-boot-with-spl.bin at the offset address 0x If a TFTP server is available, the images can be easily updated. -Just copy the u-boot-spl.bin and u-boot.img to the TFTP public directory, +Just copy the u-boot-spl.bin and u-boot.bin to the TFTP public directory, and then run the following command at the U-Boot command line: => run nandupdate @@ -89,12 +94,17 @@ and then run the following command at the U-Boot command line: Burn U-Boot images to eMMC -- -Write two files to the Boot partition 1 of the eMMC device as follows: +Write the following to the Boot partition 1 of the eMMC device: + - spl/u-boot-spl.bin at the offset address 0x - - u-boot.img at the offset address 0x0001 + - u-boot.bin at the offset address 0x0001 + +or + + - u-boot-with-spl.bin at the offset address 0x If a TFTP server is available, the images can be easily updated. -Just copy the u-boot-spl.bin and u-boot.img to the TFTP public directory, +Just copy the u-boot-spl.bin and u-boot.bin to the TFTP public directory, and then run the following command at the U-Boot command line: => run emmcupdate diff --git a/include/configs/uniphier.h b/include/configs/uniphier.h index dd7b352..5f3d6b8 100644 --- a/include/configs/uniphier.h +++ b/include/configs/uniphier.h @@ -61,6 +61,7 @@ #define CONFIG_SYS_MAX_FLASH_SECT 256 #define CONFIG_SYS_MONITOR_BASE0 +#define CONFIG_SYS_MONITOR_LEN 0x0008 /* 512KB */ #define CONFIG_SYS_FLASH_BASE 0 /* @@ -233,12 +234,12 @@ "mmc erase 0 800 &&"\ "tftpboot u-boot-spl.bin &&"\ "mmc write $loadaddr 0 80 &&" \ - "tftpboot u-boot.img &&"\ + "tftpboot u-boot.bin &&"\ "mmc write $loadaddr 80 780\0" \ "nandupdate=nand erase 0 0x0010 &&" \ "tftpboot u-boot-spl.bin &&"\ "nand write $loadaddr 0 0x0001 &&" \ - "tftpboot u-boot.img &&"\ + "tftpboot u-boot.bin &&"\ "nand write $loadaddr 0x0001 0x000f\0" \ LINUXBOOT_ENV_SETTINGS @@ -272,9 +273,11 @@ #define CONFIG_SYS_NAND_U_BOOT_OFFS0x1 -#define CONFIG_SYS_UBOOT_BASE 0x6 +/* subtract sizeof(struct image_header) */ +#define CONFIG_SYS_UBOOT_BASE (0x6 - 0x40) #define CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR0x80 +#define CONFIG_SPL_TARGET "u-boot-with-spl.bin" #define CONFIG_SPL_MAX_FOOTPRINT 0x1 #endif /* __CONFIG_UNIPHIER_COMMON_H__ */ -- 1.9.1 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH 0/3] ARM: uniphier: more patches for bulk updates for v2016.05-rc1
Masahiro Yamada (3): ARM: uniphier: fix README instruction for updating U-Boot via TFTP ARM: uniphier: add NOR boot support ARM: uniphier: switch to raw U-Boot image arch/arm/mach-uniphier/boot-mode/boot-mode-ld4.c | 2 +- arch/arm/mach-uniphier/boot-mode/boot-mode-sld3.c | 2 +- doc/README.uniphier | 26 --- include/configs/uniphier.h| 10 +++-- 4 files changed, 28 insertions(+), 12 deletions(-) -- 1.9.1 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] Please pull u-boot-fsl-qoriq master
Tom, The following changes since commit f23baa572f96e1e13d7f1a3c8addb61b5d0dbd29: cmd_dhry.c: Use lldiv for vax_mips calculation as well (2016-03-17 10:14:25 -0400) are available in the git repository at: git://git.denx.de/u-boot-fsl-qoriq.git master for you to fetch changes up to 6dedcedd6442295428ea7f02b0d30739499858a2: driver: net: fsl-mc: Return from DPAA_exit if boot_status !=0 (2016-03-21 12:42:15 -0700) Alexander Graf (1): arm64: Fix layerscape mmu setup Alison Wang (2): arm: ls102xa: fdt: Update FSL_QSPI_COMPAT and FSL_DSPI_COMPAT arm: ls102xa: Enable CONFIG_SYS_CONSOLE_IS_IN_ENV support Aneesh Bansal (3): drivers/crypto/fsl: correct error checking in run_descriptor drivers/crypto/fsl: add constructs for protocol descriptors drivers/crypto/fsl: define structures for PDB Prabhakar Kushwaha (4): armv8: lsch3: Enable WUO config for RNI-20 node driver: net: ldpaa_eth: Add support of PHY framework armv8: ls2085a: Remove phy configuration from QDS and RDB driver: net: fsl-mc: Return from DPAA_exit if boot_status !=0 Pratiyush Srivastava (1): armv8: fsl-layerscape: Updating entries in Serdes Table Shaohui Xie (1): armv8: ls2080ardb: invert irq pins polarity for AQR405 PHY Shengzhou Liu (2): driver/ddr/fsl: Add address parity support for DDR4 UDIMM/discrete driver/ddr/fsl: Add workaround for erratum A-009803 Stuart Yoder (5): armv8: ls2080a: remove obsolete stream ID partitioning support armv8: ls2080a: update stream ID partitioning info pci: make pci_get_hose_head() available to external users pci/layerscape: add defines for LUT pci/layerscape: set LUT and msi-map for discovered PCI devices Wenbin Song (3): freescale: vid: Return i2c mux to default channel armv8/ls1043aqds: Return i2c mux to default chennel armv8/ls1043aqds: Enable ID_EEPROM support for ls1043aqds Yangbo Lu (1): armv8/fsl-lsch2: fix sdhc clock frequency value York Sun (1): boards: ls2080: Fix default bootargs arch/arm/cpu/armv8/cache_v8.c |2 +- arch/arm/cpu/armv8/fsl-layerscape/cpu.c|5 + arch/arm/cpu/armv8/fsl-layerscape/fdt.c| 113 -- .../arm/cpu/armv8/fsl-layerscape/fsl_lsch2_speed.c |4 + arch/arm/cpu/armv8/fsl-layerscape/lowlevel.S |8 + arch/arm/cpu/armv8/fsl-layerscape/ls2080a_serdes.c | 14 +- arch/arm/include/asm/arch-fsl-layerscape/config.h |3 + .../include/asm/arch-fsl-layerscape/immap_lsch3.h |8 + .../asm/arch-fsl-layerscape/ls2080a_stream_id.h| 55 +++-- arch/arm/include/asm/arch-ls102xa/config.h |4 +- arch/arm/lib/ccn504.S | 21 ++ board/freescale/common/vid.c | 12 +- board/freescale/ls1043aqds/ls1043aqds.c|6 +- board/freescale/ls2080aqds/eth.c | 25 --- board/freescale/ls2080ardb/eth_ls2080rdb.c | 39 board/freescale/ls2080ardb/ls2080ardb.c|4 + doc/README.fsl-ddr |9 + drivers/crypto/fsl/desc.h | 80 drivers/crypto/fsl/desc_constr.h | 27 +++ drivers/crypto/fsl/jr.c|2 +- drivers/ddr/fsl/ctrl_regs.c| 55 - drivers/ddr/fsl/fsl_ddr_gen4.c | 44 +++- drivers/ddr/fsl/options.c | 15 +- drivers/net/fsl-mc/mc.c|3 +- drivers/net/ldpaa_eth/ldpaa_eth.c | 121 --- drivers/pci/pcie_layerscape.c | 217 +--- include/configs/ls1021aqds.h |1 + include/configs/ls1021atwr.h |1 + include/configs/ls1043aqds.h | 10 + include/configs/ls2080a_common.h |2 +- include/configs/ls2080ardb.h |3 +- include/fsl_ddr_sdram.h| 11 +- include/pci.h |1 + 33 files changed, 591 insertions(+), 334 deletions(-) Thanks. York ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH v2 2/3] armv8/ls1043aqds: Return i2c mux to default chennel
On 03/08/2016 09:47 PM, Wenbin Song wrote: > Return i2c mux to the default channel after accessing retimer. > > Signed-off-by: Wenbin Song> --- > Change for v2: > -Rework the commit message and the subject > --- > board/freescale/ls1043aqds/ls1043aqds.c | 6 -- > 1 file changed, 4 insertions(+), 2 deletions(-) > Applied to u-boot-fsl-qoriq, awaiting upstream. Thanks. York ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH v2 1/3] freescale: vid: Return i2c mux to default channel
On 03/08/2016 09:47 PM, Wenbin Song wrote: > IR chip is on one of the channels on multiplexed I2C-bus. > Reset to default channel after accessing. > > Signed-off-by: Wenbin Song> --- > Changes for v2: > -Rework the commit message and the tag int the subject. > --- > board/freescale/common/vid.c | 12 +--- > 1 file changed, 9 insertions(+), 3 deletions(-) Applied to u-boot-fsl-qoriq, awaiting upstream. Thanks. York ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH 1/2][v2] driver: net: ldpaa_eth: Add support of PHY framework
On 02/24/2016 03:32 AM, Prabhakar Kushwaha wrote: > This patch integrate DPAA2 ethernet driver existing PHY framework. > > Call phy_connect and phy_config as per available DPMAC id defined > in SerDes Protcol. > > Signed-off-by: Pratiyush Mohan Srivastava> Signed-off-by: Prabhakar Kushwaha > --- > Changes for v2: Incorporated Joe Hershberger's comments > > drivers/net/ldpaa_eth/ldpaa_eth.c | 121 > +++--- > 1 file changed, 87 insertions(+), 34 deletions(-) Applied to u-boot-fsl-qoriq, awaiting upstream. Thanks. York ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH] ls102xa: fdt: Update FSL_QSPI_COMPAT and FSL_DSPI_COMPAT
On 02/28/2016 10:59 PM, Alison Wang wrote: > As the compatible property values for QSPI and DSPI dts nodes > are changed in kernel, FSL_QSPI_COMPAT and FSL_DSPI_COMPAT > need to be updated too. > > Signed-off-by: Alison Wang> --- > arch/arm/include/asm/arch-ls102xa/config.h | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > Applied to u-boot-fsl-qoriq, awaiting upstream. Thanks. York ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH][v2] armv8: ls2080ardb: invert irq pins polarity for AQR405 PHY
On 01/27/2016 11:46 PM, shh@gmail.com wrote: > From: Shaohui Xie> > To use AQR405 PHY's interrupt, we need to invert the relative IRQ pins > polarity by setting IRQCR register, because AQR405 interrupt is low > active but GIC accepts high active. > > Signed-off-by: Shaohui Xie > --- > changes in v2: > 1. move Interrupt register offset define to immap_lsch3.h. > > arch/arm/include/asm/arch-fsl-layerscape/immap_lsch3.h | 4 > board/freescale/ls2080ardb/ls2080ardb.c| 4 > include/configs/ls2080ardb.h | 1 + > 3 files changed, 9 insertions(+) Applied to u-boot-fsl-qoriq, awaiting upstream. Thanks. York ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH 1/2 v2] driver/ddr/fsl: Add address parity support for DDR4 UDIMM/discrete
On 03/10/2016 01:46 AM, Shengzhou Liu wrote: > Add support of address parity for DDR4 UDIMM or discrete memory. > It requires to configurate corresponding MR5[2:0] and TIMING_CFG_7[PAR_LAT]. > Parity can be turned on/off by hwconfig, e.g. hwconfig=fsl_ddr:parity=on. > > Signed-off-by: Shengzhou Liu> --- > v2: Integrated York's comments. > > doc/README.fsl-ddr | 9 > drivers/ddr/fsl/ctrl_regs.c | 55 > - > drivers/ddr/fsl/options.c | 15 +++-- > include/fsl_ddr_sdram.h | 11 - > 4 files changed, 82 insertions(+), 8 deletions(-) Minor adjustment of commit message format. Applied to u-boot-fsl-qoriq, awaiting upstream. Thanks. York ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH] arm64: Fix layerscape mmu setup
On 03/21/2016 12:26 PM, Alexander Graf wrote: > With commit 7985cdf we converted all systems except for the Layerscape > SoCs to the generic descriptor table based page table setup. > > On the Layerscape SoCs however, we just provide an empty table stub > and do the setup ourselves. To reserve enough memory for the tables, > we need to override the default counting mechanism which would end up > with an empty table because we have no maps. > > Fixes: 7985cdf > Reported-by: York Sun> CC: Alison Wang > CC: Prabhakar Kushwaha > Signed-off-by: Alexander Graf > --- > arch/arm/cpu/armv8/cache_v8.c | 2 +- > arch/arm/cpu/armv8/fsl-layerscape/cpu.c | 5 + > 2 files changed, 6 insertions(+), 1 deletion(-) > Applied to u-boot-fsl-qoriq, awaiting upstream. Thanks. York ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH][v2] driver: net: fsl-mc: Return from DPAA_exit if boot_status !=0
On 03/21/2016 01:50 AM, Prabhakar Kushwaha wrote: > Return value of get_mc_boot_status() in case of failure is not necessary > to be -1. > > So update the error condition check. > > Signed-off-by: Prabhakar Kushwaha> Reported-by: Yao Yuan > --- > Changes for v2: Incorporated York's comments > - Added comments > > drivers/net/fsl-mc/mc.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > Applied to u-boot-fsl-qoriq, awaiting upstream. Thanks. York ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH v2 3/3] armv8/ls1043aqds: Enable ID_EEPROM support for ls1043aqds
On 03/08/2016 09:47 PM, Wenbin Song wrote: > Signed-off-by: Wenbin Song> --- > Changes for v2: > -Rework the subject > --- > include/configs/ls1043aqds.h | 10 ++ > 1 file changed, 10 insertions(+) > Applied to u-boot-fsl-qoriq, awaiting upstream. Thanks. York ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH] ARM: tegra210: set PLLE_PTS bit when enabling PLLE
From: Stephen WarrenThis bit needs to be set for system suspend/resume to work. This setting will be documented in an updated TRM at some time in the future. Signed-off-by: Stephen Warren --- arch/arm/mach-tegra/tegra210/clock.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/arch/arm/mach-tegra/tegra210/clock.c b/arch/arm/mach-tegra/tegra210/clock.c index df92bdce889e..f0052e7934a1 100644 --- a/arch/arm/mach-tegra/tegra210/clock.c +++ b/arch/arm/mach-tegra/tegra210/clock.c @@ -1104,6 +1104,7 @@ static int tegra_pllref_enable(void) #define PLLE_MISC_IDDQ_SWCTL (1 << 14) #define PLLE_MISC_IDDQ_OVERRIDE_VALUE (1 << 13) #define PLLE_MISC_LOCK (1 << 11) +#define PLLE_PTS (1 << 8) #define PLLE_MISC_KCP(x) (((x) & 0x3) << 6) #define PLLE_MISC_VREG_CTRL(x) (((x) & 0x3) << 2) #define PLLE_MISC_KVCO (1 << 0) @@ -1157,6 +1158,7 @@ int tegra_plle_enable(void) writel(value, NV_PA_CLK_RST_BASE + PLLE_BASE); value = readl(NV_PA_CLK_RST_BASE + PLLE_MISC); + value |= PLLE_PTS; value &= ~PLLE_MISC_KCP(3); value &= ~PLLE_MISC_VREG_CTRL(3); value &= ~PLLE_MISC_KVCO; -- 2.7.4 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH] armv8: lsch3: Enable WUO config for RNI-20 node
On 01/24/2016 10:39 PM, Prabhakar Kushwaha wrote: > Enable wuo config to accelerate coherent ordered writes for LS2080A > and LS2085A. > > WRIOP IP is connected to RNI-20 Node. > > Signed-off-by: Prabhakar Kushwaha> --- > arch/arm/cpu/armv8/fsl-layerscape/lowlevel.S | 8 > arch/arm/include/asm/arch-fsl-layerscape/config.h | 2 ++ > arch/arm/lib/ccn504.S | 21 + > 3 files changed, 31 insertions(+) > Applied to u-boot-fsl-qoriq, awaiting upstream. Thanks. York ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH] arm: ls102xa: Enable CONFIG_SYS_CONSOLE_IS_IN_ENV support
On 03/07/2016 08:09 PM, Alison Wang wrote: > CONFIG_SYS_CONSOLE_IS_IN_ENV needs to be enabled, so we could set stdout > environment variable to specify the vga for the console output when > LCD/HDMI is connected to the boards. > > Signed-off-by: Alison Wang> --- > include/configs/ls1021aqds.h | 1 + > include/configs/ls1021atwr.h | 1 + > 2 files changed, 2 insertions(+) Applied to u-boot-fsl-qoriq, awaiting upstream. Thanks. York ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH] armv8/fsl-lsch2: fix sdhc clock frequency value
On 02/15/2016 07:03 PM, Yangbo Lu wrote: > The eSDHC could select to use platform clock or peripheral clock to > generate SD clock. The default selection is platform clock. So, fix > the clock frequency value that's calculated for eSDHC. > > Signed-off-by: Yangbo Lu> --- > arch/arm/cpu/armv8/fsl-layerscape/fsl_lsch2_speed.c | 4 > 1 file changed, 4 insertions(+) > Applied to u-boot-fsl-qoriq, awaiting upstream. Thanks. York ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH 4/5 v6] pci/layerscape: add defines for LUT
On 03/10/2016 09:13 AM, Stuart Yoder wrote: > From: Stuart Yoder> > The per-PCI controller LUT (Look-Up-Table) is a 32-entry table > that maps PCI requester IDs (bus/dev/fun) to a stream ID. > > Add defines for the register offsets. > > Signed-off-by: Stuart Yoder > --- > -v6: first version of this patch, just add the LUT #defines > > .../include/asm/arch-fsl-layerscape/immap_lsch3.h |4 > 1 file changed, 4 insertions(+) > Applied to u-boot-fsl-qoriq, awaiting upstream. Thanks. York ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH 2/2][v2] armv8: ls2085a: Remove phy configuration from QDS and RDB
On 02/24/2016 03:32 AM, Prabhakar Kushwaha wrote: > From: Prabhakar Kushwaha> > As phy_connect and phy_config are being called from DPAA2 driver. > Remove calling of mentioned function from board file. > > Signed-off-by: Pratiyush Mohan Srivastava > Signed-off-by: Prabhakar Kushwaha > --- > Changes for v2: Sending as it is > > board/freescale/ls2080aqds/eth.c | 25 --- > board/freescale/ls2080ardb/eth_ls2080rdb.c | 39 > -- > 2 files changed, 64 deletions(-) Applied to u-boot-fsl-qoriq, awaiting upstream. Thanks. York ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH] [v3] armv8: fsl-layerscape: Updating entries in Serdes Table
On 03/18/2016 04:44 AM, Pratiyush Mohan Srivastava wrote: > The serdes protocol entries in Serdes table 1 for protocol > 0x03, 0x33, 0x35 and in Serdes table 2 for protocols 0x45 > and 0x47 are updated to reflect the entries in > current Reference Manual. > > Signed-off-by: Pratiyush Mohan Srivastava> Reported-by: Jose Rivera > --- > Changes for v3 > Rebased to latest master Branch > > arch/arm/cpu/armv8/fsl-layerscape/ls2080a_serdes.c | 14 +++--- > 1 file changed, 7 insertions(+), 7 deletions(-) Applied to u-boot-fsl-qoriq, awaiting upstream. Thanks. York ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH 2/2 v2] driver/ddr/fsl: Add workaround for erratum A-009803
On 03/10/2016 01:46 AM, Shengzhou Liu wrote: > During initial DDR training, false parity errors may be detected. > This patch adds workaround to fix the erratum. > Tested on LS2085QDS and LS2080RDB. > > Signed-off-by: Shengzhou Liu> --- > v2: Integrated York's comments. > > arch/arm/include/asm/arch-fsl-layerscape/config.h | 1 + > drivers/ddr/fsl/fsl_ddr_gen4.c| 44 > --- > 2 files changed, 40 insertions(+), 5 deletions(-) > Applied to u-boot-fsl-qoriq, awaiting upstream. Thanks. York ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH 5/5 v6] pci/layerscape: set LUT and msi-map for discovered PCI devices
On 03/10/2016 09:13 AM, Stuart Yoder wrote: > From: Stuart Yoder> > msi-map properties are used to tell an OS how PCI requester IDs are > mapped to ARM SMMU stream IDs. > > for all PCI devices discovered in a system: > -allocate a LUT (look-up-table) entry in that PCI controller > -allocate a stream ID for the device > -program and enable a LUT entry (maps PCI requester id to stream ID) > -set the msi-map property on the controller reflecting the >LUT mapping > > basic bus scanning loop/logic was taken from drivers/pci/pci.c > pci_hose_scan_bus(). > > Signed-off-by: Stuart Yoder > --- > -v6: squashed lut, stream id, and msi-map helper functions > (previously patches 4-6) into this patch > > drivers/pci/pcie_layerscape.c | 147 > + > 1 file changed, 147 insertions(+) > Applied to u-boot-fsl-qoriq, awaiting upstream. Thanks. York ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot