Re: [U-Boot] [PATCH] tegra: mmc: Set the bus width correctly
> "Simon" == Simon Glasswrites: Simon> The driver currently does not reset bit 5 of the hostctl Simon> register even if the MMC stack requests it. Then means that Simon> once a bus width of 8 is selected it is not possible to change Simon> it back to 1. This breaks 'mmc rescan' which needs to start off Simon> with a bus width of 1. Simon> The problem was surfaced by enabling CONFIG_DM_MMC_OPS on Simon> tegra. Without this option the MMC stack fully reinits the Simon> driver on a 'mmc rescan'. But with this option driver model Simon> does not re-probe a driver once it has been probed once. Simon> Fix the driver to honour the request. Simon> Signed-off-by: Simon Glass --- Tested-by: Peter Chubb Simon> drivers/mmc/tegra_mmc.c | 2 +- 1 file changed, 1 insertion(+), Simon> 1 deletion(-) Simon> diff --git a/drivers/mmc/tegra_mmc.c b/drivers/mmc/tegra_mmc.c Simon> index 338e42b528..7d945a172e 100644 --- Simon> a/drivers/mmc/tegra_mmc.c +++ b/drivers/mmc/tegra_mmc.c @@ Simon> -438,7 +438,7 @@ static int tegra_mmc_set_ios(struct udevice Simon> *dev) else if (mmc->bus_width == 4) ctrl |= (1 << 1); else - Simon> ctrl &= ~(1 << 1); + ctrl &= ~(1 << 1 | 1 << 5); Simon> writeb(ctrl, >reg->hostctl); debug("mmc_set_ios: Simon> hostctl = %08X\n", ctrl); -- 2.13.0.506.g27d5fe0cd-goog Simon> -- Dr Peter Chubb Tel: +61 2 9490 5852 http://ts.data61.csiro.au/ Trustworthy Systems Group Data61 (formerly NICTA) ___ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot
Re: [U-Boot] u-boot-flasher fails with current u-boot
> "Simon" == Simon Glasswrites: Simon> The good news is I found my Jetson-TK1 and I can repeat your Simon> problem. Cool. So it's not just me (phew) >> >> Tegra124 (Jetson TK1) # mmc rescan Simon> Why are you running 'mmc rescan'? Is this because the MMC has Simon> changed? Any mmc command fails except 'mmc part' and 'mmc list'. 'mmc rescan' was just one example that should work. Tegra124 (Jetson TK1) # mmc dev tegra_mmc_send_cmd_bounced: MMC Timeout Interrupt status0x0001 Interrupt status enable 0x003b Interrupt signal enable 0x0002 Present status 0x01fb02f6 mmc_init: -1, time 8042 Tegra124 (Jetson TK1) # mmc info mmc_init: -1, time 4 -- Dr Peter Chubb Tel: +61 2 9490 5852 http://ts.data61.csiro.au/ Trustworthy Systems Group Data61 (formerly NICTA) ___ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot
Re: [U-Boot] u-boot-flasher fails with current u-boot
> "Peter" == Peter Chubbwrites: > "Simon" == Simon Glass writes: Simon> Oh dear. I cannot find my board but will see if I can repeat Simon> this on a beaver. Peter> If there's any additional logging you'd like me to collect on Peter> the Jetson, let me know. I tried to reproduce this this morning. Today, even trying to exec the U-Boot without flashing fails. So, ./tegra-uboot-flasher exec jetson-tk1 with a current u-boot gives an inoperative eMMC. In the boot header I see: U-Boot 2017.05-00769-g0e513e788f (Jun 08 2017 - 09:26:27 +1000) TEGRA124 Model: NVIDIA Jetson TK1 Board: NVIDIA Jetson TK1 DRAM: 2 GiB MMC: sdhci@700b0400: 1, sdhci@700b0600: 0 Then: Tegra124 (Jetson TK1) # mmc rescan tegra_mmc_send_cmd_bounced: MMC Timeout Interrupt status0x0001 Interrupt status enable 0x003b Interrupt signal enable 0x0002 Present status 0x01fb02f6 mmc_init: -1, time 8042 Peter C -- Dr Peter Chubb Tel: +61 2 9490 5852 http://ts.data61.csiro.au/ Trustworthy Systems Group Data61 (formerly NICTA) ___ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot
Re: [U-Boot] u-boot-flasher fails with current u-boot
> "Simon" == Simon Glasswrites: : Simon> Oh dear. I cannot find my board but will see if I can repeat Simon> this on a beaver. Thanks. If there's any additional logging you'd like me to collect on the Jetson, let me know. Peter C -- Dr Peter Chubb Tel: +61 2 9490 5852 http://ts.data61.csiro.au/ Trustworthy Systems Group Data61 (formerly NICTA) ___ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot
Re: [U-Boot] [PATCH] DTS: Enable top USB port on CEI-TK1-SOM
> "Allen" == Allen Martinwrites: Allen> On Tue, Feb 07, 2017 at 01:57:47PM +1100, Peter Chubb wrote: >> From: Peter Chubb >> >> + usb@7d004000 { >> +status = "okay"; >> + }; >> + >> + usb-phy@7d004000 { >> +status = "okay"; >> + }; Allen> Shouldn't these have a vbus-gpio and vbus-supply? U-Boot seems to work OK without -- I can see storage devices plugged into the port. -- Dr Peter Chubb Tel: +61 2 9490 5852 http://ts.data61.csiro.au/ Trustworthy Systems Group Data61 (formerly NICTA) ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] net, cmd: fix misaligned cache operation warning
> "Joe" == Joe Hershbergerwrites: >> >> Lacking a define for CONFIG_SYS_CACHELINE_SIZE first. Joe> https://patchwork.ozlabs.org/patch/669691/ Joe> ...is the approach I prefer to take instead of this patch. Is there anything more I need to do to push this patch? -- Dr Peter Chubb Tel: +61 2 9490 5852 http://ts.data61.csiro.au/ Trustworthy Systems Group Data61 (formerly NICTA) ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH v3] net: Fix cache misalignment message after network load operations
> "Heiko" == Heiko Schocherwrites: Heiko> Hello Peter, Am 14.09.2016 um 05:49 schrieb Heiko> peter.ch...@data61.csiro.au: >> After any operation that downloads a file (e.g., pxe get, or dhcp), >> the buffer containing the downloaded data is flushed. This is >> unnecessary and annoying. Unnecessary, because the network driver >> should already have fliushed the cache for the DMAed area, and >> annoying because it generates a cache misalignment message. >> >> Signed-off-by: Peter Chubb >> --- >> cmd/net.c | 3 --- 1 file changed, 3 deletions(-) Heiko> I posted a fix for this here: Heiko> http://patchwork.ozlabs.org/patch/663489/ Heiko> but I did not remove the flush operation ... can we really Heiko> remove it? I believe so -- removing it was suggested by Joe Hershberger. Heiko> If so, you can add my Acked-by: Heiko Schocher OK. thanks. -- Dr Peter Chubb Tel: +61 2 9490 5852 http://ts.data61.csiro.au/ Trustworthy Systems Group Data61 (formerly NICTA) ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH v3] net: Fix cache misalignment message after network load operations
After any operation that downloads a file (e.g., pxe get, or dhcp), the buffer containing the downloaded data is flushed. This is unnecessary and annoying. Unnecessary, because the network driver should already have fliushed the cache for the DMAed area, and annoying because it generates a cache misalignment message. Signed-off-by: Peter Chubb--- cmd/net.c |3 --- 1 file changed, 3 deletions(-) Index: u-boot/cmd/net.c === --- u-boot.orig/cmd/net.c 2016-09-07 13:50:46.616156851 +1000 +++ u-boot/cmd/net.c2016-09-07 19:18:18.962450874 +1000 @@ -243,9 +243,6 @@ static int netboot_common(enum proto_t p return CMD_RET_SUCCESS; } - /* flush cache */ - flush_cache(load_addr, size); - bootstage_mark(BOOTSTAGE_ID_NET_LOADED); rcode = bootm_maybe_autostart(cmdtp, argv[0]); ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH v2] Fix cache misalignment after network load operations
> "Fabio" == Fabio Estevamwrites: Fabio> On Tue, Sep 13, 2016 at 10:30 PM, Fabio> wrote: >> After any operation that downloads a file (e.g., pxe get, or dhcp), >> the buffer containing the downloaded data is flushed. This patch >> rounds up the flushed size to a cacheline boundary, preventing a >> cache misalignment message from u-boot. Fabio> Looks like you missed to update the commit log for v2 as you Fabio> are no longer flushing the cache :-) Arrgh. Thanks for this -- will respin and resubmit. Fabio> Also, in the Subject line it is always good practice to start Fabio> with the subsystem name, so something like: net: Remove Fabio> flush_cache() operation Will do. Peter C -- Dr Peter Chubb Tel: +61 2 9490 5852 http://ts.data61.csiro.au/ Trustworthy Systems Group Data61 (formerly NICTA) ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH v2] rtl8169: fix cache misalignment message on transmit.
The call to flush cache on the transmit buffer was misplaced (for very short packets) and asked to flush less than a cacheline. Move the flush cache call to after a short packet has been padded to minimum length (so the padding is flushed too), and round the size up to a cacheline. Signed-off-by: Peter ChubbAcked-by: Joe Hershberger --- drivers/net/rtl8169.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/drivers/net/rtl8169.c b/drivers/net/rtl8169.c index 1cc0b40..a3f4423 100644 --- a/drivers/net/rtl8169.c +++ b/drivers/net/rtl8169.c @@ -629,11 +629,12 @@ static int rtl_send_common(pci_dev_t dev, unsigned long dev_iobase, /* point to the current txb incase multiple tx_rings are used */ ptxb = tpc->Tx_skbuff[entry * MAX_ETH_FRAME_SIZE]; memcpy(ptxb, (char *)packet, (int)length); - rtl_flush_buffer(ptxb, length); while (len < ETH_ZLEN) ptxb[len++] = '\0'; + rtl_flush_buffer(ptxb, ALIGN(len, RTL8169_ALIGN)); + tpc->TxDescArray[entry].buf_Haddr = 0; #ifdef CONFIG_DM_ETH tpc->TxDescArray[entry].buf_addr = cpu_to_le32( -- 2.9.3 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH v2] Fix cache misalignment after network load operations
After any operation that downloads a file (e.g., pxe get, or dhcp), the buffer containing the downloaded data is flushed. This patch rounds up the flushed size to a cacheline boundary, preventing a cache misalignment message from u-boot. Signed-off-by: Peter Chubb--- cmd/net.c |3 --- 1 file changed, 3 deletions(-) Index: u-boot/cmd/net.c === --- u-boot.orig/cmd/net.c 2016-09-07 13:50:46.616156851 +1000 +++ u-boot/cmd/net.c2016-09-07 19:18:18.962450874 +1000 @@ -243,9 +243,6 @@ static int netboot_common(enum proto_t p return CMD_RET_SUCCESS; } - /* flush cache */ - flush_cache(load_addr, size); - bootstage_mark(BOOTSTAGE_ID_NET_LOADED); rcode = bootm_maybe_autostart(cmdtp, argv[0]); ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH] Fix fastboot boot address
Fastboot loads an image at CONFIG_FASTBOOT_BUF_ADDR, but currently tells do_bootm() to look for an image at $loadaddr. This breaks if CONFIG_FASTBOOT_BUF_ADDR is different from the current user-set loadaddr. Instead, tell do_bootm() to pick up the image where it was laoded. Signed-off-by: Peter Chubb--- drivers/usb/gadget/f_fastboot.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/usb/gadget/f_fastboot.c b/drivers/usb/gadget/f_fastboot.c index 2160b1c..6d02248 100644 --- a/drivers/usb/gadget/f_fastboot.c +++ b/drivers/usb/gadget/f_fastboot.c @@ -553,7 +553,7 @@ static void do_bootm_on_complete(struct usb_ep *ep, struct usb_request *req) puts("Booting kernel..\n"); - sprintf(boot_addr_start, "0x%lx", load_addr); + sprintf(boot_addr_start, "0x%lx", CONFIG_FASTBOOT_BUF_ADDR); do_bootm(NULL, 0, 2, bootm_args); /* This only happens if image is somehow faulty so we start over */ -- 2.9.3 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH] Fix fastboot boot address Fastboot loads an image at CONFIG_FASTBOOT_BUF_ADDR, but currently tells do_bootm() to look for an image at $loadaddr. This breaks if CONFIG_FASTBOOT_BUF_ADD
Instead, tell do_bootm() to pick up the image where it was laoded. Signed-off-by: Peter Chubb--- drivers/usb/gadget/f_fastboot.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/usb/gadget/f_fastboot.c b/drivers/usb/gadget/f_fastboot.c index 2160b1c..6d02248 100644 --- a/drivers/usb/gadget/f_fastboot.c +++ b/drivers/usb/gadget/f_fastboot.c @@ -553,7 +553,7 @@ static void do_bootm_on_complete(struct usb_ep *ep, struct usb_request *req) puts("Booting kernel..\n"); - sprintf(boot_addr_start, "0x%lx", load_addr); + sprintf(boot_addr_start, "0x%lx", CONFIG_FASTBOOT_BUF_ADDR); do_bootm(NULL, 0, 2, bootm_args); /* This only happens if image is somehow faulty so we start over */ -- 2.9.3 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] "_ENTRY" is both a struct and a typedef?
> "Robert" == Robert P J Daywrites: Robert> from lib/hashtable.c: Robert> typedef struct _ENTRY { int used; ENTRY entry; } _ENTRY; Robert> ok, that's just kind of creepy ... defining a typedef over top Robert> of a struct of the same name. does anyone else find that Robert> strange? It's standard practice in some C styles. Personally I'd delete the struct tag, as the typedef should be used everywhere instead. Peter C -- Dr Peter Chubb Tel: +61 2 9490 5852 http://ts.data61.csiro.au/ Trustworthy Systems Group Data61 (formerly NICTA) ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] RFC: 'fastboot boot' uses wrong address when calling bootm
Hi Folks, If you set CONFIG_FASTBOOT_BUF_ADDR to anything other than the same as $loadaddr then the call to do_bootm() in the fastboot code will call do_bootm on a memory region that has nothing to do with the image downloaded. Sometimes the result is a hung system, other times the system reboots. I'm not sure of the correct fix. The possibilities are: 1. Get rid of CONFIG_FASTBOOT_BUF_ADDR and use $loadaddr instead. All the defconfigs that enable fastboot currently set CONFIG_FASTBOOT_BUF_ADDR to the same value as CONFIG_LOADADDR at present. 2. memcpy from the downloaded image to $loadaddr if possible. This would allow other payloads than ANDROID boot images, with a bit more work. (For example, I'd love to be able to boot ELF images using fastboot -- which doesn't work at present, because the entry point in the elf header isn't used) 3. The simplest: call do_bootm() with the address where the image has just been downloaded. The attached patch does this. What do you think? Peter C drivers/usb/gadget/f_fastboot.c |2 +- 1 file changed, 1 insertion(+), 1 deletion(-) Index: u-boot/drivers/usb/gadget/f_fastboot.c === --- u-boot.orig/drivers/usb/gadget/f_fastboot.c 2016-09-06 14:10:55.791917017 +1000 +++ u-boot/drivers/usb/gadget/f_fastboot.c 2016-09-07 19:20:23.087155135 +1000 @@ -553,7 +553,7 @@ static void do_bootm_on_complete(struct puts("Booting kernel..\n"); - sprintf(boot_addr_start, "0x%lx", load_addr); + sprintf(boot_addr_start, "0x%lx", CONFIG_FASTBOOT_BUF_ADDR); do_bootm(NULL, 0, 2, bootm_args); /* This only happens if image is somehow faulty so we start over */ -- Dr Peter Chubb Tel: +61 2 9490 5852 http://ts.data61.csiro.au/ Trustworthy Systems Group Data61 (formerly NICTA) ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH v2] ARM: tegra: increase console buffer size and sys args num
From: Bryan WuThe Linux-for-Tegra kernel uses a very long command line. The default value of CONFIG_SYS_CBSIZE is too small to printf out the long command line and causes a message like: bootarg overflow 602+0+0+1 > 512 on the console, and the board refuses to boot. The default value of CONFIG_SYS_MAXARGS is too small to add a long long command line, and the kernel won't boot without the complete bootargs. Increasing these two config options solves this problem. Signed-off-by: Bryan Wu Signed-off-by: Peter Chubb Acked-by: Stephen Warren --- include/configs/tegra-common.h | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/include/configs/tegra-common.h b/include/configs/tegra-common.h index 7b0940a..6bfd7b2 100644 --- a/include/configs/tegra-common.h +++ b/include/configs/tegra-common.h @@ -76,11 +76,12 @@ * Increasing the size of the IO buffer as default nfsargs size is more * than 256 and so it is not possible to edit it */ -#define CONFIG_SYS_CBSIZE (256 * 2) /* Console I/O Buffer Size */ +#define CONFIG_SYS_CBSIZE (1024 * 2) /* Console I/O Buffer Size */ /* Print Buffer Size */ #define CONFIG_SYS_PBSIZE (CONFIG_SYS_CBSIZE + \ sizeof(CONFIG_SYS_PROMPT) + 16) -#define CONFIG_SYS_MAXARGS 32 /* max number of command args */ +#define CONFIG_SYS_MAXARGS 64 /* max number of command args */ + /* Boot Argument Buffer Size */ #define CONFIG_SYS_BARGSIZE(CONFIG_SYS_CBSIZE) -- 2.9.3 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] ARM: tegra: jetson-tk1: Increase console buffer size
> "Stephen" == Stephen Warrenwrites: Stephen> I don't have that message either, and Google can't find it. I'll send it again. Thanks. -- Dr Peter Chubb Tel: +61 2 9490 5852 http://www.data61.csiro.au http://ts.data61.csiro.au Software Systems Research Group/NICTA/Data61 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] ARM: tegra: jetson-tk1: Increase console buffer size
> "Tom" == Tom Warrenwrites: Tom> Peter, It appears that this got rolled into 'ARM: tegra: increase Tom> console buffer size and sys args num', so I'm going to mark it as Tom> Superseded in my Patchwork queue. Yes, Stephen asked me to cherrypick instead from the tegra u-boot repo, and I did and submitted it. Tom> What's the status of the 'increase console buffer size and sys Tom> args num' patch? I've currently got it marked as 'Changes Tom> Requested'. Maybe you missed it, but the changed version was sent to the U-Boot list. I'll send it again if need be. Message ID: 20160825011915.4767-1-peter.ch...@data61.csiro.au Peter C -- Dr Peter Chubb Tel: +61 2 9490 5852 http://www.data61.csiro.au http://ts.data61.csiro.au Software Systems Research Group/NICTA/Data61 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH v2] ARM: tegra: Add support for TK1-SOM board from Colorado Engineering
The Colorado TK1 SOM is a small form factor board similar to the Jetson TK1. The main differences lie in the pinmux, and in that the PCIe controller is set to use in 4lanes+1lane, rather than 2+2. The pinmux header here was generated from a spreadsheet provided by Colorado Engineering using the tegra-pinmux scripts. The spreadsheet was converted from v09 to v11 by me. Signed-off-by: Peter ChubbAcked-by: Stephen Warren --- arch/arm/dts/Makefile | 1 + arch/arm/dts/tegra124-cei-tk1-som.dts | 477 ++ arch/arm/mach-tegra/tegra124/Kconfig | 12 + board/cei/cei-tk1-som/Kconfig | 12 + board/cei/cei-tk1-som/MAINTAINERS | 6 + board/cei/cei-tk1-som/Makefile| 9 + board/cei/cei-tk1-som/cei-tk1-som.c | 65 +++ board/cei/cei-tk1-som/pinmux-config-cei-tk1-som.h | 301 ++ board/nvidia/venice2/as3722_init.h| 8 +- configs/cei-tk1-som_defconfig | 47 +++ include/configs/cei-tk1-som.h | 73 11 files changed, 1007 insertions(+), 4 deletions(-) create mode 100644 arch/arm/dts/tegra124-cei-tk1-som.dts create mode 100644 board/cei/cei-tk1-som/Kconfig create mode 100644 board/cei/cei-tk1-som/MAINTAINERS create mode 100644 board/cei/cei-tk1-som/Makefile create mode 100644 board/cei/cei-tk1-som/cei-tk1-som.c create mode 100644 board/cei/cei-tk1-som/pinmux-config-cei-tk1-som.h create mode 100644 configs/cei-tk1-som_defconfig create mode 100644 include/configs/cei-tk1-som.h diff --git a/arch/arm/dts/Makefile b/arch/arm/dts/Makefile index 7d1944f..25fc22f 100644 --- a/arch/arm/dts/Makefile +++ b/arch/arm/dts/Makefile @@ -57,6 +57,7 @@ dtb-$(CONFIG_TEGRA) += tegra20-harmony.dtb \ tegra114-dalmore.dtb \ tegra124-jetson-tk1.dtb \ tegra124-nyan-big.dtb \ + tegra124-cei-tk1-som.dtb \ tegra124-venice2.dtb \ tegra186-p2771--a02.dtb \ tegra186-p2771--b00.dtb \ diff --git a/arch/arm/dts/tegra124-cei-tk1-som.dts b/arch/arm/dts/tegra124-cei-tk1-som.dts new file mode 100644 index 000..d22c0ca --- /dev/null +++ b/arch/arm/dts/tegra124-cei-tk1-som.dts @@ -0,0 +1,477 @@ +/dts-v1/; + +#include "tegra124.dtsi" + +/ { + model = "Colorado Engineering TK1-SOM"; + compatible = "nvidia,cei-tk1-som", "nvidia,tegra124"; + + chosen { + stdout-path = + }; + + aliases { + i2c0 = "/i2c@7000d000"; + i2c1 = "/i2c@7000c000"; + i2c2 = "/i2c@7000c400"; + i2c3 = "/i2c@7000c500"; + i2c4 = "/i2c@7000c700"; + sdhci0 = "/sdhci@700b0600"; + sdhci1 = "/sdhci@700b0400"; + spi0 = "/spi@7000d400"; + spi1 = "/spi@7000da00"; + usb0 = "/usb@7d00"; + usb1 = "/usb@7d008000"; + }; + + memory { + device_type = "memory"; + reg = <0x8000 0x8000>; + }; + + pcie-controller@01003000 { + status = "okay"; + + avddio-pex-supply = <_1v05_run>; + dvddio-pex-supply = <_1v05_run>; + avdd-pex-pll-supply = <_1v05_run>; + hvdd-pex-supply = <_3v3_lp0>; + hvdd-pex-pll-e-supply = <_3v3_lp0>; + vddio-pex-ctl-supply = <_3v3_lp0>; + avdd-pll-erefe-supply = <_1v05_run>; + + pci@1,0 { + status = "okay"; + nvidia,num-lanes = <4>; + }; + + pci@2,0 { + status = "okay"; + }; + }; + + i2c@7000c000 { + status = "okay"; + clock-frequency = <10>; + }; + + i2c@7000c400 { + status = "okay"; + clock-frequency = <10>; + }; + + i2c@7000c500 { + status = "okay"; + clock-frequency = <10>; + }; + + i2c@7000c700 { + status = "okay"; + clock-frequency = <10>; + }; + + /* Expansion PWR_I2C_*, on-board components */ + i2c@7000d000 { + status = "okay"; + clock-frequency = <40>; + + pmic: pmic@40 { + compatible = "ams,as3722"; + reg = <0x40>; + interrupts = <0 86 IRQ_TYPE_LEVEL_HIGH>; + + ams,system-power-controller; + + #interrupt-cells = <2>; + interrupt-controller; + + gpio-controller; + #gpio-cells = <2>; + + pinctrl-names = "default"; + pinctrl-0 = <_default>; + + as3722_default: pinmux { +
Re: [U-Boot] [PATCH] ARM: tegra: Add support for TK1-SOM board from Colorado Engineering
> "Stephen" == Stephen Warrenwrites: Stephen> On 08/29/2016 06:51 PM, peter.ch...@data61.csiro.au wrote: >> The Colorado TK1 SOM is a small form factor board similar to the >> Jetson TK1. The main differences lie in the pinmux, and in that >> the PCIe controller is set to use in 4lanes+1lane, rather than 2+2. >> >> The pinmux header here was generated from a spreadsheet provided by >> Colorado Engineering using the tegra-pinmux scripts. The >> spreadsheet was converted from v09 to v11 by me. >> diff --git a/arch/arm/mach-tegra/tegra124/Kconfig >> b/arch/arm/mach-tegra/tegra124/Kconfig >> +config TARGET_CEI_TK1_SOM + bool "Colorado/NVIDIA Tegra124 TK1-som >> board" Stephen> I think that should say: Stephen>bool "Colorado Engineering Inc TK1-som board" Stephen> I assume that NVIDIA had no part in creating this derivative; Stephen> they simply created the board it was based on. As far a I know that's the case. It's an NVIDIA SoC though. >> diff --git a/include/configs/cei-tk1-som.h >> b/include/configs/cei-tk1-som.h >> + * (C) Copyright 2016 Peter Chubb >> + * Based on the jetson-tk1.h which is Stephen> There's trailing whitespace on that line. Stephen> I might suggest adding a : to the end of the line, so it's Stephen> more obvious (when looking at just the added lines) that it's Stephen> referring to the next line rather than a statement that Stephen> wasn't finished. OK. I need to fix the copyright header too (my employer wants a mention, which is fair enough as they're paying for me to do this work)) Stephen> Is that true? I'd like to see a patch for Stephen> tegra-pinmux-scripts that adds the config file for this board Stephen> too. It's on its way. I'm currently trying to get the Linux DTS part working. Stephen> Aside from those minor issues, Acked-by: Stephen Warren Stephen> Thanks. -- Dr Peter Chubb Tel: +61 2 9490 5852 http://www.data61.csiro.au http://ts.data61.csiro.au Software Systems Research Group/NICTA/Data61 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH 2/2] Fix cache misalignment after network load operations
After any operation that downloads a file (e.g., pxe get, or dhcp), the buffer containing the downloaded data is flushed. This patch rounds up the flushed size to a cacheline boundary, preventing a cache misalignment message from u-boot. Signed-off-by: Peter Chubb--- cmd/net.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cmd/net.c b/cmd/net.c index b2f3c7b..540daeb 100644 --- a/cmd/net.c +++ b/cmd/net.c @@ -244,7 +244,7 @@ static int netboot_common(enum proto_t proto, cmd_tbl_t *cmdtp, int argc, } /* flush cache */ - flush_cache(load_addr, size); + flush_cache(load_addr, ALIGN(size, CONFIG_SYS_CACHELINE_SIZE)); bootstage_mark(BOOTSTAGE_ID_NET_LOADED); -- 2.9.3 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH 1/2] rtl8169: fix cache misalignment message on transmit.
The call to flush cache on the transmit buffer was misplaced (for very short packets) and asked to flush less than a cacheline. Move the flush cache call to after a short packet has been padded to minimum length (so the padding is flushed too), and round the size up to a cacheline. Signed-off-by: Peter Chubb--- drivers/net/rtl8169.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/drivers/net/rtl8169.c b/drivers/net/rtl8169.c index 1cc0b40..a3f4423 100644 --- a/drivers/net/rtl8169.c +++ b/drivers/net/rtl8169.c @@ -629,11 +629,12 @@ static int rtl_send_common(pci_dev_t dev, unsigned long dev_iobase, /* point to the current txb incase multiple tx_rings are used */ ptxb = tpc->Tx_skbuff[entry * MAX_ETH_FRAME_SIZE]; memcpy(ptxb, (char *)packet, (int)length); - rtl_flush_buffer(ptxb, length); while (len < ETH_ZLEN) ptxb[len++] = '\0'; + rtl_flush_buffer(ptxb, ALIGN(len, RTL8169_ALIGN)); + tpc->TxDescArray[entry].buf_Haddr = 0; #ifdef CONFIG_DM_ETH tpc->TxDescArray[entry].buf_addr = cpu_to_le32( -- 2.9.3 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH] ARM: tegra: Add support for TK1-SOM board from Colorado Engineering
The Colorado TK1 SOM is a small form factor board similar to the Jetson TK1. The main differences lie in the pinmux, and in that the PCIe controller is set to use in 4lanes+1lane, rather than 2+2. The pinmux header here was generated from a spreadsheet provided by Colorado Engineering using the tegra-pinmux scripts. The spreadsheet was converted from v09 to v11 by me. Signed-off-by: Peter Chubb--- arch/arm/dts/Makefile | 1 + arch/arm/dts/tegra124-cei-tk1-som.dts | 477 ++ arch/arm/mach-tegra/tegra124/Kconfig | 11 + board/cei/cei-tk1-som/Kconfig | 12 + board/cei/cei-tk1-som/MAINTAINERS | 6 + board/cei/cei-tk1-som/Makefile| 9 + board/cei/cei-tk1-som/cei-tk1-som.c | 65 +++ board/cei/cei-tk1-som/pinmux-config-cei-tk1-som.h | 301 ++ board/nvidia/venice2/as3722_init.h| 8 +- configs/cei-tk1-som_defconfig | 47 +++ include/configs/cei-tk1-som.h | 71 11 files changed, 1004 insertions(+), 4 deletions(-) create mode 100644 arch/arm/dts/tegra124-cei-tk1-som.dts create mode 100644 board/cei/cei-tk1-som/Kconfig create mode 100644 board/cei/cei-tk1-som/MAINTAINERS create mode 100644 board/cei/cei-tk1-som/Makefile create mode 100644 board/cei/cei-tk1-som/cei-tk1-som.c create mode 100644 board/cei/cei-tk1-som/pinmux-config-cei-tk1-som.h create mode 100644 configs/cei-tk1-som_defconfig create mode 100644 include/configs/cei-tk1-som.h diff --git a/arch/arm/dts/Makefile b/arch/arm/dts/Makefile index 7d1944f..25fc22f 100644 --- a/arch/arm/dts/Makefile +++ b/arch/arm/dts/Makefile @@ -57,6 +57,7 @@ dtb-$(CONFIG_TEGRA) += tegra20-harmony.dtb \ tegra114-dalmore.dtb \ tegra124-jetson-tk1.dtb \ tegra124-nyan-big.dtb \ + tegra124-cei-tk1-som.dtb \ tegra124-venice2.dtb \ tegra186-p2771--a02.dtb \ tegra186-p2771--b00.dtb \ diff --git a/arch/arm/dts/tegra124-cei-tk1-som.dts b/arch/arm/dts/tegra124-cei-tk1-som.dts new file mode 100644 index 000..d22c0ca --- /dev/null +++ b/arch/arm/dts/tegra124-cei-tk1-som.dts @@ -0,0 +1,477 @@ +/dts-v1/; + +#include "tegra124.dtsi" + +/ { + model = "Colorado Engineering TK1-SOM"; + compatible = "nvidia,cei-tk1-som", "nvidia,tegra124"; + + chosen { + stdout-path = + }; + + aliases { + i2c0 = "/i2c@7000d000"; + i2c1 = "/i2c@7000c000"; + i2c2 = "/i2c@7000c400"; + i2c3 = "/i2c@7000c500"; + i2c4 = "/i2c@7000c700"; + sdhci0 = "/sdhci@700b0600"; + sdhci1 = "/sdhci@700b0400"; + spi0 = "/spi@7000d400"; + spi1 = "/spi@7000da00"; + usb0 = "/usb@7d00"; + usb1 = "/usb@7d008000"; + }; + + memory { + device_type = "memory"; + reg = <0x8000 0x8000>; + }; + + pcie-controller@01003000 { + status = "okay"; + + avddio-pex-supply = <_1v05_run>; + dvddio-pex-supply = <_1v05_run>; + avdd-pex-pll-supply = <_1v05_run>; + hvdd-pex-supply = <_3v3_lp0>; + hvdd-pex-pll-e-supply = <_3v3_lp0>; + vddio-pex-ctl-supply = <_3v3_lp0>; + avdd-pll-erefe-supply = <_1v05_run>; + + pci@1,0 { + status = "okay"; + nvidia,num-lanes = <4>; + }; + + pci@2,0 { + status = "okay"; + }; + }; + + i2c@7000c000 { + status = "okay"; + clock-frequency = <10>; + }; + + i2c@7000c400 { + status = "okay"; + clock-frequency = <10>; + }; + + i2c@7000c500 { + status = "okay"; + clock-frequency = <10>; + }; + + i2c@7000c700 { + status = "okay"; + clock-frequency = <10>; + }; + + /* Expansion PWR_I2C_*, on-board components */ + i2c@7000d000 { + status = "okay"; + clock-frequency = <40>; + + pmic: pmic@40 { + compatible = "ams,as3722"; + reg = <0x40>; + interrupts = <0 86 IRQ_TYPE_LEVEL_HIGH>; + + ams,system-power-controller; + + #interrupt-cells = <2>; + interrupt-controller; + + gpio-controller; + #gpio-cells = <2>; + + pinctrl-names = "default"; + pinctrl-0 = <_default>; + + as3722_default: pinmux { + gpio0 { +