From ddfe346f4cd4bd108fb37fc065f3b06acd4cf5b4 Mon Sep 17 00:00:00 2001 From: Tom Rini Date: Mon, 7 Jan 2019 22:57:56 -0500 Subject: Makefile: Correct logic for DM_SCSI + unconverted drivers check When checking for boards that are enabling a SATA driver that isn't converted to DM yet we need to be sure to not also trip over boards that do set CONFIG_DM_SCSI by itself, as that is not a bug. Reported-by: Andy Shevchenko Fixes: ea9d7c17fc4c ("dm: MIGRATION: Add migration plan for CONFIG_SATA") Signed-off-by: Tom Rini --- Makefile | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/Makefile b/Makefile index eeb299fc38..dff72a5f57 100644 --- a/Makefile +++ b/Makefile @@ -938,7 +938,8 @@ ifneq ($(CONFIG_DM_USB)$(CONFIG_OF_CONTROL)$(CONFIG_BLK),yyy) @echo >&2 "====================================================" endif endif -ifeq ($(CONFIG_LIBATA)$(CONFIG_DM_SCSI)$(CONFIG_MVSATA_IDE),y) +ifeq ($(CONFIG_LIBATA)$(CONFIG_MVSATA_IDE),y) +ifneq ($(CONFIG_DM_SCSI),y) @echo >&2 "===================== WARNING ======================" @echo >&2 "This board does not use CONFIG_DM_SCSI. Please update" @echo >&2 "the storage controller to use CONFIG_DM_SCSI before the v2019.07 release." @@ -946,6 +947,7 @@ ifeq ($(CONFIG_LIBATA)$(CONFIG_DM_SCSI)$(CONFIG_MVSATA_IDE),y) @echo >&2 "See doc/driver-model/MIGRATION.txt for more info." @echo >&2 "====================================================" endif +endif ifeq ($(CONFIG_OF_EMBED),y) @echo >&2 "===================== WARNING ======================" @echo >&2 "CONFIG_OF_EMBED is enabled. This option should only" -- cgit v1.2.3 From 3b6989b526f06ee38afb31fab83c8a3f7f6201ea Mon Sep 17 00:00:00 2001 From: Andre Przywara Date: Mon, 17 Dec 2018 10:05:44 +0000 Subject: sunxi: drop default SPL_LIBDISK_SUPPORT enablement There is no code for using partition labels in the Allwinner SPL port. Even so the name is slightly misleading, CONFIG_SPL_LIBDISK_SUPPORT was meant to guard partition code for the SPL. Remove the "imply" line in the Kconfig to make this obvious and avoid unneeded code inclusions, helping to keep the H6 SPL code small. Signed-off-by: Andre Przywara Reviewed-by: Simon Glass --- arch/arm/Kconfig | 1 - 1 file changed, 1 deletion(-) diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig index 520ea8bed9..d6b1629a00 100644 --- a/arch/arm/Kconfig +++ b/arch/arm/Kconfig @@ -875,7 +875,6 @@ config ARCH_SUNXI imply PRE_CONSOLE_BUFFER imply SPL_GPIO_SUPPORT imply SPL_LIBCOMMON_SUPPORT - imply SPL_LIBDISK_SUPPORT imply SPL_LIBGENERIC_SUPPORT imply SPL_MMC_SUPPORT if MMC imply SPL_POWER_SUPPORT -- cgit v1.2.3 From eef05fd3ba68220156f33ffe6a9e68e42a6a5b53 Mon Sep 17 00:00:00 2001 From: Andre Przywara Date: Mon, 17 Dec 2018 10:05:45 +0000 Subject: mmc: bring back partition init for non-DM MMC drivers Commit d0851c893706 ("blk: Call part_init() in the post_probe() method") removed the call to part_init() in mmc.c, as this is done by the DM_MMC framework. However Allwinner is (still) relying on a non-DM MMC driver, so we are now missing the implicit partition init, leading to failing MMC accesses due to the missing partition information. Bring the call back just for non-DM MMC driver to fix this regression. Signed-off-by: Andre Przywara Reviewed-by: Simon Glass Tested-by: Soeren Moch --- drivers/mmc/mmc.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/drivers/mmc/mmc.c b/drivers/mmc/mmc.c index f5c821e308..d858127132 100644 --- a/drivers/mmc/mmc.c +++ b/drivers/mmc/mmc.c @@ -2449,6 +2449,10 @@ static int mmc_startup(struct mmc *mmc) bdesc->revision[0] = 0; #endif +#if !defined(CONFIG_DM_MMC) && (!defined(CONFIG_SPL_BUILD) || defined(CONFIG_SPL_LIBDISK_SUPPORT)) + part_init(bdesc); +#endif + return 0; } -- cgit v1.2.3 From d66ff4ba00a413281ff1e79f092ef2c6a34dca40 Mon Sep 17 00:00:00 2001 From: Tom Rini Date: Thu, 27 Dec 2018 09:22:55 -0500 Subject: Add a github template telling people to not use pull requests there On our mirror account on github we have gotten a handful of pull requests. At this time github does not allow you to disable pull requests on a project. The generally suggested work-around is to add a pull request template that tells people to not use that workflow. Add one here that points to the wiki page on submitted patches. Signed-off-by: Tom Rini --- .github/pull_request_template.md | 3 +++ 1 file changed, 3 insertions(+) create mode 100644 .github/pull_request_template.md diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md new file mode 100644 index 0000000000..23599b97c0 --- /dev/null +++ b/.github/pull_request_template.md @@ -0,0 +1,3 @@ +Please do not submit a Pull Request via github. Our project makes use of +mailing lists for patch submission and review. For more details please +see https://www.denx.de/wiki/U-Boot/Patches -- cgit v1.2.3 From 358fd21fe7b6e6481a9f5436f2d1a2e4dd754082 Mon Sep 17 00:00:00 2001 From: Enric Balletbo i Serra Date: Fri, 28 Dec 2018 11:55:47 +0100 Subject: igep003x: MAINTAINER: Remove myself as maintainer and add Javier MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit I can't continue maintaining the board because I don't have access to the hardware anymore, so remove myself from the entry and add Javier who has volunteered to help and maintain the board. Signed-off-by: Enric Balletbo i Serra Signed-off-by: Javier Martínez Canillas --- board/isee/igep003x/MAINTAINERS | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/board/isee/igep003x/MAINTAINERS b/board/isee/igep003x/MAINTAINERS index a74938a7d2..ba92e64e2a 100644 --- a/board/isee/igep003x/MAINTAINERS +++ b/board/isee/igep003x/MAINTAINERS @@ -1,5 +1,5 @@ IGEP003X BOARD -M: Enric Balletbo i Serra +M: Javier Martínez Canillas S: Maintained F: board/isee/igep003x/ F: include/configs/am335x_igep003x.h -- cgit v1.2.3 From 1ce689d95085708cc9dc9a9eefa665fa276a4b6c Mon Sep 17 00:00:00 2001 From: Simon Glass Date: Fri, 28 Dec 2018 14:03:07 -0700 Subject: dm: pci: MIGRATION: Add migration plan for PCI Add a migration plan for PCI which is an important subsystem in U-Boot. Signed-off-by: Simon Glass --- Makefile | 10 ++++++++++ doc/driver-model/MIGRATION.txt | 10 ++++++++++ 2 files changed, 20 insertions(+) diff --git a/Makefile b/Makefile index dff72a5f57..22d0731082 100644 --- a/Makefile +++ b/Makefile @@ -948,6 +948,16 @@ ifneq ($(CONFIG_DM_SCSI),y) @echo >&2 "====================================================" endif endif +ifeq ($(CONFIG_PCI),y) +ifneq ($(CONFIG_DM_PCI),y) + @echo >&2 "===================== WARNING ======================" + @echo >&2 "This board does not use CONFIG_DM_PCI Please update" + @echo >&2 "the board to use CONFIG_DM_PCI before the v2019.07 release." + @echo >&2 "Failure to update by the deadline may result in board removal." + @echo >&2 "See doc/driver-model/MIGRATION.txt for more info." + @echo >&2 "====================================================" +endif +endif ifeq ($(CONFIG_OF_EMBED),y) @echo >&2 "===================== WARNING ======================" @echo >&2 "CONFIG_OF_EMBED is enabled. This option should only" diff --git a/doc/driver-model/MIGRATION.txt b/doc/driver-model/MIGRATION.txt index 183d7f5293..c0c9483b13 100644 --- a/doc/driver-model/MIGRATION.txt +++ b/doc/driver-model/MIGRATION.txt @@ -86,3 +86,13 @@ Partially converted: Jagan Teki 12/24/2018 03/14/2018 + + +CONFIG_DM_PCI +------------- +Deadline: 2019.07 + +The PCI subsystem has supported driver model since mid 2015. Maintainers should +submit patches switching over to using CONFIG_DM_PCI and other base driver +model options in time for inclusion in the 2019.07 release. + -- cgit v1.2.3 From 3e87ffcffbdf1b0883e4c76d411ffa604ba69c57 Mon Sep 17 00:00:00 2001 From: Simon Glass Date: Fri, 28 Dec 2018 14:03:08 -0700 Subject: dm: video: lcd: MIGRATION: Add migration plan for video Add a migration plan for video which is an important subsystem in U-Boot. Signed-off-by: Simon Glass --- Makefile | 10 ++++++++++ doc/driver-model/MIGRATION.txt | 8 ++++++++ 2 files changed, 18 insertions(+) diff --git a/Makefile b/Makefile index 22d0731082..c4d0c3002e 100644 --- a/Makefile +++ b/Makefile @@ -958,6 +958,16 @@ ifneq ($(CONFIG_DM_PCI),y) @echo >&2 "====================================================" endif endif +ifneq ($(CONFIG_LCD)$(CONFIG_VIDEO),) +ifneq ($(CONFIG_DM_VIDEO),y) + @echo >&2 "===================== WARNING ======================" + @echo >&2 "This board does not use CONFIG_DM_VIDEO Please update" + @echo >&2 "the board to use CONFIG_DM_VIDEO before the v2019.07 release." + @echo >&2 "Failure to update by the deadline may result in board removal." + @echo >&2 "See doc/driver-model/MIGRATION.txt for more info." + @echo >&2 "====================================================" +endif +endif ifeq ($(CONFIG_OF_EMBED),y) @echo >&2 "===================== WARNING ======================" @echo >&2 "CONFIG_OF_EMBED is enabled. This option should only" diff --git a/doc/driver-model/MIGRATION.txt b/doc/driver-model/MIGRATION.txt index c0c9483b13..957529202b 100644 --- a/doc/driver-model/MIGRATION.txt +++ b/doc/driver-model/MIGRATION.txt @@ -96,3 +96,11 @@ The PCI subsystem has supported driver model since mid 2015. Maintainers should submit patches switching over to using CONFIG_DM_PCI and other base driver model options in time for inclusion in the 2019.07 release. + +CONFIG_DM_VIDEO +--------------- +Deadline: 2019.07 + +The video subsystem has supported driver model since early 2016. Maintainers +should submit patches switching over to using CONFIG_DM_VIDEO and other base +driver model options in time for inclusion in the 2019.07 release. -- cgit v1.2.3 From f3ccba3e4ee8a33869c54627331b032a334d18ac Mon Sep 17 00:00:00 2001 From: Heinrich Schuchardt Date: Sun, 30 Dec 2018 13:00:51 +0100 Subject: doc: README.commands: fix type %s/commmand/command/ Signed-off-by: Heinrich Schuchardt Reviewed-by: Simon Glass --- doc/README.commands | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/README.commands b/doc/README.commands index 0ccadae0b7..e03eb44187 100644 --- a/doc/README.commands +++ b/doc/README.commands @@ -67,7 +67,7 @@ This table has to be evaluated in the command function of the main command, e.g. Command function ---------------- -The commmand function pointer has to be of type +The command function pointer has to be of type int (*cmd)(struct cmd_tbl_s *cmdtp, int flag, int argc, const char *argv[]); cmdtp: Table entry describing the command (see above). -- cgit v1.2.3 From 9d47d1316da6585bbafe141e42bbdcdfd562bc71 Mon Sep 17 00:00:00 2001 From: Ye Li Date: Fri, 4 Jan 2019 09:24:14 +0000 Subject: arm: Round the dma_alloc_coherent memory size to cache line aligned When running usb dwc3 gadget driver, we meet random USB enumeration failure in fastboot. The root cause is a cache coherence issue. When it happens, the ctrl_req in gadget driver is allocated at 0xfe932f40, and the usb_composite_dev (cdev) is allocated at 0xfe932f60. So after we submit the setup request (cache flushed) to USB controller, any accessing to usb_composite_dev variable will cause the cache line refill, then when setup transfer is completed, reading the setup data in ctrl_req will gets old value from cache not from memory. The ctrl_req is allocated by API dma_alloc_coherent, but u-boot don't have cohernet memory. so it still needs cache maintain operations before/after HW accessing. Since the cache flush or invalidate bases on cache line, so when the allocated memory size is not cache line aligned, potentially it may meet such issue. This patch modifies the dma_alloc_coherent API to round the size to cache line aligned. Signed-off-by: Ye Li Reviewed-by: Peng Fan --- arch/arm/include/asm/dma-mapping.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/arch/arm/include/asm/dma-mapping.h b/arch/arm/include/asm/dma-mapping.h index 0883b7ea75..fc5b8f634d 100644 --- a/arch/arm/include/asm/dma-mapping.h +++ b/arch/arm/include/asm/dma-mapping.h @@ -13,7 +13,7 @@ static inline void *dma_alloc_coherent(size_t len, unsigned long *handle) { - *handle = (unsigned long)memalign(ARCH_DMA_MINALIGN, len); + *handle = (unsigned long)memalign(ARCH_DMA_MINALIGN, ROUND(len, ARCH_DMA_MINALIGN)); return (void *)*handle; } -- cgit v1.2.3 From 9a6a311d2bd12957f84f08a5214db698a35e918d Mon Sep 17 00:00:00 2001 From: Ye Li Date: Fri, 4 Jan 2019 09:34:24 +0000 Subject: env: sata: Add missed env location for SATA boot The env location label ENVL_ESATA is missed in location tables, so when we configure the ENV in SATA, u-boot fails to get correct env location and cause boot hang in board_f. Signed-off-by: Ye Li Reviewed-by: Peng Fan --- env/env.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/env/env.c b/env/env.c index afed0f3c95..003509d342 100644 --- a/env/env.c +++ b/env/env.c @@ -71,6 +71,9 @@ static enum env_location env_locations[] = { #ifdef CONFIG_ENV_IS_IN_REMOTE ENVL_REMOTE, #endif +#ifdef CONFIG_ENV_IS_IN_SATA + ENVL_ESATA, +#endif #ifdef CONFIG_ENV_IS_IN_SPI_FLASH ENVL_SPI_FLASH, #endif -- cgit v1.2.3 From 35e3d2e8a30321195e4f5cd8aafba6aefe818b3d Mon Sep 17 00:00:00 2001 From: Sam Protsenko Date: Fri, 4 Jan 2019 22:09:08 +0200 Subject: arm: ti: boot: Remove legacy Android partitions Remove unused Android partitions: - efs, crypto, cache: we don't use it anymore (images are not built in AOSP - ipu1, ipu2: IPU firmware is now a part of vendor image and doesn't reside as a separate partition While at it, rename "reserved" partition to "uboot-env", as it's actually stores U-Boot environment. Signed-off-by: Sam Protsenko Signed-off-by: Praneeth Bajjuri --- include/environment/ti/boot.h | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/include/environment/ti/boot.h b/include/environment/ti/boot.h index 86ff6d3ea7..05bdbbc23e 100644 --- a/include/environment/ti/boot.h +++ b/include/environment/ti/boot.h @@ -35,17 +35,12 @@ "uuid_disk=${uuid_gpt_disk};" \ "name=xloader,start=128K,size=256K,uuid=${uuid_gpt_xloader};" \ "name=bootloader,size=2048K,uuid=${uuid_gpt_bootloader};" \ - "name=reserved,start=2432K,size=256K,uuid=${uuid_gpt_reserved};" \ + "name=uboot-env,start=2432K,size=256K,uuid=${uuid_gpt_reserved};" \ "name=misc,size=128K,uuid=${uuid_gpt_misc};" \ - "name=efs,size=16M,uuid=${uuid_gpt_efs};" \ - "name=crypto,size=16K,uuid=${uuid_gpt_crypto};" \ "name=recovery,size=40M,uuid=${uuid_gpt_recovery};" \ "name=boot,size=10M,uuid=${uuid_gpt_boot};" \ "name=system,size=1024M,uuid=${uuid_gpt_system};" \ "name=vendor,size=256M,uuid=${uuid_gpt_vendor};" \ - "name=cache,size=256M,uuid=${uuid_gpt_cache};" \ - "name=ipu1,size=1M,uuid=${uuid_gpt_ipu1};" \ - "name=ipu2,size=1M,uuid=${uuid_gpt_ipu2};" \ VBMETA_PART \ "name=userdata,size=-,uuid=${uuid_gpt_userdata}" #endif /* PARTS_DEFAULT */ -- cgit v1.2.3 From 17be909a1b67e919de6fc20b23f35c66a4cdf4c6 Mon Sep 17 00:00:00 2001 From: Ye Li Date: Mon, 7 Jan 2019 09:22:35 +0000 Subject: env: sata: Fix saveenv issue Wrong env buffer was passed into sata write function, cause the saveenv not work. Signed-off-by: Ye Li --- env/sata.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/env/sata.c b/env/sata.c index 59aedf4d76..a2ff5c66f7 100644 --- a/env/sata.c +++ b/env/sata.c @@ -65,7 +65,7 @@ static int env_sata_save(void) return 1; printf("Writing to SATA(%d)...", env_sata); - if (write_env(sata, CONFIG_ENV_SIZE, CONFIG_ENV_OFFSET, &env_new)) { + if (write_env(sata, CONFIG_ENV_SIZE, CONFIG_ENV_OFFSET, (u_char *)env_new)) { puts("failed\n"); return 1; } -- cgit v1.2.3 From 39a8f0be2d3df589ba227310e66dca706e154920 Mon Sep 17 00:00:00 2001 From: Patrice Chotard Date: Fri, 4 Jan 2019 10:55:05 +0100 Subject: gpio: stm32f7: Fix gpio bank hole management In case "gpio-ranges" property is not present in device tree, use default value for gpio_count and gpio_range. This fixes an issue on stm32 F7 and H7 boards where "pinmux status -a" command didn't return any pin status due to the fact that both stm32 F7 and H7 board DT doesn't use the gpio-ranges property. Fixes: dbf928dd2634a6("gpio: stm32f7: Add gpio bank holes management") Signed-off-by: Patrice Chotard --- drivers/gpio/stm32f7_gpio.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/drivers/gpio/stm32f7_gpio.c b/drivers/gpio/stm32f7_gpio.c index f160b4e689..dbaa80cf8c 100644 --- a/drivers/gpio/stm32f7_gpio.c +++ b/drivers/gpio/stm32f7_gpio.c @@ -171,6 +171,11 @@ static int gpio_stm32_probe(struct udevice *dev) ret = dev_read_phandle_with_args(dev, "gpio-ranges", NULL, 3, i, &args); + if (ret == -ENOENT) { + uc_priv->gpio_count = STM32_GPIOS_PER_BANK; + priv->gpio_range = GENMASK(STM32_GPIOS_PER_BANK - 1, 0); + } + while (ret != -ENOENT) { priv->gpio_range |= GENMASK(args.args[2] + args.args[0] - 1, args.args[0]); -- cgit v1.2.3 From 4fb224638d608ba3bdc9200360663b4109038580 Mon Sep 17 00:00:00 2001 From: Patrice Chotard Date: Fri, 4 Jan 2019 10:55:06 +0100 Subject: gpio: stm32f7: Fix SPL code size In order to keep SPL code size below the 32Kb limit, put under CONFIG_SPL_BUILD flag all unused code in SPL. This is needed for stm32f7xx board which are using SPL. Signed-off-by: Patrice Chotard --- drivers/gpio/stm32f7_gpio.c | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/drivers/gpio/stm32f7_gpio.c b/drivers/gpio/stm32f7_gpio.c index dbaa80cf8c..5c9f2fe64d 100644 --- a/drivers/gpio/stm32f7_gpio.c +++ b/drivers/gpio/stm32f7_gpio.c @@ -19,6 +19,7 @@ #define MODE_BITS_MASK 3 #define BSRR_BIT(gpio_pin, value) BIT(gpio_pin + (value ? 0 : 16)) +#ifndef CONFIG_SPL_BUILD /* * convert gpio offset to gpio index taking into account gpio holes * into gpio bank @@ -145,23 +146,27 @@ static const struct dm_gpio_ops gpio_stm32_ops = { .set_value = stm32_gpio_set_value, .get_function = stm32_gpio_get_function, }; +#endif static int gpio_stm32_probe(struct udevice *dev) { - struct gpio_dev_priv *uc_priv = dev_get_uclass_priv(dev); struct stm32_gpio_priv *priv = dev_get_priv(dev); - struct ofnode_phandle_args args; struct clk clk; fdt_addr_t addr; - const char *name; int ret; - int i; addr = dev_read_addr(dev); if (addr == FDT_ADDR_T_NONE) return -EINVAL; priv->regs = (struct stm32_gpio_regs *)addr; + +#ifndef CONFIG_SPL_BUILD + struct gpio_dev_priv *uc_priv = dev_get_uclass_priv(dev); + struct ofnode_phandle_args args; + const char *name; + int i; + name = dev_read_string(dev, "st,bank-name"); if (!name) return -EINVAL; @@ -189,7 +194,7 @@ static int gpio_stm32_probe(struct udevice *dev) dev_dbg(dev, "addr = 0x%p bank_name = %s gpio_count = %d gpio_range = 0x%x\n", (u32 *)priv->regs, uc_priv->bank_name, uc_priv->gpio_count, priv->gpio_range); - +#endif ret = clk_get_by_index(dev, 0, &clk); if (ret < 0) return ret; @@ -215,7 +220,9 @@ U_BOOT_DRIVER(gpio_stm32) = { .id = UCLASS_GPIO, .of_match = stm32_gpio_ids, .probe = gpio_stm32_probe, +#ifndef CONFIG_SPL_BUILD .ops = &gpio_stm32_ops, +#endif .flags = DM_UC_FLAG_SEQ_ALIAS, .priv_auto_alloc_size = sizeof(struct stm32_gpio_priv), }; -- cgit v1.2.3