[U-Boot] [PATCH 1/3] spl: Fix compilation issue when you want to use SPL from enviroment
Change-Id: I8b4af0b27591b6a9d85fb4ecb17e8ca86765b2c0 Signed-off-by: Michael Trimarchi --- configs/imx6ull_isiot_nand_defconfig | 1 + 1 file changed, 1 insertion(+) diff --git a/configs/imx6ull_isiot_nand_defconfig b/configs/imx6ull_isiot_nand_defconfig index 5d02186..e02bbc9 100644 --- a/configs/imx6ull_isiot_nand_defconfig +++ b/configs/imx6ull_isiot_nand_defconfig @@ -4,6 +4,7 @@ CONFIG_SYS_TEXT_BASE=0x8780 CONFIG_SPL_GPIO_SUPPORT=y CONFIG_SPL_LIBCOMMON_SUPPORT=y CONFIG_SPL_LIBGENERIC_SUPPORT=y +CONFIG_SPL_ENV_SUPPORT=y CONFIG_TARGET_MX6ULL_ISIOT=y CONFIG_SPL_SERIAL_SUPPORT=y CONFIG_SPL=y -- 2.7.4 ___ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot
Re: [U-Boot] [PATCH 1/3] spl: Fix compilation issue when you want to use SPL from enviroment
Hi Sorry mistake ;) On Sun, Jul 8, 2018 at 10:27 AM, Michael Trimarchi wrote: > Change-Id: I8b4af0b27591b6a9d85fb4ecb17e8ca86765b2c0 > Signed-off-by: Michael Trimarchi > --- > configs/imx6ull_isiot_nand_defconfig | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/configs/imx6ull_isiot_nand_defconfig > b/configs/imx6ull_isiot_nand_defconfig > index 5d02186..e02bbc9 100644 > --- a/configs/imx6ull_isiot_nand_defconfig > +++ b/configs/imx6ull_isiot_nand_defconfig > @@ -4,6 +4,7 @@ CONFIG_SYS_TEXT_BASE=0x8780 > CONFIG_SPL_GPIO_SUPPORT=y > CONFIG_SPL_LIBCOMMON_SUPPORT=y > CONFIG_SPL_LIBGENERIC_SUPPORT=y > +CONFIG_SPL_ENV_SUPPORT=y > CONFIG_TARGET_MX6ULL_ISIOT=y > CONFIG_SPL_SERIAL_SUPPORT=y > CONFIG_SPL=y > -- > 2.7.4 > Michael -- | Michael Nazzareno Trimarchi Amarula Solutions BV | | COO - Founder Cruquiuskade 47 | | +31(0)851119172 Amsterdam 1018 AM NL | | [`as] http://www.amarulasolutions.com | ___ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot
[U-Boot] [PATCH] Convert CONFIG_NAND_LPC32XX_SLC to Kconfig
This converts the following to Kconfig: CONFIG_NAND_LPC32XX_SLC Signed-off-by: Adam Ford diff --git a/configs/devkit3250_defconfig b/configs/devkit3250_defconfig index 14c24ce6f2..8a37122104 100644 --- a/configs/devkit3250_defconfig +++ b/configs/devkit3250_defconfig @@ -34,6 +34,7 @@ CONFIG_DM_GPIO=y # CONFIG_MMC is not set CONFIG_MTD_NOR_FLASH=y CONFIG_NAND=y +CONFIG_NAND_LPC32XX_SLC=y CONFIG_SPL_NAND_SIMPLE=y CONFIG_PHYLIB=y CONFIG_PHY_ADDR_ENABLE=y diff --git a/drivers/mtd/nand/Kconfig b/drivers/mtd/nand/Kconfig index 420a220c81..2915d59f4c 100644 --- a/drivers/mtd/nand/Kconfig +++ b/drivers/mtd/nand/Kconfig @@ -37,6 +37,11 @@ config NAND_DENALI_SPARE_AREA_SKIP_BYTES of OOB area before last ECC sector data starts. This is potentially used to preserve the bad block marker in the OOB area. +config NAND_LPC32XX_SLC + bool "Support LPC32XX_SLC controller" + help + Enable the LPC32XX SLC NAND controller. + config NAND_OMAP_GPMC bool "Support OMAP GPMC NAND controller" depends on ARCH_OMAP2PLUS diff --git a/include/configs/devkit3250.h b/include/configs/devkit3250.h index d12f37150b..00e9c44fdf 100644 --- a/include/configs/devkit3250.h +++ b/include/configs/devkit3250.h @@ -84,7 +84,6 @@ /* * NAND controller */ -#define CONFIG_NAND_LPC32XX_SLC #define CONFIG_SYS_NAND_BASE SLC_NAND_BASE #define CONFIG_SYS_MAX_NAND_DEVICE 1 #define CONFIG_SYS_NAND_BASE_LIST { CONFIG_SYS_NAND_BASE } diff --git a/scripts/config_whitelist.txt b/scripts/config_whitelist.txt index 42dc722251..baecbbbfa3 100644 --- a/scripts/config_whitelist.txt +++ b/scripts/config_whitelist.txt @@ -1381,7 +1381,6 @@ CONFIG_NAND_FSMC CONFIG_NAND_KIRKWOOD CONFIG_NAND_KMETER1 CONFIG_NAND_LPC32XX_MLC -CONFIG_NAND_LPC32XX_SLC CONFIG_NAND_MODE_REG CONFIG_NAND_MXC_V1_1 CONFIG_NAND_OMAP_ECCSCHEME -- 2.17.1 ___ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot
[U-Boot] [PATCH] Convert CONFIG_NAND_DAVINCI to Kconfig
This converts the following to Kconfig: CONFIG_NAND_DAVINCI Signed-off-by: Adam Ford diff --git a/configs/ea20_defconfig b/configs/ea20_defconfig index 497e5515d7..43292a126d 100644 --- a/configs/ea20_defconfig +++ b/configs/ea20_defconfig @@ -30,6 +30,8 @@ CONFIG_CMD_DIAG=y CONFIG_CMD_UBI=y CONFIG_ENV_IS_IN_SPI_FLASH=y # CONFIG_MMC is not set +CONFIG_NAND=y +CONFIG_NAND_DAVINCI=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_STMICRO=y CONFIG_SYS_NS16550=y diff --git a/configs/ipam390_defconfig b/configs/ipam390_defconfig index 15c4944b3b..d1a6e542cb 100644 --- a/configs/ipam390_defconfig +++ b/configs/ipam390_defconfig @@ -34,4 +34,6 @@ CONFIG_CMD_DIAG=y CONFIG_CMD_UBI=y CONFIG_ENV_IS_IN_NAND=y # CONFIG_MMC is not set +CONFIG_NAND=y +CONFIG_NAND_DAVINCI=y CONFIG_SYS_NS16550=y diff --git a/configs/k2e_evm_defconfig b/configs/k2e_evm_defconfig index 3307839829..c5bb84a8d6 100644 --- a/configs/k2e_evm_defconfig +++ b/configs/k2e_evm_defconfig @@ -36,6 +36,8 @@ CONFIG_NET_RANDOM_ETHADDR=y CONFIG_DM=y CONFIG_TI_AEMIF=y # CONFIG_MMC is not set +CONFIG_NAND=y +CONFIG_NAND_DAVINCI=y CONFIG_DM_SPI_FLASH=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_STMICRO=y diff --git a/configs/k2e_hs_evm_defconfig b/configs/k2e_hs_evm_defconfig index ef6abc868d..a86eeb8b14 100644 --- a/configs/k2e_hs_evm_defconfig +++ b/configs/k2e_hs_evm_defconfig @@ -29,6 +29,8 @@ CONFIG_NET_RANDOM_ETHADDR=y CONFIG_DM=y CONFIG_TI_AEMIF=y # CONFIG_MMC is not set +CONFIG_NAND=y +CONFIG_NAND_DAVINCI=y CONFIG_DM_SPI_FLASH=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_STMICRO=y diff --git a/configs/k2g_evm_defconfig b/configs/k2g_evm_defconfig index ede8f6a701..911618c17a 100644 --- a/configs/k2g_evm_defconfig +++ b/configs/k2g_evm_defconfig @@ -36,6 +36,8 @@ CONFIG_DM=y # CONFIG_BLK is not set CONFIG_DM_MMC=y CONFIG_MMC_OMAP_HS=y +CONFIG_NAND=y +CONFIG_NAND_DAVINCI=y CONFIG_DM_SPI_FLASH=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_BAR=y diff --git a/configs/k2g_hs_evm_defconfig b/configs/k2g_hs_evm_defconfig index 04f4b02a09..174af79960 100644 --- a/configs/k2g_hs_evm_defconfig +++ b/configs/k2g_hs_evm_defconfig @@ -29,6 +29,8 @@ CONFIG_DM=y # CONFIG_BLK is not set CONFIG_DM_MMC=y CONFIG_MMC_OMAP_HS=y +CONFIG_NAND=y +CONFIG_NAND_DAVINCI=y CONFIG_DM_SPI_FLASH=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_BAR=y diff --git a/configs/k2hk_evm_defconfig b/configs/k2hk_evm_defconfig index fa800f5ef7..942e44e7a9 100644 --- a/configs/k2hk_evm_defconfig +++ b/configs/k2hk_evm_defconfig @@ -36,6 +36,8 @@ CONFIG_NET_RANDOM_ETHADDR=y CONFIG_DM=y CONFIG_TI_AEMIF=y # CONFIG_MMC is not set +CONFIG_NAND=y +CONFIG_NAND_DAVINCI=y CONFIG_DM_SPI_FLASH=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_STMICRO=y diff --git a/configs/k2hk_hs_evm_defconfig b/configs/k2hk_hs_evm_defconfig index 2cf5c4fd7c..12be37f0b7 100644 --- a/configs/k2hk_hs_evm_defconfig +++ b/configs/k2hk_hs_evm_defconfig @@ -29,6 +29,8 @@ CONFIG_NET_RANDOM_ETHADDR=y CONFIG_DM=y CONFIG_TI_AEMIF=y # CONFIG_MMC is not set +CONFIG_NAND=y +CONFIG_NAND_DAVINCI=y CONFIG_DM_SPI_FLASH=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_STMICRO=y diff --git a/configs/k2l_evm_defconfig b/configs/k2l_evm_defconfig index 1034d36455..5381e9f7cc 100644 --- a/configs/k2l_evm_defconfig +++ b/configs/k2l_evm_defconfig @@ -36,6 +36,8 @@ CONFIG_NET_RANDOM_ETHADDR=y CONFIG_DM=y CONFIG_TI_AEMIF=y # CONFIG_MMC is not set +CONFIG_NAND=y +CONFIG_NAND_DAVINCI=y CONFIG_DM_SPI_FLASH=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_STMICRO=y diff --git a/configs/k2l_hs_evm_defconfig b/configs/k2l_hs_evm_defconfig index d369d320d6..0381a7240c 100644 --- a/configs/k2l_hs_evm_defconfig +++ b/configs/k2l_hs_evm_defconfig @@ -28,6 +28,8 @@ CONFIG_NET_RANDOM_ETHADDR=y CONFIG_DM=y CONFIG_TI_AEMIF=y # CONFIG_MMC is not set +CONFIG_NAND=y +CONFIG_NAND_DAVINCI=y CONFIG_DM_SPI_FLASH=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_STMICRO=y diff --git a/configs/omapl138_lcdk_defconfig b/configs/omapl138_lcdk_defconfig index cabea06256..4a97269dd4 100644 --- a/configs/omapl138_lcdk_defconfig +++ b/configs/omapl138_lcdk_defconfig @@ -35,6 +35,7 @@ CONFIG_DM=y CONFIG_DM_I2C=y CONFIG_DM_I2C_COMPAT=y CONFIG_NAND=y +CONFIG_NAND_DAVINCI=y CONFIG_SYS_NAND_BUSWIDTH_16BIT=y CONFIG_SYS_NAND_U_BOOT_LOCATIONS=y CONFIG_SYS_NAND_U_BOOT_OFFS=0x28000 diff --git a/drivers/mtd/nand/Kconfig b/drivers/mtd/nand/Kconfig index 2915d59f4c..c3a1453ee1 100644 --- a/drivers/mtd/nand/Kconfig +++ b/drivers/mtd/nand/Kconfig @@ -15,6 +15,12 @@ config NAND_ATMEL Enable this driver for NAND flash platforms using an Atmel NAND controller. +config NAND_DAVINCI + bool "Support TI Davinci NAND controller" + help + Enable this driver for NAND flash controllers available in Davinici + and Keystone2 platforms + config NAND_DENALI bool select SYS_NAND_SELF_INIT diff --git a/include/configs/da850evm.h b/include/configs/da850evm.h index ebfdd1c7a3..006cd03c00 100644 --- a/include/configs/da850evm.h +++ b/include/configs/da850evm.h @
[U-Boot] [PATCH] configs: Make NAND_BOOT and ONENAND_BOOT imply NAND
Some boards indicate support from booting NAND or ONENAND booting, but don't enable the CONFIG_NAND. This makes those boards imply NAND which will make enabling other flags that are dependent on CONFIG_NAND possible and easier to migrate. Signed-off-by: Adam Ford diff --git a/common/Kconfig b/common/Kconfig index 4c7a1a9af8..a22268cbf9 100644 --- a/common/Kconfig +++ b/common/Kconfig @@ -125,6 +125,7 @@ config NOR_BOOT config NAND_BOOT bool "Support for booting from NAND flash" default n + imply NAND help Enabling this will make a U-Boot binary that is capable of being booted via NAND flash. This is not a must, some SoCs need this, @@ -133,6 +134,7 @@ config NAND_BOOT config ONENAND_BOOT bool "Support for booting from ONENAND" default n + imply NAND help Enabling this will make a U-Boot binary that is capable of being booted via ONENAND. This is not a must, some SoCs need this, diff --git a/configs/at91sam9m10g45ek_nandflash_defconfig b/configs/at91sam9m10g45ek_nandflash_defconfig index d85a92a026..5b5a942f23 100644 --- a/configs/at91sam9m10g45ek_nandflash_defconfig +++ b/configs/at91sam9m10g45ek_nandflash_defconfig @@ -38,7 +38,6 @@ CONFIG_DM_GPIO=y CONFIG_AT91_GPIO=y CONFIG_DM_MMC=y CONFIG_GENERIC_ATMEL_MCI=y -CONFIG_NAND=y CONFIG_NAND_ATMEL=y CONFIG_DM_ETH=y CONFIG_MACB=y diff --git a/configs/at91sam9n12ek_nandflash_defconfig b/configs/at91sam9n12ek_nandflash_defconfig index 33da570b4d..1627206c9e 100644 --- a/configs/at91sam9n12ek_nandflash_defconfig +++ b/configs/at91sam9n12ek_nandflash_defconfig @@ -38,7 +38,6 @@ CONFIG_DM_GPIO=y CONFIG_AT91_GPIO=y CONFIG_DM_MMC=y CONFIG_GENERIC_ATMEL_MCI=y -CONFIG_NAND=y CONFIG_NAND_ATMEL=y CONFIG_DM_SPI_FLASH=y CONFIG_SPI_FLASH=y diff --git a/configs/at91sam9x5ek_nandflash_defconfig b/configs/at91sam9x5ek_nandflash_defconfig index 5dab4bae88..87944fce47 100644 --- a/configs/at91sam9x5ek_nandflash_defconfig +++ b/configs/at91sam9x5ek_nandflash_defconfig @@ -39,7 +39,6 @@ CONFIG_DM_GPIO=y CONFIG_AT91_GPIO=y CONFIG_DM_MMC=y CONFIG_GENERIC_ATMEL_MCI=y -CONFIG_NAND=y CONFIG_NAND_ATMEL=y CONFIG_DM_SPI_FLASH=y CONFIG_SPI_FLASH=y diff --git a/configs/ls2080aqds_nand_defconfig b/configs/ls2080aqds_nand_defconfig index cbb6133266..c6f91453a8 100644 --- a/configs/ls2080aqds_nand_defconfig +++ b/configs/ls2080aqds_nand_defconfig @@ -41,7 +41,6 @@ CONFIG_NET_RANDOM_ETHADDR=y CONFIG_DM=y CONFIG_FSL_CAAM=y CONFIG_FSL_ESDHC=y -CONFIG_NAND=y CONFIG_DM_SPI_FLASH=y CONFIG_PHYLIB=y CONFIG_NETDEVICES=y diff --git a/configs/ls2080ardb_nand_defconfig b/configs/ls2080ardb_nand_defconfig index 590d0ba9dd..8a33f4c4d3 100644 --- a/configs/ls2080ardb_nand_defconfig +++ b/configs/ls2080ardb_nand_defconfig @@ -39,7 +39,6 @@ CONFIG_DM=y CONFIG_FSL_CAAM=y CONFIG_FSL_ESDHC=y CONFIG_MTD_NOR_FLASH=y -CONFIG_NAND=y CONFIG_PHYLIB=y CONFIG_NETDEVICES=y CONFIG_PHY_GIGE=y diff --git a/configs/sama5d2_ptc_ek_nandflash_defconfig b/configs/sama5d2_ptc_ek_nandflash_defconfig index b4a7376197..ebba7599f0 100644 --- a/configs/sama5d2_ptc_ek_nandflash_defconfig +++ b/configs/sama5d2_ptc_ek_nandflash_defconfig @@ -45,7 +45,6 @@ CONFIG_I2C_EEPROM=y CONFIG_DM_MMC=y CONFIG_MMC_SDHCI=y CONFIG_MMC_SDHCI_ATMEL=y -CONFIG_NAND=y CONFIG_NAND_ATMEL=y CONFIG_DM_ETH=y CONFIG_MACB=y diff --git a/configs/sama5d36ek_cmp_nandflash_defconfig b/configs/sama5d36ek_cmp_nandflash_defconfig index 46ec7c728f..9def836578 100644 --- a/configs/sama5d36ek_cmp_nandflash_defconfig +++ b/configs/sama5d36ek_cmp_nandflash_defconfig @@ -40,7 +40,6 @@ CONFIG_DM_GPIO=y CONFIG_AT91_GPIO=y CONFIG_DM_MMC=y CONFIG_GENERIC_ATMEL_MCI=y -CONFIG_NAND=y CONFIG_NAND_ATMEL=y CONFIG_DM_SPI_FLASH=y CONFIG_SPI_FLASH=y diff --git a/configs/sama5d3_xplained_nandflash_defconfig b/configs/sama5d3_xplained_nandflash_defconfig index 4efcba6062..8d0e475cca 100644 --- a/configs/sama5d3_xplained_nandflash_defconfig +++ b/configs/sama5d3_xplained_nandflash_defconfig @@ -54,7 +54,6 @@ CONFIG_DM_GPIO=y CONFIG_AT91_GPIO=y CONFIG_DM_MMC=y CONFIG_GENERIC_ATMEL_MCI=y -CONFIG_NAND=y CONFIG_NAND_ATMEL=y CONFIG_DM_ETH=y CONFIG_MACB=y diff --git a/configs/sama5d3xek_nandflash_defconfig b/configs/sama5d3xek_nandflash_defconfig index b2e46e5bdb..940decc322 100644 --- a/configs/sama5d3xek_nandflash_defconfig +++ b/configs/sama5d3xek_nandflash_defconfig @@ -56,7 +56,6 @@ CONFIG_AT91_GPIO=y CONFIG_DM_MMC=y CONFIG_GENERIC_ATMEL_MCI=y CONFIG_MTD_NOR_FLASH=y -CONFIG_NAND=y CONFIG_NAND_ATMEL=y CONFIG_DM_SPI_FLASH=y CONFIG_SPI_FLASH=y diff --git a/configs/sama5d4_xplained_nandflash_defconfig b/configs/sama5d4_xplained_nandflash_defconfig index eae8a04c25..e2f8bbbe49 100644 --- a/configs/sama5d4_xplained_nandflash_defconfig +++ b/configs/sama5d4_xplained_nandflash_defconfig @@ -52,7 +52,6 @@ CONFIG_SYS_I2C_AT91=y CONFIG_I2C_EEPROM=y CONFIG_DM_MMC=y CONFIG_GENERIC_ATMEL_MCI=y -CONFIG_NAND=y CONFIG_NAND_ATMEL=y CONFIG_DM
[U-Boot] [PATCH] cmd: Make CMD_NAND imply NAND
Many boards check for CMD_NAND and not NAND. This makes CMD_NAND imply NAND which will make some Kconfig migration of some NAND options easier later. Rsync all defconfig files using moveconfig.py Signed-off-by: Adam Ford --- cmd/Kconfig | 1 + configs/MPC8313ERDB_NAND_33_defconfig| 1 - configs/MPC8313ERDB_NAND_66_defconfig| 1 - configs/P1022DS_36BIT_NAND_defconfig | 1 - configs/P1022DS_NAND_defconfig | 1 - configs/P1025RDB_NAND_defconfig | 1 - configs/P5020DS_NAND_SECURE_BOOT_defconfig | 1 - configs/P5020DS_NAND_defconfig | 1 - configs/P5040DS_NAND_SECURE_BOOT_defconfig | 1 - configs/P5040DS_NAND_defconfig | 1 - configs/am335x_baltos_defconfig | 1 - configs/am335x_evm_defconfig | 1 - configs/am335x_evm_nor_defconfig | 1 - configs/am335x_evm_usbspl_defconfig | 1 - configs/am335x_hs_evm_defconfig | 1 - configs/am335x_hs_evm_uart_defconfig | 1 - configs/am335x_igep003x_defconfig| 1 - configs/am3517_crane_defconfig | 1 - configs/am3517_evm_defconfig | 1 - configs/am43xx_evm_defconfig | 1 - configs/am43xx_evm_ethboot_defconfig | 1 - configs/am43xx_evm_rtconly_defconfig | 1 - configs/am43xx_evm_usbhost_boot_defconfig| 1 - configs/am43xx_hs_evm_defconfig | 1 - configs/apf27_defconfig | 4 +--- configs/aristainetos2_defconfig | 6 -- configs/aristainetos2b_defconfig | 6 -- configs/aristainetos_defconfig | 6 -- configs/at91sam9260ek_dataflash_cs0_defconfig| 1 - configs/at91sam9260ek_dataflash_cs1_defconfig| 1 - configs/at91sam9260ek_nandflash_defconfig| 1 - configs/at91sam9261ek_dataflash_cs0_defconfig| 1 - configs/at91sam9261ek_dataflash_cs3_defconfig| 1 - configs/at91sam9261ek_nandflash_defconfig| 1 - configs/at91sam9263ek_dataflash_cs0_defconfig| 1 - configs/at91sam9263ek_dataflash_defconfig| 1 - configs/at91sam9263ek_nandflash_defconfig| 1 - configs/at91sam9263ek_norflash_boot_defconfig| 1 - configs/at91sam9263ek_norflash_defconfig | 1 - configs/at91sam9g10ek_dataflash_cs0_defconfig| 1 - configs/at91sam9g10ek_dataflash_cs3_defconfig| 1 - configs/at91sam9g10ek_nandflash_defconfig| 1 - configs/at91sam9g20ek_2mmc_defconfig | 1 - configs/at91sam9g20ek_2mmc_nandflash_defconfig | 1 - configs/at91sam9g20ek_dataflash_cs0_defconfig| 1 - configs/at91sam9g20ek_dataflash_cs1_defconfig| 1 - configs/at91sam9g20ek_nandflash_defconfig| 1 - configs/at91sam9m10g45ek_mmc_defconfig | 1 - configs/at91sam9n12ek_mmc_defconfig | 1 - configs/at91sam9n12ek_spiflash_defconfig | 1 - configs/at91sam9rlek_dataflash_defconfig | 1 - configs/at91sam9rlek_mmc_defconfig | 1 - configs/at91sam9rlek_nandflash_defconfig | 1 - configs/at91sam9x5ek_dataflash_defconfig | 1 - configs/at91sam9x5ek_mmc_defconfig | 1 - configs/at91sam9x5ek_spiflash_defconfig | 1 - configs/at91sam9xeek_dataflash_cs0_defconfig | 1 - configs/at91sam9xeek_dataflash_cs1_defconfig | 1 - configs/at91sam9xeek_nandflash_defconfig | 1 - configs/axm_defconfig| 1 - configs/bg0900_defconfig | 4 ++-- configs/bitmain_antminer_s9_defconfig| 4 +--- configs/bk4r1_defconfig | 3 +-- configs/brppt1_nand_defconfig| 1 - configs/cairo_defconfig | 1 - configs/chiliboard_defconfig | 1 - configs/cm_t335_defconfig| 1 - configs/cm_t3517_defconfig | 1 - configs/cm_t35_defconfig | 1 - configs/cm_t43_defconfig | 1 - configs/colibri_imx7_defconfig | 6 -- configs/corvus_defconfig | 1 - configs/devkit3250_defconfig | 1 - configs/devkit8000_defconfig | 1 - configs/draco_defconfig | 1 - configs/ea20_defconfig | 1 - configs/eco5pk_defconfig | 1 - configs/etamin_defconfig | 1 - configs/ethernut5_defconfig | 1 - configs/gurnard_defconfig| 1 - configs/gwventana_nand_defconfig | 6 -- configs/igep0032_defconfig | 1 - configs/igep00x0_defconfig | 1 - configs/imx6q_logic_defconfig| 6 -- configs/ipam390_defconfig
[U-Boot] [PATCH] Convert CONFIG_NAND_ATMEL to Kconfig
This converts the following to Kconfig: CONFIG_NAND_ATMEL Signed-off-by: Adam Ford diff --git a/configs/at91sam9260ek_dataflash_cs0_defconfig b/configs/at91sam9260ek_dataflash_cs0_defconfig index 3d2b8803ea..c77b8d8a20 100644 --- a/configs/at91sam9260ek_dataflash_cs0_defconfig +++ b/configs/at91sam9260ek_dataflash_cs0_defconfig @@ -34,6 +34,8 @@ CONFIG_CLK_AT91=y CONFIG_DM_GPIO=y CONFIG_AT91_GPIO=y # CONFIG_MMC is not set +CONFIG_NAND=y +CONFIG_NAND_ATMEL=y CONFIG_DM_SPI_FLASH=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_ATMEL=y diff --git a/configs/at91sam9260ek_dataflash_cs1_defconfig b/configs/at91sam9260ek_dataflash_cs1_defconfig index 6b821a9375..254d159185 100644 --- a/configs/at91sam9260ek_dataflash_cs1_defconfig +++ b/configs/at91sam9260ek_dataflash_cs1_defconfig @@ -34,6 +34,8 @@ CONFIG_CLK_AT91=y CONFIG_DM_GPIO=y CONFIG_AT91_GPIO=y # CONFIG_MMC is not set +CONFIG_NAND=y +CONFIG_NAND_ATMEL=y CONFIG_DM_SPI_FLASH=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_ATMEL=y diff --git a/configs/at91sam9260ek_nandflash_defconfig b/configs/at91sam9260ek_nandflash_defconfig index ea5292c934..9079a668bd 100644 --- a/configs/at91sam9260ek_nandflash_defconfig +++ b/configs/at91sam9260ek_nandflash_defconfig @@ -34,6 +34,8 @@ CONFIG_CLK_AT91=y CONFIG_DM_GPIO=y CONFIG_AT91_GPIO=y # CONFIG_MMC is not set +CONFIG_NAND=y +CONFIG_NAND_ATMEL=y CONFIG_DM_SPI_FLASH=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_ATMEL=y diff --git a/configs/at91sam9261ek_dataflash_cs0_defconfig b/configs/at91sam9261ek_dataflash_cs0_defconfig index b6c9244a59..c5b37fcbd3 100644 --- a/configs/at91sam9261ek_dataflash_cs0_defconfig +++ b/configs/at91sam9261ek_dataflash_cs0_defconfig @@ -35,6 +35,8 @@ CONFIG_CLK_AT91=y CONFIG_DM_GPIO=y CONFIG_AT91_GPIO=y # CONFIG_MMC is not set +CONFIG_NAND=y +CONFIG_NAND_ATMEL=y CONFIG_DM_SPI_FLASH=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_ATMEL=y diff --git a/configs/at91sam9261ek_dataflash_cs3_defconfig b/configs/at91sam9261ek_dataflash_cs3_defconfig index d7fb15b3e7..43fb85cc11 100644 --- a/configs/at91sam9261ek_dataflash_cs3_defconfig +++ b/configs/at91sam9261ek_dataflash_cs3_defconfig @@ -35,6 +35,8 @@ CONFIG_CLK_AT91=y CONFIG_DM_GPIO=y CONFIG_AT91_GPIO=y # CONFIG_MMC is not set +CONFIG_NAND=y +CONFIG_NAND_ATMEL=y CONFIG_DM_SPI_FLASH=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_ATMEL=y diff --git a/configs/at91sam9261ek_nandflash_defconfig b/configs/at91sam9261ek_nandflash_defconfig index 95b7558183..a62617afbe 100644 --- a/configs/at91sam9261ek_nandflash_defconfig +++ b/configs/at91sam9261ek_nandflash_defconfig @@ -35,6 +35,8 @@ CONFIG_CLK_AT91=y CONFIG_DM_GPIO=y CONFIG_AT91_GPIO=y # CONFIG_MMC is not set +CONFIG_NAND=y +CONFIG_NAND_ATMEL=y CONFIG_DM_SPI_FLASH=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_ATMEL=y diff --git a/configs/at91sam9263ek_dataflash_cs0_defconfig b/configs/at91sam9263ek_dataflash_cs0_defconfig index 9f357aef90..c49f3871fd 100644 --- a/configs/at91sam9263ek_dataflash_cs0_defconfig +++ b/configs/at91sam9263ek_dataflash_cs0_defconfig @@ -39,6 +39,8 @@ CONFIG_DM_GPIO=y CONFIG_AT91_GPIO=y CONFIG_DM_MMC=y CONFIG_GENERIC_ATMEL_MCI=y +CONFIG_NAND=y +CONFIG_NAND_ATMEL=y CONFIG_DM_SPI_FLASH=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_ATMEL=y diff --git a/configs/at91sam9263ek_dataflash_defconfig b/configs/at91sam9263ek_dataflash_defconfig index 9f357aef90..c49f3871fd 100644 --- a/configs/at91sam9263ek_dataflash_defconfig +++ b/configs/at91sam9263ek_dataflash_defconfig @@ -39,6 +39,8 @@ CONFIG_DM_GPIO=y CONFIG_AT91_GPIO=y CONFIG_DM_MMC=y CONFIG_GENERIC_ATMEL_MCI=y +CONFIG_NAND=y +CONFIG_NAND_ATMEL=y CONFIG_DM_SPI_FLASH=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_ATMEL=y diff --git a/configs/at91sam9263ek_nandflash_defconfig b/configs/at91sam9263ek_nandflash_defconfig index 1a43f4f110..1592a7ccd6 100644 --- a/configs/at91sam9263ek_nandflash_defconfig +++ b/configs/at91sam9263ek_nandflash_defconfig @@ -39,6 +39,8 @@ CONFIG_DM_GPIO=y CONFIG_AT91_GPIO=y CONFIG_DM_MMC=y CONFIG_GENERIC_ATMEL_MCI=y +CONFIG_NAND=y +CONFIG_NAND_ATMEL=y CONFIG_DM_SPI_FLASH=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_ATMEL=y diff --git a/configs/at91sam9263ek_norflash_boot_defconfig b/configs/at91sam9263ek_norflash_boot_defconfig index 96836267cd..0009a9cbea 100644 --- a/configs/at91sam9263ek_norflash_boot_defconfig +++ b/configs/at91sam9263ek_norflash_boot_defconfig @@ -38,6 +38,8 @@ CONFIG_AT91_GPIO=y CONFIG_DM_MMC=y CONFIG_GENERIC_ATMEL_MCI=y CONFIG_MTD_NOR_FLASH=y +CONFIG_NAND=y +CONFIG_NAND_ATMEL=y CONFIG_DM_SPI_FLASH=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_ATMEL=y diff --git a/configs/at91sam9263ek_norflash_defconfig b/configs/at91sam9263ek_norflash_defconfig index a2b52df354..e035589582 100644 --- a/configs/at91sam9263ek_norflash_defconfig +++ b/configs/at91sam9263ek_norflash_defconfig @@ -38,6 +38,8 @@ CONFIG_AT91_GPIO=y CONFIG_DM_MMC=y CONFIG_GENERIC_ATMEL_MCI=y CONFIG_MTD_NOR_FLASH=y +CONFIG_NAND=y +CONFIG_NAND_ATMEL=y CONFIG_DM_SPI_FLASH=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_ATMEL=y diff
Re: [U-Boot] [U-Boot, v2, 1/3] efi_loader: correctly initialize system table crc32
On 07.07.18 09:05, Heinrich Schuchardt wrote: > On 07/06/2018 07:22 AM, Alexander Graf wrote: >>> We should calculate the crc32 after initalizing all fields of the system >>> table. >>> >>> Signed-off-by: Heinrich Schuchardt >> >> Thanks, applied to efi-next >> >> Alex >> >> > Hello Alex, > > this patch series causes a Travis error. Please, remove it from > efi-next. I will send a new version - after Travis testing. Done. Thanks, Alex ___ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot
Re: [U-Boot] [PATCH v2 2/2] net: mvgbe: convert to DM
Hi Chris, thanks for your efforts. This basically works for me on my Kirkwood LSCHLv2 board. So you may add Tested-by: Michael Walle But there are some issues. See below. [snip] -#if defined(CONFIG_PHYLIB) +#if defined(CONFIG_PHYLIB) || defined(CONFIG_DM_ETH) +#if defined(CONFIG_DM_ETH) +static struct phy_device *__mvgbe_phy_init(struct udevice *dev, + struct mii_dev *bus, + phy_interface_t phy_interface, + int phyid) +#else +static struct phy_device *__mvgbe_phy_init(struct eth_device *dev, + struct mii_dev *bus, + phy_interface_t phy_interface, + int phyid) +#endif +{ + struct phy_device *phydev; + + /* Set phy address of the port */ + miiphy_write(dev->name, MV_PHY_ADR_REQUEST, MV_PHY_ADR_REQUEST, +phyid); + + phydev = phy_connect(bus, phyid, dev, phy_interface); So CONFIG_PHYLIB is required if CONFIG_DM_ETH is enabled? If so, then can we add selects PHYLIB if DM_ETH to the CONFIG_MVGBE Kconfig part? + if (!phydev) { + printf("phy_connect failed\n"); + return NULL; + } + + phy_config(phydev); + phy_startup(phydev); + + return phydev; +} +#endif /* CONFIG_PHYLIB || CONFIG_DM_ETH */ + [snip] +static int mvgbe_ofdata_to_platdata(struct udevice *dev) +{ + struct eth_pdata *pdata = dev_get_platdata(dev); + struct mvgbe_device *dmvgbe = dev_get_priv(dev); + void *blob = (void *)gd->fdt_blob; + int node = dev_of_offset(dev); + const char *phy_mode; + int fl_node; + unsigned long addr; + + pdata->iobase = devfdt_get_addr(dev); + + /* Get phy-mode / phy_interface from DT */ + pdata->phy_interface = -1; + phy_mode = fdt_getprop(gd->fdt_blob, dev_of_offset(dev), "phy-mode", + NULL); + if (phy_mode) + pdata->phy_interface = phy_get_interface_by_name(phy_mode); + if (pdata->phy_interface == -1) { + debug("%s: Invalid PHY interface '%s'\n", __func__, phy_mode); + return -EINVAL; + } + + dmvgbe->phy_interface = pdata->phy_interface; + + /* fetch 'fixed-link' property */ + fl_node = fdt_subnode_offset(blob, node, "fixed-link"); + if (fl_node != -FDT_ERR_NOTFOUND) { + /* set phy_addr to invalid value for fixed link */ + dmvgbe->phyaddr = PHY_MAX_ADDR + 1; + dmvgbe->duplex = fdtdec_get_bool(blob, fl_node, "full-duplex"); + dmvgbe->speed = fdtdec_get_int(blob, fl_node, "speed", 0); + } else { + /* Now read phyaddr from DT */ + addr = fdtdec_get_int(blob, node, "phy", 0); Should be "phy-handle", shouldn't it? And isn't there already function for this which gets the phy address? Also, the phy-handle is on the port subnode in the device tree. I guess, this applies to phy-mode, too. + addr = fdt_node_offset_by_phandle(blob, addr); + dmvgbe->phyaddr = fdtdec_get_int(blob, addr, "reg", 0); + } + + return 0; +} -michael ___ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot
Re: [U-Boot] [PATCH v3 5/6] lib: crc32: mark function crc32() as __efi_runtime
On 07.07.18 15:36, Heinrich Schuchardt wrote: > The function crc32() is needed by the EFI subsystem at runtime. So it has > to be linked into the runtime section together with all dependencies. > > Eliminate empty define ZEXPORT. > > Signed-off-by: Heinrich Schuchardt > --- > v3 > new patch > --- > lib/crc32.c | 17 ++--- > 1 file changed, 10 insertions(+), 7 deletions(-) > > diff --git a/lib/crc32.c b/lib/crc32.c > index 7f545fde4a..bcb140ba06 100644 > --- a/lib/crc32.c > +++ b/lib/crc32.c > @@ -12,6 +12,7 @@ > #include > #else > #include > +#include > #endif > #include > #include > @@ -21,8 +22,11 @@ > #endif > #include "u-boot/zlib.h" > > -#define local static > -#define ZEXPORT /* empty */ > +#ifdef USE_HOSTCC > +#define __efi_runtime > +#define __efi_runtime_data > +#endif > +#define local static __efi_runtime_data This pushes functions into the data section - which is probably not what we want. Eventually we may want to have NX protection, so we need to separate code and data as well as we can. Alex ___ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot
Re: [U-Boot] [PATCH v3 6/6] efi_loader: update runtime services table crc32
On 07.07.18 15:36, Heinrich Schuchardt wrote: > The crc32 of the runtime services table must be updated after detaching. > > efi_update_table_header_crc32() must be __efi_runtime. So move it to > efi_runtime.c > > Signed-off-by: Heinrich Schuchardt Reviewed-by: Alexander Graf Alex ___ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot
Re: [U-Boot] [PATCH v2 1/6] drivers: rtc: resolve year 2038 problem in rtc_to_tm
On 07.07.18 23:39, Heinrich Schuchardt wrote: > Our implementation of rtc_to_tm() cannot handle dates of more than > 0x7fff seconds after 1970-01-01. > > Adopt the Linux kernel implementation. > > Signed-off-by: Heinrich Schuchardt This patch is slightly out of scope for efi-next and the other patches are independent of it FWIW, so I'll leave it to others to review. I'll CC Arnd though, as I'm quite sure he has a good grip on anything 2038 :) Alex > --- > v2 > adopt the Linux kernel implementation > --- > drivers/rtc/Makefile | 1 + > drivers/rtc/date.c | 43 -- > drivers/rtc/i2c_rtc_emul.c | 4 ++- > drivers/rtc/rtc-lib.c | 73 ++ > include/rtc.h | 16 +++-- > 5 files changed, 90 insertions(+), 47 deletions(-) > create mode 100644 drivers/rtc/rtc-lib.c > > diff --git a/drivers/rtc/Makefile b/drivers/rtc/Makefile > index 09f2b08244..513e3ffc07 100644 > --- a/drivers/rtc/Makefile > +++ b/drivers/rtc/Makefile > @@ -8,6 +8,7 @@ obj-$(CONFIG_DM_RTC) += rtc-uclass.o > > obj-$(CONFIG_RTC_AT91SAM9_RTT) += at91sam9_rtt.o > obj-y += date.o > +obj-y += rtc-lib.o > obj-$(CONFIG_RTC_DAVINCI) += davinci.o > obj-$(CONFIG_RTC_DS1302) += ds1302.o > obj-$(CONFIG_RTC_DS1306) += ds1306.o > diff --git a/drivers/rtc/date.c b/drivers/rtc/date.c > index 1256ffe374..f2568cf886 100644 > --- a/drivers/rtc/date.c > +++ b/drivers/rtc/date.c > @@ -19,10 +19,6 @@ > #define days_in_year(a) (leapyear(a) ? 366 : 365) > #define days_in_month(a)(month_days[(a) - 1]) > > -static int month_days[12] = { > - 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 > -}; > - > static int month_offset[] = { > 0, 31, 59, 90, 120, 151, 181, 212, 243, 273, 304, 334 > }; > @@ -65,45 +61,6 @@ int rtc_calc_weekday(struct rtc_time *tm) > return 0; > } > > -int rtc_to_tm(int tim, struct rtc_time *tm) > -{ > - register int i; > - register long hms, day; > - > - day = tim / SECDAY; > - hms = tim % SECDAY; > - > - /* Hours, minutes, seconds are easy */ > - tm->tm_hour = hms / 3600; > - tm->tm_min = (hms % 3600) / 60; > - tm->tm_sec = (hms % 3600) % 60; > - > - /* Number of years in days */ > - for (i = STARTOFTIME; day >= days_in_year(i); i++) > - day -= days_in_year(i); > - tm->tm_year = i; > - > - /* Number of months in days left */ > - if (leapyear(tm->tm_year)) > - days_in_month(FEBRUARY) = 29; > - for (i = 1; day >= days_in_month(i); i++) > - day -= days_in_month(i); > - days_in_month(FEBRUARY) = 28; > - tm->tm_mon = i; > - > - /* Days are what is left over (+1) from all that */ > - tm->tm_mday = day + 1; > - > - /* Zero unused fields */ > - tm->tm_yday = 0; > - tm->tm_isdst = 0; > - > - /* > - * Determine the day of week > - */ > - return rtc_calc_weekday(tm); > -} > - > /* > * Converts Gregorian date to seconds since 1970-01-01 00:00:00. > * Assumes input in normal date format, i.e. 1980-12-31 23:59:59 > diff --git a/drivers/rtc/i2c_rtc_emul.c b/drivers/rtc/i2c_rtc_emul.c > index bad61c377f..d4b33e59d6 100644 > --- a/drivers/rtc/i2c_rtc_emul.c > +++ b/drivers/rtc/i2c_rtc_emul.c > @@ -96,7 +96,9 @@ static int sandbox_i2c_rtc_get(struct udevice *dev, struct > rtc_time *time) > now = plat->base_time; > } > > - return rtc_to_tm(now + plat->offset, time); > + rtc_to_tm(now + plat->offset, time); > + > + return 0; > } > > static int sandbox_i2c_rtc_set(struct udevice *dev, const struct rtc_time > *time) > diff --git a/drivers/rtc/rtc-lib.c b/drivers/rtc/rtc-lib.c > new file mode 100644 > index 00..b8a7a8b2d3 > --- /dev/null > +++ b/drivers/rtc/rtc-lib.c > @@ -0,0 +1,73 @@ > +// SPDX-License-Identifier: GPL-2.0 > +/* > + * rtc and date/time utility functions > + * > + * Copyright (C) 2005-06 Tower Technologies > + * Author: Alessandro Zummo > + * > + * U-Boot rtc_time differs from Linux rtc_time: > + * - The year field takes the actual value, not year - 1900. > + * - January is month 1. > + */ > + > +#include > +#include > +#include > + > +static const unsigned char rtc_days_in_month[] = { > + 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 > +}; > + > +#define LEAPS_THRU_END_OF(y) ((y) / 4 - (y) / 100 + (y) / 400) > + > +/* > + * The number of days in the month. > + */ > +static int rtc_month_days(unsigned int month, unsigned int year) > +{ > + return rtc_days_in_month[month] + (is_leap_year(year) && month == 1); > +} > + > +/* > + * rtc_to_tm - Converts u64 to rtc_time. > + * Convert seconds since 01-01-1970 00:00:00 to Gregorian date. > + */ > +void rtc_to_tm(u64 time, struct rtc_time *tm) > +{ > + unsigned int month, year, secs, days; > + > + days = div_u64_rem(time, 86400, &secs); > + > + /* day of the week, 1970-01-01 was a Thursday */ > + tm->tm_wday = (days + 4) % 7; > + >
[U-Boot] Please pull u-boot-video/master
Hi Tom, The following changes since commit 2121bbe49c27b2b2d865fac4e4071c5a90ae90b2: lib: div64: fix typeo in include/div64.h (2018-06-29 11:30:39 -0400) are available in the git repository at: git://git.denx.de/u-boot-video.git master for you to fetch changes up to 425daac481c1374313f8eae6c159368e12dc4043: video: arm: rpi: Add brcm,bcm2708-fb compatible (2018-07-02 15:23:50 +0200) Emmanuel Vadot (1): video: arm: rpi: Add brcm,bcm2708-fb compatible drivers/video/bcm2835.c | 1 + 1 file changed, 1 insertion(+) Please pull. Thanks! Anatolij ___ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot
Re: [U-Boot] [PATCH v2 1/2] rtc: pl031: convert the driver to driver model
On Thu, Jul 05, 2018 at 04:12:59PM +0900, AKASHI Takahiro wrote: > On Wed, Jul 04, 2018 at 02:35:19PM +0300, Tuomas Tynkkynen wrote: > > Hi Akashi, > > > > Thank you for the DM conversion. > > > > On 07/04/2018 10:36 AM, AKASHI Takahiro wrote: > > <..snip..> > > >diff --git a/include/dm/platform_data/rtc_pl031.h > > >b/include/dm/platform_data/rtc_pl031.h > > >new file mode 100644 > > >index 00..8e4ba1ce69 > > >--- /dev/null > > >+++ b/include/dm/platform_data/rtc_pl031.h > > >@@ -0,0 +1,12 @@ > > >+/* SPDX-License-Identifier: GPL-2.0+ */ > > >+ > > >+#ifndef __rtc_pl031_h > > >+#define __rtc_pl031_h > > >+ > > >+#include > > >+ > > >+struct pl031_rtc_platdata { > > >+ phys_addr_t base; > > >+}; > > >+ > > >+#endif > > > > > > > I think this file won't be necessary, the structure can stay private to > > pl031.c. > > PL031 is an ARM IP block and U-Boot on ARM uses the device tree to locate > > devices. > > I think that you are suggesting we would use udevice.priv instead of > udevice.platdata, right? That will be fine with device-tree based devices. > But don't we have to take care of no-device-tree (probably legacy) > devices here? Does anybody have a comment on this? I will be able to go either with priv or platdata once agreed. > Thanks, > -Takhairo AKASHI ___ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot
Re: [U-Boot] [PATCH v3 1/2] fs: fat: cannot write to subdirectories
Hi Heinrich, On 1 July 2018 at 17:41, Heinrich Schuchardt wrote: > fs_fat_write() is not able to write to subdirectories. > > Currently if a filepath with a leading slash is passed, the slash is > treated as part of the filename to be created in the root directory. > > Strip leading (back-)slashes. > > Check that the remaining filename does not contain any illegal characters > (<>:"/\|?*). This way we will throw an error when trying to write to a > subdirectory. > > Signed-off-by: Heinrich Schuchardt > --- > fs/fat/fat_write.c | 16 +++- > 1 file changed, 15 insertions(+), 1 deletion(-) It would be great if we have filesystem tests. We do have the fs-test.sh script but it is not using pytest, so best not to build on it. Regards, Simon ___ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot
Re: [U-Boot] [PATCH v5 2/6] soc: qualcomm: Add Shared Memory Manager driver
On 1 July 2018 at 16:57, Ramon Fried wrote: > The Shared Memory Manager driver implements an interface for allocating > and accessing items in the memory area shared among all of the > processors in a Qualcomm platform. > > Adapted from the Linux driver (4.17) > > Changes from the original Linux driver: > * Removed HW spinlock mechanism, which is irrelevant > in U-boot particualar use case, which is just reading from the smem. > * Adapted from Linux driver model to U-Boot's. > > Cc: Bjorn Andersson > Signed-off-by: Ramon Fried > > --- > > Changes in v5: None > Changes in v4: None > Changes in v3: > - Removed license, SPDX is enough. > - Text and grammar fixes. > > Changes in v2: > - Applied checkpatch fixes (also sent these to Linux upstream) > - Changed UCLASS_SOC to UCLASS_SMEM > - Removed function exports and registered functionality through .ops > > MAINTAINERS | 1 + > arch/arm/Kconfig| 2 + > drivers/Kconfig | 2 + > drivers/smem/Kconfig| 13 + > drivers/smem/Makefile | 1 + > drivers/smem/msm_smem.c | 932 > 6 files changed, 951 insertions(+) > create mode 100644 drivers/smem/msm_smem.c I don't see a change log for this version so I suppose it is the same. Reviewed-by: Simon Glass ___ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot
Re: [U-Boot] [PATCH v5 5/6] drivers: smem: sandbox
On 1 July 2018 at 16:57, Ramon Fried wrote: > Add Sandbox driver for SMEM. mostly stub operations. > > Signed-off-by: Ramon Fried > --- > > Changes in v5: None > Changes in v4: None > Changes in v3: None > Changes in v2: None > > arch/sandbox/dts/test.dts | 4 > configs/sandbox64_defconfig | 2 ++ > configs/sandbox_defconfig | 2 ++ > drivers/smem/Kconfig| 9 > drivers/smem/Makefile | 1 + > drivers/smem/sandbox_smem.c | 45 + > 6 files changed, 63 insertions(+) > create mode 100644 drivers/smem/sandbox_smem.c Reviewed-by: Simon Glass ___ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot
Re: [U-Boot] [PATCH v5 6/6] test: smem: add basic smem test
On 1 July 2018 at 16:58, Ramon Fried wrote: > Add basic smem sandbox testing. > > Signed-off-by: Ramon Fried > > --- > Tom, this patch depends on https://patchwork.ozlabs.org/patch/932965/ > > Changes in v5: None > Changes in v4: > - Fixed typo in function name. > > Changes in v3: > - Adapt to smem_get_free_space() new interface in series 3. > > Changes in v2: None > > test/dm/Makefile | 1 + > test/dm/smem.c | 28 > 2 files changed, 29 insertions(+) > create mode 100644 test/dm/smem.c Reviewed-by: Simon Glass ___ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot
Re: [U-Boot] build fail due to dependence error
+Masahiro who might know On 2 July 2018 at 01:23, Dr. Philipp Tomsich wrote: > Kever, > > Could you check the build artifacts in Jenkins to see whether after > the ‘make [configname]_defconfig’, the link for asm/arch is correctly > set up? > > Thanks, > Philipp. > > On 2 Jul 2018, at 09:54, Kever Yang wrote: > > Hi Simon, > > > On 06/30/2018 12:19 PM, Simon Glass wrote: > > Hi, > > On 28 June 2018 at 01:41, Dr. Philipp Tomsich > wrote: > > Kever, > > is the link for ‘asm’ set up correctly? > > Thanks, > Philipp. > > On 28 Jun 2018, at 10:38, Kever Yang wrote: > > Hi Simon, > >Do you have any idea about this error? > > > CC lib/asm-offsets.s > CC arch/arm/lib/asm-offsets.s > fixdep: error opening config file: arch/arm/include/asm/arch/hardware.h: No > such file or directory > Kbuild:64: recipe for target 'arch/arm/lib/asm-offsets.s' failed > make[1]: *** [arch/arm/lib/asm-offsets.s] Error 2 > make[1]: *** 正在等待未完成的任务 > CHK include/config.h > Makefile:1340: recipe for target 'prepare0' failed > > Thanks, > - Kever > > On 06/01/2018 05:59 PM, Kever Yang wrote: > > Hi Guys, > > I met below error from time to time when build U-Boot project. > > fixdep: error opening config file: arch/arm/include/asm/arch/hardware.h: No > such file or directory > >The folder 'arch/arm/include/asm/arch' is a link for > 'arch/arm/include/asm/arch-rockchip', > > which is dynamic generate by build system, I thinks there should be some > dependency issue? > >How to fix this kind of issue? > > I am not sure what is going on there. I don't see this. > > Are you using 'make distclean' or 'make mrproper' on your object tree > every now and then? > > > This is happen sometimes in our Jenkins verify, It will gone when I > rebase the patch(re-build without any change), > we do 'make distclean' every time before a new build. > > Thanks, > - Kever > > Regards, > Simon > > On 2 July 2018 at 02:23, Dr. Philipp Tomsich wrote: > Kever, > > Could you check the build artifacts in Jenkins to see whether after > the ‘make [configname]_defconfig’, the link for asm/arch is correctly > set up? > > Thanks, > Philipp. > > On 2 Jul 2018, at 09:54, Kever Yang wrote: > > Hi Simon, > > > On 06/30/2018 12:19 PM, Simon Glass wrote: > > Hi, > > On 28 June 2018 at 01:41, Dr. Philipp Tomsich > wrote: > > Kever, > > is the link for ‘asm’ set up correctly? > > Thanks, > Philipp. > > On 28 Jun 2018, at 10:38, Kever Yang wrote: > > Hi Simon, > >Do you have any idea about this error? > > > CC lib/asm-offsets.s > CC arch/arm/lib/asm-offsets.s > fixdep: error opening config file: arch/arm/include/asm/arch/hardware.h: No > such file or directory > Kbuild:64: recipe for target 'arch/arm/lib/asm-offsets.s' failed > make[1]: *** [arch/arm/lib/asm-offsets.s] Error 2 > make[1]: *** 正在等待未完成的任务 > CHK include/config.h > Makefile:1340: recipe for target 'prepare0' failed > > Thanks, > - Kever > > On 06/01/2018 05:59 PM, Kever Yang wrote: > > Hi Guys, > > I met below error from time to time when build U-Boot project. > > fixdep: error opening config file: arch/arm/include/asm/arch/hardware.h: No > such file or directory > >The folder 'arch/arm/include/asm/arch' is a link for > 'arch/arm/include/asm/arch-rockchip', > > which is dynamic generate by build system, I thinks there should be some > dependency issue? > >How to fix this kind of issue? > > I am not sure what is going on there. I don't see this. > > Are you using 'make distclean' or 'make mrproper' on your object tree > every now and then? > > > This is happen sometimes in our Jenkins verify, It will gone when I > rebase the patch(re-build without any change), > we do 'make distclean' every time before a new build. > > Thanks, > - Kever > > Regards, > Simon > > ___ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot
Re: [U-Boot] [PATCH v3 2/3] doc: dtbinding: Add file system firmware loader binding document
Hi Tien Fong, On 2 July 2018 at 01:26, Chee, Tien Fong wrote: > On Fri, 2018-06-29 at 21:19 -0700, Simon Glass wrote: >> Hi Tien Fong, >> >> On 28 June 2018 at 01:58, Chee, Tien Fong >> wrote: >> > >> > On Thu, 2018-06-28 at 01:04 -0700, Chee, Tien Fong wrote: >> > > >> > > On Wed, 2018-06-27 at 14:03 -0700, Simon Glass wrote: >> > > > >> > > > >> > > > Hi Tien Fong, >> > > > >> > > > On 27 June 2018 at 01:32, Chee, Tien Fong > > > > .com >> > > > > >> > > > > >> > > > wrote: >> > > > > >> > > > > >> > > > > >> > > > > On Mon, 2018-06-25 at 21:58 -0600, Simon Glass wrote: >> > > > > > >> > > > > > >> > > > > > >> > > > > > Hi, >> > > > > > >> > > > > > On 25 June 2018 at 07:28, >> > > > > > wrote: >> > > > > > > >> > > > > > > >> > > > > > > >> > > > > > > >> > > > > > > From: Tien Fong Chee >> > > > > > > >> > > > > > > Add a document to describe file system firmware loader >> > > > > > > binding >> > > > > > > information. >> > > > > > > >> > > > > > > Signed-off-by: Tien Fong Chee >> > > > > > > --- >> > > > > > > doc/device-tree-bindings/chosen.txt | 22 >> > > > > > > >> > > > > > > doc/device-tree-bindings/misc/fs_loader.txt | 52 >> > > > > > > + >> > > > > > > 2 files changed, 74 insertions(+) >> > > > > > > create mode 100644 doc/device-tree- >> > > > > > > bindings/misc/fs_loader.txt >> > > > > > > >> > > > > > > diff --git a/doc/device-tree-bindings/chosen.txt >> > > > > > > b/doc/device- >> > > > > > > tree- >> > > > > > > bindings/chosen.txt >> > > > > > > index c96b8f7..738673c 100644 >> > > > > > > --- a/doc/device-tree-bindings/chosen.txt >> > > > > > > +++ b/doc/device-tree-bindings/chosen.txt >> > > > > > > @@ -73,3 +73,25 @@ Example >> > > > > > > u-boot,spl-boot-order = "same-as-spl", >> > > > > > > &sdmmc, >> > > > > > > "/sd >> > > > > > > hci@fe33"; >> > > > > > > }; >> > > > > > > }; >> > > > > > > + >> > > > > > > +firmware-loader property >> > > > > > > + >> > > > > > > +Multiple file system firmware loader nodes could be >> > > > > > > defined >> > > > > > > in >> > > > > > > device trees for >> > > > > > > +multiple storage type and their default partition, then >> > > > > > > a >> > > > > > > property >> > > > > > > +"firmware-loader" can be used to pass default firmware >> > > > > > > loader >> > > > > > > +node(default storage type) to the firmware loader >> > > > > > > driver. >> > > > > > > + >> > > > > > > +Example >> > > > > > > +--- >> > > > > > > +/ { >> > > > > > > + chosen { >> > > > > > > + firmware-loader = &fs_loader0; >> > > > > > > + }; >> > > > > > > + >> > > > > > > + fs_loader0: fs_loader@0 { >> > > > > > This should be : >> > > > > > >> > > > > > > >> > > > > > > >> > > > > > > >> > > > > > > >> > > > > > > + fs_loader0: fs-loader@0 { >> > > > > > since hyphen is used for node and property names. >> > > > > > Underscore is >> > > > > > used >> > > > > > for phandles (so you have that correct). >> > > > > > >> > > > > Okay. >> > > > > > >> > > > > > >> > > > > > >> > > > > > > >> > > > > > > >> > > > > > > >> > > > > > > >> > > > > > > + u-boot,dm-pre-reloc; >> > > > > > > + compatible = "fs_loader"; >> > > > > > How about u-boot,fs-loader since this is U-Boot specific I >> > > > > > think. >> > > > > > >> > > > > > >> > > > > > > >> > > > > > > >> > > > > > > >> > > > > > > >> > > > > > > + storage_device = "mmc"; >> > > > > > storage-device >> > > > > > >> > > > > Okay >> > > > > > >> > > > > > >> > > > > > >> > > > > > > >> > > > > > > >> > > > > > > >> > > > > > > >> > > > > > > + devpart = "0:1"; >> > > > > > I think you should use a phandle to the node containing the >> > > > > > mmc >> > > > > > device to use. >> > > > > > >> > > > > >storage-device = <&mmc_3 1>; >> > > > > > >> > > > > > for example (meaning use that MMC, partition 1. >> > > > > > >> > > > > How to get device number based on node of a storage? >> > > > > This could make design more complicated because this driver >> > > > > is >> > > > > designed >> > > > > to support both fdt and without fdt(U-boot env and hard >> > > > > coding in >> > > > > driver). >> > > > I think it is fine to support the environment as a way of >> > > > providing >> > > > this info, but there is no need to support non-DM. Everything >> > > > should >> > > > be converting to DM now. >> > > > >> > > Ok,i would keep the DM and environment support. >> > > >> > > > >> > > > >> > > > We have: >> > > > >> > > > uclass_get_device_by_phandle_id() >> > > > device_get_global_by_of_offset() >> > > > >> > > > I think we need to create a function called >> > > > >> > > > device_get_global_by_phandle_id() >> > > > >> > > > which can be used to obtain the device based on a phandle. >> > > > >> > > I means the device number in the struct blk_desc, block device. I >> > > don't >> > > know how the device number is built
Re: [U-Boot] [PATCH 2/2] sandbox: Don't disable ctrlc() on sandbox if in raw mode
Hi Joe, On 2 July 2018 at 18:06, Joe Hershberger wrote: > In raw mode, handle ctrl-c as normal. This allows normal ctrl-c behavior > such as aborting a command that is timing out without completely > terminating the sandbox executable. > > In [1], Simon disabled this. His reason for it was that it interferes > with piping test scripts. Piping should be done in cooked mode, so this > change should still not interfere. > > [1] commit 8969ea3e9f2db04a6b3675 ("sandbox: Disable Ctrl-C") > > Signed-off-by: Joe Hershberger > > --- > > common/console.c | 2 -- > drivers/serial/sandbox.c | 3 +++ > 2 files changed, 3 insertions(+), 2 deletions(-) It is designed so that ctrl-C exits in raw mode. That is the normal behaviour for an application and I don't think sandbox should be any different. How about using cooked mode instead? Regards, Simon ___ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot
Re: [U-Boot] [PATCH 1/4] x86: quark: acpi: Add full reset bit to the reset register value in FADT
On 3 July 2018 at 02:48, Bin Meng wrote: > This adds full reset bit in the reset register value in the ACPI FADT > table, so that kernel can do a thorough reboot. > > Signed-off-by: Bin Meng > --- > > arch/x86/cpu/quark/acpi.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > Reviewed-by: Simon Glass ___ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot
Re: [U-Boot] [PATCH] rpi: Set the default mmc max device to 2
Hi Alex, On 4 July 2018 at 00:48, Alexander Graf wrote: > On 07/04/2018 09:34 AM, Emmanuel Vadot wrote: >> >> On Wed, 4 Jul 2018 09:25:16 +0200 >> Alexander Graf wrote: >> >>> On 07/04/2018 09:08 AM, Emmanuel Vadot wrote: When running with special configuration (OF_BOARD and mmc overlay) RPI have the SD card as id 1. This make device enumeration fails when using the API. Signed-off-by: Emmanuel Vadot >>> >>> Could you please elaborate a bit? From the commit message I don't fully >>> understand which problem you're trying to solve. >>> >>> >>> Thanks, >>> >>> Alex >> >> Sure, >> >> When using the dtb from the rpi fundation and the mmc overlay (which >> switch back the sd card to use the SDHCI controller and not the SDHOST >> one) and using OF_BOARD so u-boot uses it/pass it to the OS the device >> id for the sd is 1 : >> U-Boot> mmc list >> mmc@7e30: 1 >> >> This cause the API (see api/api_storage.c) code to never expose this >> device to the consumer as the default value for >> CONFIG_SYS_MMC_MAX_DEVICE is 1. > > > Ouch, that whole file assumes that you know the number of devices present in > your system. That's terrible. > > I think the real fix would be to convert api_storage.c to instead use dm > native routines to loop through all available devices and not explicitly > depend on any maximum number of possible devices. > > Simon, do you potentially have a patch lying around for that in a branch > already? No sorry I don't. The API could use another look for DM. Regards, Simon ___ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot
Re: [U-Boot] [PATCH 3/4] x86: fsp: Eliminate the reset_cpu() call
Hi Bin, On 3 July 2018 at 02:48, Bin Meng wrote: > In preparation for the reset driver conversion, eliminate the > reset_cpu() call in the FSP init path as it's too early for the > reset driver to work. > > Signed-off-by: Bin Meng > --- > > arch/x86/lib/fsp/fsp_common.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) Reviewed-by: Simon Glass But it would be good to have a comment explaining this in the code. Regards, Simon ___ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot
Re: [U-Boot] [PATCH 1/2] console: Remember if ctrlc is disabled in console_tstc()
On 2 July 2018 at 18:06, Joe Hershberger wrote: > We don't necessarily want to re-enable ctrl-c if it was already disabled > when calling tstc(). > > Signed-off-by: Joe Hershberger > --- > > common/console.c | 7 --- > 1 file changed, 4 insertions(+), 3 deletions(-) > Reviewed-by: Simon Glass ___ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot
Re: [U-Boot] [PATCH 2/4] dm: sysreset: x86: Add a sysreset driver
On 3 July 2018 at 02:48, Bin Meng wrote: > This adds a generic reset driver for x86 processor. > > Signed-off-by: Bin Meng > --- > > drivers/sysreset/Kconfig| 6 + > drivers/sysreset/Makefile | 1 + > drivers/sysreset/sysreset_x86.c | 49 > + > 3 files changed, 56 insertions(+) > create mode 100644 drivers/sysreset/sysreset_x86.c > Reviewed-by: Simon Glass ___ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot
Re: [U-Boot] [PATCH] mmc: dw_mmc: Handle pin voltage configuration
On 7 June 2018 at 05:00, Carlo Caione wrote: > From: Carlo Caione > > Add support for pin voltage configuration. Besides to support UHS mode > this is useful when the IO lines are connected to a configurable > regulator not enabled at boot or always on. > > Signed-off-by: Carlo Caione > --- > drivers/mmc/dw_mmc.c | 34 ++ > include/dwmmc.h | 26 ++ > 2 files changed, 48 insertions(+), 12 deletions(-) Reviewed-by: Simon Glass Great to see the docs, thank you. My only suggestion would be to put them in a separate patch. - Simon ___ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot
Re: [U-Boot] [PATCH v3 4/4] rk3288: Convert register defines to const uintptr_t
On 11 June 2018 at 13:00, Carlo Caione wrote: > From: Carlo Caione > > No functional change but at least we can now guarantee type safety. > > Signed-off-by: Carlo Caione > --- > arch/arm/mach-rockchip/rk3288-board.c | 5 ++--- > 1 file changed, 2 insertions(+), 3 deletions(-) Reviewed-by: Simon Glass I'm not sure this affects type safety. The value in the #define has the same value (and type) as your variables. ___ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot
Re: [U-Boot] Please pull u-boot-video/master
On Mon, Jul 09, 2018 at 12:14:24AM +0200, Anatolij Gustschin wrote: > Hi Tom, > > The following changes since commit 2121bbe49c27b2b2d865fac4e4071c5a90ae90b2: > > lib: div64: fix typeo in include/div64.h (2018-06-29 11:30:39 -0400) > > are available in the git repository at: > > git://git.denx.de/u-boot-video.git master > > for you to fetch changes up to 425daac481c1374313f8eae6c159368e12dc4043: > > video: arm: rpi: Add brcm,bcm2708-fb compatible (2018-07-02 15:23:50 +0200) > Applied to u-boot/master, thanks! -- Tom signature.asc Description: PGP signature ___ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot
Re: [U-Boot] [PATCH 1/1] efi_loader: rename utf16_strlen, utf16_strnlen
On 05.07.18 19:39, Heinrich Schuchardt wrote: > The function names utf16_strlen() and utf16_strnlen() are misnomers. > The functions do not count utf-16 characters but non-zero words. > So let's rename them to u16_strlen and u16_strnlen(). > > In utf16_dup() avoid assignment in if clause. > > Signed-off-by: Heinrich Schuchardt We had quite a long debate back when the patches got created whether we should call these utf16 or ucs2. I don't remember if we ever got to a full conclusion. I think the u16 name is even more obvious though, so I'm in agreement with this patch. Rob, please ack if you also think it's good. Alex ___ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot
[U-Boot] [PATCH v2 1/8] Enable CONFIG_BLK and CONFIG_DM_MMC to Kconfig
This enables the folowing to Kconfig: CONFIG_BLK CONFIG_DM_MMC Signed-off-by: Yinbo Zhu --- Change in v2: Enable ls1021a CONFIG_BLK and CONFIG_DM_MMC to Kconfig configs/ls1021atwr_nor_SECURE_BOOT_defconfig |2 ++ configs/ls1021atwr_nor_defconfig |2 ++ configs/ls1021atwr_nor_lpuart_defconfig|2 ++ configs/ls1021atwr_qspi_defconfig |2 ++ .../ls1021atwr_sdcard_ifc_SECURE_BOOT_defconfig|2 ++ configs/ls1021atwr_sdcard_ifc_defconfig|2 ++ configs/ls1021atwr_sdcard_qspi_defconfig |2 ++ configs/ls1043aqds_defconfig |2 ++ configs/ls1043aqds_lpuart_defconfig|2 ++ configs/ls1043aqds_nand_defconfig |2 ++ configs/ls1043aqds_nor_ddr3_defconfig |2 ++ configs/ls1043aqds_qspi_defconfig |2 ++ configs/ls1043aqds_sdcard_ifc_defconfig|2 ++ configs/ls1043aqds_sdcard_qspi_defconfig |2 ++ configs/ls1043ardb_SECURE_BOOT_defconfig |2 ++ configs/ls1043ardb_defconfig |2 ++ configs/ls1043ardb_nand_SECURE_BOOT_defconfig |2 ++ configs/ls1043ardb_nand_defconfig |2 ++ configs/ls1043ardb_sdcard_SECURE_BOOT_defconfig|2 ++ configs/ls1043ardb_sdcard_defconfig|2 ++ configs/ls1046aqds_SECURE_BOOT_defconfig |2 ++ configs/ls1046aqds_defconfig |2 ++ configs/ls1046aqds_lpuart_defconfig|2 ++ configs/ls1046aqds_nand_defconfig |2 ++ configs/ls1046aqds_qspi_defconfig |2 ++ configs/ls1046aqds_sdcard_ifc_defconfig|2 ++ configs/ls1046aqds_sdcard_qspi_defconfig |2 ++ configs/ls1046ardb_emmc_defconfig |2 ++ configs/ls1046ardb_qspi_SECURE_BOOT_defconfig |2 ++ configs/ls1046ardb_qspi_defconfig |2 ++ configs/ls1046ardb_sdcard_SECURE_BOOT_defconfig|2 ++ configs/ls1046ardb_sdcard_defconfig|2 ++ configs/ls1088aqds_defconfig |2 ++ configs/ls1088aqds_qspi_SECURE_BOOT_defconfig |2 ++ configs/ls1088aqds_qspi_defconfig |2 ++ configs/ls1088aqds_sdcard_ifc_defconfig|2 ++ configs/ls1088aqds_sdcard_qspi_defconfig |2 ++ configs/ls1088ardb_qspi_SECURE_BOOT_defconfig |2 ++ configs/ls1088ardb_qspi_defconfig |2 ++ .../ls1088ardb_sdcard_qspi_SECURE_BOOT_defconfig |2 ++ configs/ls1088ardb_sdcard_qspi_defconfig |2 ++ configs/ls2080a_emu_defconfig |2 ++ configs/ls2080a_simu_defconfig |2 ++ configs/ls2080aqds_SECURE_BOOT_defconfig |2 ++ configs/ls2080aqds_defconfig |2 ++ configs/ls2080aqds_nand_defconfig |2 ++ configs/ls2080aqds_qspi_defconfig |2 ++ configs/ls2080aqds_sdcard_defconfig|2 ++ configs/ls2080ardb_SECURE_BOOT_defconfig |2 ++ configs/ls2080ardb_defconfig |2 ++ configs/ls2080ardb_nand_defconfig |2 ++ configs/ls2088ardb_qspi_SECURE_BOOT_defconfig |2 ++ configs/ls2088ardb_qspi_defconfig |2 ++ 53 files changed, 106 insertions(+), 0 deletions(-) diff --git a/configs/ls1021atwr_nor_SECURE_BOOT_defconfig b/configs/ls1021atwr_nor_SECURE_BOOT_defconfig index 17a202d..4d85983 100644 --- a/configs/ls1021atwr_nor_SECURE_BOOT_defconfig +++ b/configs/ls1021atwr_nor_SECURE_BOOT_defconfig @@ -48,3 +48,5 @@ CONFIG_VIDEO=y # CONFIG_VIDEO_SW_CURSOR is not set CONFIG_RSA=y CONFIG_SPL_RSA=y +CONFIG_BLK=y +CONFIG_DM_MMC=y diff --git a/configs/ls1021atwr_nor_defconfig b/configs/ls1021atwr_nor_defconfig index a18426e..f4f7998 100644 --- a/configs/ls1021atwr_nor_defconfig +++ b/configs/ls1021atwr_nor_defconfig @@ -48,3 +48,5 @@ CONFIG_USB_STORAGE=y CONFIG_VIDEO_FSL_DCU_FB=y CONFIG_VIDEO=y # CONFIG_VIDEO_SW_CURSOR is not set +CONFIG_BLK=y +CONFIG_DM_MMC=y diff --git a/configs/ls1021atwr_nor_lpuart_defconfig b/configs/ls1021atwr_nor_lpuart_defconfig index 83ffa19..037f56c 100644 --- a/configs/ls1021atwr_nor_lpuart_defconfig +++ b/configs/ls1021atwr_nor_lpuart_defconfig @@ -49,3 +49,5 @@ CONFIG_USB_STORAGE=y CONFIG_VIDEO_FSL_DCU_FB=y CONFIG_VIDEO=y # CONFIG_VIDEO_SW_CURSOR is not set +CONFIG_BLK=y +CONFIG_DM_MMC=y diff --git a/configs/ls1021atwr_qspi_defconfig b/configs/ls1021atwr_qspi_defconfig index 46d8dbb..084bd27 100644 --- a/configs/ls1021atwr_qspi_defconfig +++ b/configs/ls1021atwr_qspi_defconfig @@ -55,3 +55,5 @@ CONFIG_USB_STORAGE=y CONFIG_VIDEO_FSL_DCU_FB=y CONFIG_VIDEO=y # CONFIG_VIDEO_SW_CURSOR is not set +CONFIG_BLK=y +CONFIG_DM_MMC=y diff --git a/configs/ls1021atwr_sdcard_
[U-Boot] [PATCH v1 2/8] armv8: ls1088a: fix sd boot config compile issue
This patch is to fix sd boot config compile issue for ls1088a. Signed-off-by: Yinbo Zhu --- include/mmc.h |2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/include/mmc.h b/include/mmc.h index 534c317..66e69b7 100644 --- a/include/mmc.h +++ b/include/mmc.h @@ -604,7 +604,7 @@ struct mmc { u64 enh_user_start; u64 enh_user_size; #endif -#if !CONFIG_IS_ENABLED(BLK) +#if CONFIG_IS_ENABLED(BLK) struct blk_desc block_dev; #endif char op_cond_pending; /* 1 if we are waiting on an op_cond command */ -- 1.7.1 ___ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot
[U-Boot] [PATCH v1 3/8] armv8/ls1088a/ls2088a: esdhc: Add esdhc clock support
This patch adds esdhc clock support for ls1088a and ls2088a. Signed-off-by: Yinbo Zhu --- .../arm/cpu/armv8/fsl-layerscape/fsl_lsch3_speed.c | 14 ++ 1 files changed, 14 insertions(+), 0 deletions(-) diff --git a/arch/arm/cpu/armv8/fsl-layerscape/fsl_lsch3_speed.c b/arch/arm/cpu/armv8/fsl-layerscape/fsl_lsch3_speed.c index 653c6dd..bc268e2 100644 --- a/arch/arm/cpu/armv8/fsl-layerscape/fsl_lsch3_speed.c +++ b/arch/arm/cpu/armv8/fsl-layerscape/fsl_lsch3_speed.c @@ -192,6 +192,16 @@ int get_dspi_freq(ulong dummy) return get_bus_freq(0) / CONFIG_SYS_FSL_DSPI_CLK_DIV; } +#ifdef CONFIG_FSL_ESDHC +int get_sdhc_freq(ulong dummy) +{ + if (!gd->arch.sdhc_clk) + get_clocks(); + + return gd->arch.sdhc_clk; +} +#endif + int get_serial_clock(void) { return get_bus_freq(0) / CONFIG_SYS_FSL_DUART_CLK_DIV; @@ -202,6 +212,10 @@ unsigned int mxc_get_clock(enum mxc_clock clk) switch (clk) { case MXC_I2C_CLK: return get_i2c_freq(0); +#if defined(CONFIG_FSL_ESDHC) + case MXC_ESDHC_CLK: + return get_sdhc_freq(0); +#endif case MXC_DSPI_CLK: return get_dspi_freq(0); default: -- 1.7.1 ___ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot
[U-Boot] [PATCH v1 5/8] armv8: ls1088a: add eSDHC node
This patch is to add eSDHC node for ls1088a. Signed-off-by: Yinbo Zhu --- arch/arm/dts/fsl-ls1088a.dtsi |9 + 1 files changed, 9 insertions(+), 0 deletions(-) diff --git a/arch/arm/dts/fsl-ls1088a.dtsi b/arch/arm/dts/fsl-ls1088a.dtsi index 077caf3..72d755a 100644 --- a/arch/arm/dts/fsl-ls1088a.dtsi +++ b/arch/arm/dts/fsl-ls1088a.dtsi @@ -74,6 +74,15 @@ reg-names = "QuadSPI", "QuadSPI-memory"; num-cs = <4>; }; + + esdhc: esdhc@214 { + compatible = "fsl,esdhc"; + reg = <0x0 0x214 0x0 0x1>; + interrupts = <0 28 0x4>; /* Level high type */ + little-endian; + bus-width = <4>; + }; + ifc: ifc@153 { compatible = "fsl,ifc", "simple-bus"; reg = <0x0 0x224 0x0 0x2>; -- 1.7.1 ___ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot
[U-Boot] [PATCH v1 6/8] armv8: ls1043a: add eSDHC node
This patch is to add eSDHC node for ls1043a. Signed-off-by: Yinbo Zhu --- arch/arm/dts/fsl-ls1043a.dtsi |8 1 files changed, 8 insertions(+), 0 deletions(-) diff --git a/arch/arm/dts/fsl-ls1043a.dtsi b/arch/arm/dts/fsl-ls1043a.dtsi index ff40122..a804f51 100644 --- a/arch/arm/dts/fsl-ls1043a.dtsi +++ b/arch/arm/dts/fsl-ls1043a.dtsi @@ -70,6 +70,14 @@ status = "disabled"; }; + esdhc: esdhc@156 { + compatible = "fsl,esdhc"; + reg = <0x0 0x156 0x0 0x1>; + interrupts = <0 62 0x4>; + big-endian; + bus-width = <4>; + }; + ifc: ifc@153 { compatible = "fsl,ifc", "simple-bus"; reg = <0x0 0x153 0x0 0x1>; -- 1.7.1 ___ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot
[U-Boot] [PATCH v1 4/8] armv8: ls2088a: add eSDHC node
This patch is to add eSDHC node for ls2088a. Signed-off-by: Yinbo Zhu --- arch/arm/dts/fsl-ls2080a.dtsi |8 1 files changed, 8 insertions(+), 0 deletions(-) diff --git a/arch/arm/dts/fsl-ls2080a.dtsi b/arch/arm/dts/fsl-ls2080a.dtsi index b0f8517..2d537ae 100644 --- a/arch/arm/dts/fsl-ls2080a.dtsi +++ b/arch/arm/dts/fsl-ls2080a.dtsi @@ -75,6 +75,14 @@ num-cs = <4>; }; + esdhc: esdhc@0 { + compatible = "fsl,esdhc"; + reg = <0x0 0x214 0x0 0x1>; + interrupts = <0 28 0x4>; /* Level high type */ + little-endian; + bus-width = <4>; + }; + usb0: usb3@310 { compatible = "fsl,layerscape-dwc3"; reg = <0x0 0x310 0x0 0x1>; -- 1.7.1 ___ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot
[U-Boot] [PATCH v1 8/8] armv7: ls1021a: enable esdhc
This patch is to enable eSDHC for ls1021a. Signed-off-by: Yinbo Zhu --- arch/arm/dts/ls1021a.dtsi |1 - 1 files changed, 0 insertions(+), 1 deletions(-) diff --git a/arch/arm/dts/ls1021a.dtsi b/arch/arm/dts/ls1021a.dtsi index 5b3fc6a..59c97d5 100644 --- a/arch/arm/dts/ls1021a.dtsi +++ b/arch/arm/dts/ls1021a.dtsi @@ -96,7 +96,6 @@ sdhci,auto-cmd12; big-endian; bus-width = <4>; - status = "disabled"; }; scfg: scfg@157 { -- 1.7.1 ___ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot
[U-Boot] [PATCH v1 7/8] armv8: ls1046a: add eSDHC node
This patch is to add eSDHC node for ls1046a. Signed-off-by: Yinbo Zhu --- arch/arm/dts/fsl-ls1046a.dtsi |8 1 files changed, 8 insertions(+), 0 deletions(-) diff --git a/arch/arm/dts/fsl-ls1046a.dtsi b/arch/arm/dts/fsl-ls1046a.dtsi index 4acbaf7..7687d12 100644 --- a/arch/arm/dts/fsl-ls1046a.dtsi +++ b/arch/arm/dts/fsl-ls1046a.dtsi @@ -70,6 +70,14 @@ status = "disabled"; }; + esdhc: esdhc@156 { + compatible = "fsl,esdhc"; + reg = <0x0 0x156 0x0 0x1>; + interrupts = <0 62 0x4>; + big-endian; + bus-width = <4>; + }; + ifc: ifc@153 { compatible = "fsl,ifc", "simple-bus"; reg = <0x0 0x153 0x0 0x1>; -- 1.7.1 ___ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot
[U-Boot] [PATCH 0/4] arm: zynq: migrate to DM I2C driver
This series migrate most zynq boards to using the Cadence DM I2C driver The first patch adds kconfig options to generalize the concept of reading the MAC address from an I2C EEPROM. Then the zynq and zynqmp boards were migrated with patches two and three to use the options Finally, the last patch migrates the boards to the Cadence I2C driver. The boards ZC702 and ZC706 were not migrated because they have I2C multiplexers and I don't have a board with a multiplexer to perform testing and validation I ran a round of reproducible builds on master and another one after the third patch for all zynq and zynqmp boards, and the same binaries where generated for all boards All commits were tested on a Digilent Zybo board Luis Araneda (4): drivers/misc: add options to read MAC address from EEPROM arm: zynq: migrate EEPROM MAC address options to kconfig arm64: zynqmp: migrate EEPROM MAC address options to kconfig arm: zynq: use i2c cadence DM driver arch/arm/dts/zynq-syzygy-hub.dts | 1 + arch/arm/dts/zynq-zybo.dts| 10 ++ board/xilinx/zynq/board.c | 27 board/xilinx/zynqmp/zynqmp.c | 10 +++--- configs/syzygy_hub_defconfig | 9 +++--- configs/topic_miami_defconfig | 5 ++- configs/topic_miamilite_defconfig | 5 ++- configs/topic_miamiplus_defconfig | 5 ++- configs/xilinx_zynqmp_zcu102_rev1_0_defconfig | 5 ++- configs/xilinx_zynqmp_zcu102_revA_defconfig | 5 ++- configs/xilinx_zynqmp_zcu102_revB_defconfig | 5 ++- configs/xilinx_zynqmp_zcu106_revA_defconfig | 5 ++- configs/xilinx_zynqmp_zcu111_revA_defconfig | 5 ++- configs/zynq_zybo_defconfig | 10 +++--- drivers/misc/Kconfig | 32 +++ include/configs/syzygy_hub.h | 3 -- include/configs/xilinx_zynqmp_zcu102.h| 2 -- include/configs/xilinx_zynqmp_zcu106.h| 2 -- include/configs/xilinx_zynqmp_zcu111.h| 2 -- include/configs/zynq_zybo.h | 2 -- 20 files changed, 98 insertions(+), 52 deletions(-) -- 2.18.0 ___ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot
[U-Boot] [PATCH 1/4] drivers/misc: add options to read MAC address from EEPROM
Add generic kconfig options to read MAC address(es) from an EEPROM connected to an I2C bus The SYS_I2C_EEPROM_* options can't be used because they depend on I2C_EEPROM, which requires a DM driver, and not all boards have DM I2C drivers yet Signed-off-by: Luis Araneda --- drivers/misc/Kconfig | 26 ++ 1 file changed, 26 insertions(+) diff --git a/drivers/misc/Kconfig b/drivers/misc/Kconfig index 17b3a805a2..ff694871bf 100644 --- a/drivers/misc/Kconfig +++ b/drivers/misc/Kconfig @@ -272,6 +272,32 @@ config SYS_I2C_EEPROM_ADDR_OVERFLOW endif +config MAC_ADDR_IN_I2C_EEPROM + bool "MAC address in I2C EEPROM" + help + Read MAC address(es) from an EEPROM + connected to an I2C bus + +if MAC_ADDR_IN_I2C_EEPROM + +config MAC_ADDR_I2C_EEPROM_BUS + int "I2C bus connected to the EEPROM device" + default 0 + +config MAC_ADDR_I2C_EEPROM_CHIP_ADDR + hex "Chip address of the EEPROM device" + default 0 + +config MAC_ADDR_I2C_EEPROM_DATA_ADDR_LEN + int "Length in bytes of EEPROM data addresses" + default 1 + +config MAC_ADDR_I2C_EEPROM_DATA_ADDR_START + hex "Start address of MAC data in EEPROM" + default 0 + +endif + config GDSYS_RXAUI_CTRL bool "Enable gdsys RXAUI control driver" depends on MISC -- 2.18.0 ___ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot
[U-Boot] [PATCH 3/4] arm64: zynqmp: migrate EEPROM MAC address options to kconfig
Migrate boards to use the generic kconfig options to read the MAC address Additionally, remove the ZYNQ_GEM_I2C_MAC_OFFSET kconfig option, since no boards is using it now Signed-off-by: Luis Araneda --- board/xilinx/zynqmp/zynqmp.c | 10 -- configs/xilinx_zynqmp_zcu102_rev1_0_defconfig | 5 - configs/xilinx_zynqmp_zcu102_revA_defconfig | 5 - configs/xilinx_zynqmp_zcu102_revB_defconfig | 5 - configs/xilinx_zynqmp_zcu106_revA_defconfig | 5 - configs/xilinx_zynqmp_zcu111_revA_defconfig | 5 - drivers/misc/Kconfig | 6 -- include/configs/xilinx_zynqmp_zcu102.h| 2 -- include/configs/xilinx_zynqmp_zcu106.h| 2 -- include/configs/xilinx_zynqmp_zcu111.h| 2 -- 10 files changed, 24 insertions(+), 23 deletions(-) diff --git a/board/xilinx/zynqmp/zynqmp.c b/board/xilinx/zynqmp/zynqmp.c index 81c10fcf8a..1f7b3a4c48 100644 --- a/board/xilinx/zynqmp/zynqmp.c +++ b/board/xilinx/zynqmp/zynqmp.c @@ -372,13 +372,11 @@ int board_early_init_r(void) int zynq_board_read_rom_ethaddr(unsigned char *ethaddr) { -#if defined(CONFIG_ZYNQ_GEM_EEPROM_ADDR) && \ -defined(CONFIG_ZYNQ_GEM_I2C_MAC_OFFSET) && \ -defined(CONFIG_ZYNQ_EEPROM_BUS) - i2c_set_bus_num(CONFIG_ZYNQ_EEPROM_BUS); +#if defined(CONFIG_MAC_ADDR_IN_I2C_EEPROM) + i2c_set_bus_num(CONFIG_MAC_ADDR_I2C_EEPROM_BUS); - if (eeprom_read(CONFIG_ZYNQ_GEM_EEPROM_ADDR, - CONFIG_ZYNQ_GEM_I2C_MAC_OFFSET, + if (eeprom_read(CONFIG_MAC_ADDR_I2C_EEPROM_CHIP_ADDR, + CONFIG_MAC_ADDR_I2C_EEPROM_DATA_ADDR_START, ethaddr, 6)) printf("I2C EEPROM MAC address read failed\n"); #endif diff --git a/configs/xilinx_zynqmp_zcu102_rev1_0_defconfig b/configs/xilinx_zynqmp_zcu102_rev1_0_defconfig index 49a14d87a8..a693663cbe 100644 --- a/configs/xilinx_zynqmp_zcu102_rev1_0_defconfig +++ b/configs/xilinx_zynqmp_zcu102_rev1_0_defconfig @@ -63,7 +63,10 @@ CONFIG_SYS_I2C_ZYNQ=y CONFIG_ZYNQ_I2C0=y CONFIG_ZYNQ_I2C1=y CONFIG_MISC=y -CONFIG_ZYNQ_GEM_I2C_MAC_OFFSET=0x20 +CONFIG_MAC_ADDR_IN_I2C_EEPROM=y +CONFIG_MAC_ADDR_I2C_EEPROM_BUS=5 +CONFIG_MAC_ADDR_I2C_EEPROM_CHIP_ADDR=0x54 +CONFIG_MAC_ADDR_I2C_EEPROM_DATA_ADDR_START=0x20 CONFIG_DM_MMC=y CONFIG_MMC_IO_VOLTAGE=y CONFIG_MMC_UHS_SUPPORT=y diff --git a/configs/xilinx_zynqmp_zcu102_revA_defconfig b/configs/xilinx_zynqmp_zcu102_revA_defconfig index 05dad41acb..2c271fc691 100644 --- a/configs/xilinx_zynqmp_zcu102_revA_defconfig +++ b/configs/xilinx_zynqmp_zcu102_revA_defconfig @@ -62,7 +62,10 @@ CONFIG_SYS_I2C_ZYNQ=y CONFIG_ZYNQ_I2C0=y CONFIG_ZYNQ_I2C1=y CONFIG_MISC=y -CONFIG_ZYNQ_GEM_I2C_MAC_OFFSET=0x20 +CONFIG_MAC_ADDR_IN_I2C_EEPROM=y +CONFIG_MAC_ADDR_I2C_EEPROM_BUS=5 +CONFIG_MAC_ADDR_I2C_EEPROM_CHIP_ADDR=0x54 +CONFIG_MAC_ADDR_I2C_EEPROM_DATA_ADDR_START=0x20 CONFIG_DM_MMC=y CONFIG_MMC_SDHCI=y CONFIG_MMC_SDHCI_ZYNQ=y diff --git a/configs/xilinx_zynqmp_zcu102_revB_defconfig b/configs/xilinx_zynqmp_zcu102_revB_defconfig index b3711b43e8..c28654c5a6 100644 --- a/configs/xilinx_zynqmp_zcu102_revB_defconfig +++ b/configs/xilinx_zynqmp_zcu102_revB_defconfig @@ -62,7 +62,10 @@ CONFIG_SYS_I2C_ZYNQ=y CONFIG_ZYNQ_I2C0=y CONFIG_ZYNQ_I2C1=y CONFIG_MISC=y -CONFIG_ZYNQ_GEM_I2C_MAC_OFFSET=0x20 +CONFIG_MAC_ADDR_IN_I2C_EEPROM=y +CONFIG_MAC_ADDR_I2C_EEPROM_BUS=5 +CONFIG_MAC_ADDR_I2C_EEPROM_CHIP_ADDR=0x54 +CONFIG_MAC_ADDR_I2C_EEPROM_DATA_ADDR_START=0x20 CONFIG_DM_MMC=y CONFIG_MMC_SDHCI=y CONFIG_MMC_SDHCI_ZYNQ=y diff --git a/configs/xilinx_zynqmp_zcu106_revA_defconfig b/configs/xilinx_zynqmp_zcu106_revA_defconfig index e644914070..97841eefa4 100644 --- a/configs/xilinx_zynqmp_zcu106_revA_defconfig +++ b/configs/xilinx_zynqmp_zcu106_revA_defconfig @@ -59,7 +59,10 @@ CONFIG_SYS_I2C_ZYNQ=y CONFIG_ZYNQ_I2C0=y CONFIG_ZYNQ_I2C1=y CONFIG_MISC=y -CONFIG_ZYNQ_GEM_I2C_MAC_OFFSET=0x20 +CONFIG_MAC_ADDR_IN_I2C_EEPROM=y +CONFIG_MAC_ADDR_I2C_EEPROM_BUS=5 +CONFIG_MAC_ADDR_I2C_EEPROM_CHIP_ADDR=0x54 +CONFIG_MAC_ADDR_I2C_EEPROM_DATA_ADDR_START=0x20 CONFIG_DM_MMC=y CONFIG_MMC_SDHCI=y CONFIG_MMC_SDHCI_ZYNQ=y diff --git a/configs/xilinx_zynqmp_zcu111_revA_defconfig b/configs/xilinx_zynqmp_zcu111_revA_defconfig index c88ba522c7..18e7b2ce49 100644 --- a/configs/xilinx_zynqmp_zcu111_revA_defconfig +++ b/configs/xilinx_zynqmp_zcu111_revA_defconfig @@ -53,7 +53,10 @@ CONFIG_SYS_I2C_ZYNQ=y CONFIG_ZYNQ_I2C0=y CONFIG_ZYNQ_I2C1=y CONFIG_MISC=y -CONFIG_ZYNQ_GEM_I2C_MAC_OFFSET=0x20 +CONFIG_MAC_ADDR_IN_I2C_EEPROM=y +CONFIG_MAC_ADDR_I2C_EEPROM_BUS=5 +CONFIG_MAC_ADDR_I2C_EEPROM_CHIP_ADDR=0x54 +CONFIG_MAC_ADDR_I2C_EEPROM_DATA_ADDR_START=0x20 CONFIG_DM_MMC=y CONFIG_MMC_SDHCI=y CONFIG_MMC_SDHCI_ZYNQ=y diff --git a/drivers/misc/Kconfig b/drivers/misc/Kconfig index ff694871bf..0c98dce73b 100644 --- a/drivers/misc/Kconfig +++ b/drivers/misc/Kconfig @@ -223,12 +223,6 @@ config SPL_I2C_EEPROM This option is an SPL-variant of the I2C_EEPROM opti
[U-Boot] [PATCH 2/4] arm: zynq: migrate EEPROM MAC address options to kconfig
Migrate boards to use the generic kconfig options to read the MAC address Signed-off-by: Luis Araneda --- board/xilinx/zynq/board.c| 7 +++ configs/syzygy_hub_defconfig | 4 +++- configs/zynq_zybo_defconfig | 4 +++- include/configs/syzygy_hub.h | 1 - include/configs/zynq_zybo.h | 1 - 5 files changed, 9 insertions(+), 8 deletions(-) diff --git a/board/xilinx/zynq/board.c b/board/xilinx/zynq/board.c index 1106f5c2a8..dcbf788918 100644 --- a/board/xilinx/zynq/board.c +++ b/board/xilinx/zynq/board.c @@ -75,10 +75,9 @@ int board_late_init(void) int zynq_board_read_rom_ethaddr(unsigned char *ethaddr) { -#if defined(CONFIG_ZYNQ_GEM_EEPROM_ADDR) && \ -defined(CONFIG_ZYNQ_GEM_I2C_MAC_OFFSET) - if (eeprom_read(CONFIG_ZYNQ_GEM_EEPROM_ADDR, - CONFIG_ZYNQ_GEM_I2C_MAC_OFFSET, +#if defined(CONFIG_MAC_ADDR_IN_I2C_EEPROM) + if (eeprom_read(CONFIG_MAC_ADDR_I2C_EEPROM_CHIP_ADDR, + CONFIG_MAC_ADDR_I2C_EEPROM_DATA_ADDR_START, ethaddr, 6)) printf("I2C EEPROM MAC address read failed\n"); #endif diff --git a/configs/syzygy_hub_defconfig b/configs/syzygy_hub_defconfig index 6fb56afbe9..221349ba6f 100644 --- a/configs/syzygy_hub_defconfig +++ b/configs/syzygy_hub_defconfig @@ -39,7 +39,9 @@ CONFIG_FPGA_ZYNQPL=y CONFIG_DM_GPIO=y CONFIG_SYS_I2C_ZYNQ=y CONFIG_ZYNQ_I2C1=y -CONFIG_ZYNQ_GEM_I2C_MAC_OFFSET=0xFA +CONFIG_MAC_ADDR_IN_I2C_EEPROM=y +CONFIG_MAC_ADDR_I2C_EEPROM_CHIP_ADDR=0x57 +CONFIG_MAC_ADDR_I2C_EEPROM_DATA_ADDR_START=0xFA CONFIG_MMC_SDHCI=y CONFIG_MMC_SDHCI_ZYNQ=y CONFIG_PHY_MARVELL=y diff --git a/configs/zynq_zybo_defconfig b/configs/zynq_zybo_defconfig index 3dfc62162f..03958f399d 100644 --- a/configs/zynq_zybo_defconfig +++ b/configs/zynq_zybo_defconfig @@ -46,7 +46,9 @@ CONFIG_DM_GPIO=y CONFIG_SYS_I2C_ZYNQ=y CONFIG_ZYNQ_I2C0=y CONFIG_ZYNQ_I2C1=y -CONFIG_ZYNQ_GEM_I2C_MAC_OFFSET=0xFA +CONFIG_MAC_ADDR_IN_I2C_EEPROM=y +CONFIG_MAC_ADDR_I2C_EEPROM_CHIP_ADDR=0x50 +CONFIG_MAC_ADDR_I2C_EEPROM_DATA_ADDR_START=0xFA CONFIG_MMC_SDHCI=y CONFIG_MMC_SDHCI_ZYNQ=y CONFIG_SPI_FLASH=y diff --git a/include/configs/syzygy_hub.h b/include/configs/syzygy_hub.h index 88ee772848..17938398c2 100644 --- a/include/configs/syzygy_hub.h +++ b/include/configs/syzygy_hub.h @@ -11,7 +11,6 @@ #define __CONFIG_SYZYGY_HUB_H #define CONFIG_SYS_I2C_EEPROM_ADDR_LEN 1 -#define CONFIG_ZYNQ_GEM_EEPROM_ADDR0x57 #define CONFIG_EXTRA_ENV_SETTINGS \ "fit_image=fit.itb\0" \ diff --git a/include/configs/zynq_zybo.h b/include/configs/zynq_zybo.h index 547ecb68fd..c3abf41f76 100644 --- a/include/configs/zynq_zybo.h +++ b/include/configs/zynq_zybo.h @@ -11,7 +11,6 @@ #define __CONFIG_ZYNQ_ZYBO_H #define CONFIG_SYS_I2C_EEPROM_ADDR_LEN 1 -#define CONFIG_ZYNQ_GEM_EEPROM_ADDR0x50 #define CONFIG_DISPLAY #define CONFIG_I2C_EDID -- 2.18.0 ___ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot
[U-Boot] [PATCH 4/4] arm: zynq: use i2c cadence DM driver
Migrate most boards to the Cadence I2C driver and use DM functions to read the MAC address from EEPROM Additionally, remove the legacy eeprom command from defconfig since it was only used to provide the functions to read the MAC address Boards ZC702 and ZC706 were not migrated because they have I2C multiplexers and require extended validation and testing Signed-off-by: Luis Araneda --- arch/arm/dts/zynq-syzygy-hub.dts | 1 + arch/arm/dts/zynq-zybo.dts| 10 ++ board/xilinx/zynq/board.c | 24 configs/syzygy_hub_defconfig | 5 ++--- configs/topic_miami_defconfig | 5 ++--- configs/topic_miamilite_defconfig | 5 ++--- configs/topic_miamiplus_defconfig | 5 ++--- configs/zynq_zybo_defconfig | 6 ++ include/configs/syzygy_hub.h | 2 -- include/configs/zynq_zybo.h | 1 - 10 files changed, 41 insertions(+), 23 deletions(-) diff --git a/arch/arm/dts/zynq-syzygy-hub.dts b/arch/arm/dts/zynq-syzygy-hub.dts index a30d667146..d89e669b71 100644 --- a/arch/arm/dts/zynq-syzygy-hub.dts +++ b/arch/arm/dts/zynq-syzygy-hub.dts @@ -15,6 +15,7 @@ aliases { ethernet0 = &gem0; serial0 = &uart0; + i2c0 = &i2c1; mmc0 = &sdhci0; }; diff --git a/arch/arm/dts/zynq-zybo.dts b/arch/arm/dts/zynq-zybo.dts index 3844822305..b5e0f3d9b3 100644 --- a/arch/arm/dts/zynq-zybo.dts +++ b/arch/arm/dts/zynq-zybo.dts @@ -14,6 +14,8 @@ ethernet0 = &gem0; serial0 = &uart1; spi0 = &qspi; + i2c0 = &i2c0; + i2c1 = &i2c1; mmc0 = &sdhci0; }; @@ -49,6 +51,14 @@ }; }; +&i2c0 { + status = "okay"; +}; + +&i2c1 { + status = "okay"; +}; + &qspi { u-boot,dm-pre-reloc; status = "okay"; diff --git a/board/xilinx/zynq/board.c b/board/xilinx/zynq/board.c index dcbf788918..5b9ee10a90 100644 --- a/board/xilinx/zynq/board.c +++ b/board/xilinx/zynq/board.c @@ -8,6 +8,7 @@ #include #include #include +#include #include #include #include @@ -76,10 +77,25 @@ int board_late_init(void) int zynq_board_read_rom_ethaddr(unsigned char *ethaddr) { #if defined(CONFIG_MAC_ADDR_IN_I2C_EEPROM) - if (eeprom_read(CONFIG_MAC_ADDR_I2C_EEPROM_CHIP_ADDR, - CONFIG_MAC_ADDR_I2C_EEPROM_DATA_ADDR_START, - ethaddr, 6)) - printf("I2C EEPROM MAC address read failed\n"); + int ret; + struct udevice *bus, *dev; + + ret = uclass_get_device_by_seq(UCLASS_I2C, + CONFIG_MAC_ADDR_I2C_EEPROM_BUS, + &bus); + if (!ret) + ret = i2c_get_chip(bus, + CONFIG_MAC_ADDR_I2C_EEPROM_CHIP_ADDR, + 1, &dev); + if (!ret) + ret = i2c_set_chip_offset_len(dev, + CONFIG_MAC_ADDR_I2C_EEPROM_DATA_ADDR_LEN); + if (!ret) + ret = dm_i2c_read(dev, + CONFIG_MAC_ADDR_I2C_EEPROM_DATA_ADDR_START, + ethaddr, 6); + if (ret) + printf("I2C EEPROM MAC address read failed (%i)\n", ret); #endif return 0; diff --git a/configs/syzygy_hub_defconfig b/configs/syzygy_hub_defconfig index 221349ba6f..bcc3ecda49 100644 --- a/configs/syzygy_hub_defconfig +++ b/configs/syzygy_hub_defconfig @@ -18,7 +18,6 @@ CONFIG_BOOTCOMMAND="run $modeboot || run distro_bootcmd" CONFIG_SPL_STACK_R=y CONFIG_SPL_OS_BOOT=y CONFIG_SYS_PROMPT="Zynq> " -CONFIG_CMD_EEPROM=y # CONFIG_CMD_FLASH is not set CONFIG_CMD_FPGA_LOADBP=y CONFIG_CMD_FPGA_LOADFS=y @@ -37,8 +36,8 @@ CONFIG_SPL_DM_SEQ_ALIAS=y CONFIG_FPGA_XILINX=y CONFIG_FPGA_ZYNQPL=y CONFIG_DM_GPIO=y -CONFIG_SYS_I2C_ZYNQ=y -CONFIG_ZYNQ_I2C1=y +CONFIG_DM_I2C=y +CONFIG_SYS_I2C_CADENCE=y CONFIG_MAC_ADDR_IN_I2C_EEPROM=y CONFIG_MAC_ADDR_I2C_EEPROM_CHIP_ADDR=0x57 CONFIG_MAC_ADDR_I2C_EEPROM_DATA_ADDR_START=0xFA diff --git a/configs/topic_miami_defconfig b/configs/topic_miami_defconfig index af5b92cd34..408a5485f3 100644 --- a/configs/topic_miami_defconfig +++ b/configs/topic_miami_defconfig @@ -34,9 +34,8 @@ CONFIG_DFU_RAM=y CONFIG_FPGA_XILINX=y CONFIG_FPGA_ZYNQPL=y CONFIG_DM_GPIO=y -CONFIG_SYS_I2C_ZYNQ=y -CONFIG_ZYNQ_I2C0=y -CONFIG_ZYNQ_I2C1=y +CONFIG_DM_I2C=y +CONFIG_SYS_I2C_CADENCE=y CONFIG_MMC_SDHCI=y CONFIG_MMC_SDHCI_ZYNQ=y CONFIG_SPI_FLASH=y diff --git a/configs/topic_miamilite_defconfig b/configs/topic_miamilite_defconfig index ad7ba04d85..ee5f512513 100644 --- a/configs/topic_miamilite_defconfig +++ b/configs/topic_miamilite_defconfig @@ -34,9 +34,8 @@ CONFIG_DFU_RAM=y CONFIG_FPGA_XILINX=y CONFIG_FPGA_ZYNQPL=y CONFIG_DM_GPIO=y -CONFIG_SYS_I2C_ZYNQ=y -CONFIG_ZYNQ_I2C0=y -CONFIG_ZYNQ_I2C1=y +CONFIG_DM_I2C=y +CONFIG_SYS_I2C_CADENCE=y CONFIG_MMC_SDHCI=y CONFIG_MMC
Re: [U-Boot] build fail due to dependence error
Hi. 2018-07-09 11:39 GMT+09:00 Simon Glass : > +Masahiro who might know > > On 2 July 2018 at 01:23, Dr. Philipp Tomsich > wrote: >> Kever, >> >> Could you check the build artifacts in Jenkins to see whether after >> the ‘make [configname]_defconfig’, the link for asm/arch is correctly >> set up? >> >> Thanks, >> Philipp. >> >> On 2 Jul 2018, at 09:54, Kever Yang wrote: >> >> Hi Simon, >> >> >> On 06/30/2018 12:19 PM, Simon Glass wrote: >> >> Hi, >> >> On 28 June 2018 at 01:41, Dr. Philipp Tomsich >> wrote: >> >> Kever, >> >> is the link for ‘asm’ set up correctly? >> >> Thanks, >> Philipp. >> >> On 28 Jun 2018, at 10:38, Kever Yang wrote: >> >> Hi Simon, >> >>Do you have any idea about this error? >> >> >> CC lib/asm-offsets.s >> CC arch/arm/lib/asm-offsets.s >> fixdep: error opening config file: arch/arm/include/asm/arch/hardware.h: No >> such file or directory >> Kbuild:64: recipe for target 'arch/arm/lib/asm-offsets.s' failed >> make[1]: *** [arch/arm/lib/asm-offsets.s] Error 2 >> make[1]: *** 正在等待未完成的任务 >> CHK include/config.h >> Makefile:1340: recipe for target 'prepare0' failed >> >> Thanks, >> - Kever >> >> On 06/01/2018 05:59 PM, Kever Yang wrote: >> >> Hi Guys, >> >> I met below error from time to time when build U-Boot project. >> >> fixdep: error opening config file: arch/arm/include/asm/arch/hardware.h: No >> such file or directory >> >>The folder 'arch/arm/include/asm/arch' is a link for >> 'arch/arm/include/asm/arch-rockchip', >> >> which is dynamic generate by build system, I thinks there should be some >> dependency issue? >> >>How to fix this kind of issue? >> >> I am not sure what is going on there. I don't see this. >> >> Are you using 'make distclean' or 'make mrproper' on your object tree >> every now and then? >> >> >> This is happen sometimes in our Jenkins verify, It will gone when I >> rebase the patch(re-build without any change), >> we do 'make distclean' every time before a new build. Hmm, I cannot reproduce this error. I have no clue about this. -- Best Regards Masahiro Yamada ___ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot
Re: [U-Boot] [PATCH v3 1/2] fs: fat: cannot write to subdirectories
On 07/09/2018 04:35 AM, Simon Glass wrote: > Hi Heinrich, > > On 1 July 2018 at 17:41, Heinrich Schuchardt wrote: >> fs_fat_write() is not able to write to subdirectories. >> >> Currently if a filepath with a leading slash is passed, the slash is >> treated as part of the filename to be created in the root directory. >> >> Strip leading (back-)slashes. >> >> Check that the remaining filename does not contain any illegal characters >> (<>:"/\|?*). This way we will throw an error when trying to write to a >> subdirectory. >> >> Signed-off-by: Heinrich Schuchardt >> --- >> fs/fat/fat_write.c | 16 +++- >> 1 file changed, 15 insertions(+), 1 deletion(-) > > It would be great if we have filesystem tests. We do have the > fs-test.sh script but it is not using pytest, so best not to build on > it. There is a write test for FAT in lib/efi_selftest/efi_selftest_block_device.c. See patch "efi_selftest: test writing to file". I agree having tests independent of the EFI subsystem would be a good idea. Best regards Heinrich ___ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot
[U-Boot] [PATCH] cmd: ubi: change 'default y' for SUNXI to 'imply' in Kconfig
It is not preferred to put SUNXI-specific code in the common place. Change it to 'imply' property of ARCH_SUNXI. Signed-off-by: Masahiro Yamada --- arch/arm/Kconfig | 1 + cmd/Kconfig | 1 - 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig index 7d394f2..a6ce155 100644 --- a/arch/arm/Kconfig +++ b/arch/arm/Kconfig @@ -796,6 +796,7 @@ config ARCH_SUNXI select USB_KEYBOARD if DISTRO_DEFAULTS select USE_TINY_PRINTF imply CMD_GPT + imply CMD_UBI if NAND imply DISTRO_DEFAULTS imply FAT_WRITE imply OF_LIBFDT_OVERLAY diff --git a/cmd/Kconfig b/cmd/Kconfig index aec2090..159ebaa 100644 --- a/cmd/Kconfig +++ b/cmd/Kconfig @@ -1792,7 +1792,6 @@ config CMD_UBI select CRC32 select MTD_UBI select CMD_MTDPARTS - default y if NAND_SUNXI help UBI is a software layer above MTD layer which admits use of LVM-like logical volumes on top of MTD devices, hides some complexities of -- 2.7.4 ___ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot
Re: [U-Boot] [PATCH v3 7/7] cmd: Add bind/unbind commands to bind a device to a driver from the command line
On 30.6.2018 06:19, Simon Glass wrote: > On 27 June 2018 at 07:13, Michal Simek wrote: >> On 22.6.2018 14:25, Jean-Jacques Hiblot wrote: >>> In some cases it can be useful to be able to bind a device to a driver from >>> the command line. >>> The obvious example is for versatile devices such as USB gadget. >>> Another use case is when the devices are not yet ready at startup and >>> require some setup before the drivers are bound (ex: FPGA which bitsream is >>> fetched from a mass storage or ethernet) >>> >>> usage example: >>> >>> bind usb_dev_generic 0 usb_ether >>> unbind usb_dev_generic 0 usb_ether >>> or >>> unbind eth 1 >>> >>> bind /ocp/omap_dwc3@4838/usb@4839 usb_ether >>> unbind /ocp/omap_dwc3@4838/usb@4839 >>> >>> Signed-off-by: Jean-Jacques Hiblot >>> >>> --- >>> >>> Changes in v3: >>> - factorize code based on comments from ML >>> - remove the devices before unbinding them >>> - use device_find_global_by_ofnode() to get a device by its node. >>> - Added tests >>> >>> Changes in v2: >>> - Make the bind/unbind command generic, not specific to usb device. >>> - Update the API to be able to bind/unbind based on DTS node path >>> - Add a Kconfig option to select the bind/unbind commands >>> >>> arch/sandbox/dts/test.dts | 11 ++ >>> cmd/Kconfig| 9 ++ >>> cmd/Makefile | 1 + >>> cmd/bind.c | 255 >>> + >>> configs/sandbox_defconfig | 1 + >>> test/py/tests/test_bind.py | 178 +++ >>> 6 files changed, 455 insertions(+) >>> create mode 100644 cmd/bind.c >>> create mode 100644 test/py/tests/test_bind.py > > Reviewed-by: Simon Glass > > Nice work > > [...] > >> >> I have tested bind/unbind with dwc3 on zynqmp for ethernet gadget and it >> is working fine for me. >> I have also tried to use bind/unbind for gpio zynqmp driver and it is >> also working fine. >> >> It means >> Tested-by: Michal Simek >> >> I would prefer if these commands are called as dm bind and dm unbind >> instead of simply bind/unbind which should also fit to dm command >> description "dm - Driver model low level access". > > Yes i can see the point. But after thinking about it, maybe it is best > as it is? After all driver model is fundamental to U-Boot and it's not > clear what else we might bind/unbind. > > I'd like to get other opinions here, too. Tom/Marek: Any opinion? Thanks, Michal ___ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot
Re: [U-Boot] [PATCH v3 2/3] doc: dtbinding: Add file system firmware loader binding document
On Sun, 2018-07-08 at 20:39 -0600, Simon Glass wrote: > Hi Tien Fong, > > On 2 July 2018 at 01:26, Chee, Tien Fong > wrote: > > > > On Fri, 2018-06-29 at 21:19 -0700, Simon Glass wrote: > > > > > > Hi Tien Fong, > > > > > > On 28 June 2018 at 01:58, Chee, Tien Fong > > om> > > > wrote: > > > > > > > > > > > > On Thu, 2018-06-28 at 01:04 -0700, Chee, Tien Fong wrote: > > > > > > > > > > > > > > > On Wed, 2018-06-27 at 14:03 -0700, Simon Glass wrote: > > > > > > > > > > > > > > > > > > > > > > > > Hi Tien Fong, > > > > > > > > > > > > On 27 June 2018 at 01:32, Chee, Tien Fong > > > > > ntel > > > > > > .com > > > > > > > > > > > > > > > > > > > > > > > > > > > wrote: > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > On Mon, 2018-06-25 at 21:58 -0600, Simon Glass wrote: > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > Hi, > > > > > > > > > > > > > > > > On 25 June 2018 at 07:28, > > > > > > > > wrote: > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > From: Tien Fong Chee > > > > > > > > > > > > > > > > > > Add a document to describe file system firmware > > > > > > > > > loader > > > > > > > > > binding > > > > > > > > > information. > > > > > > > > > > > > > > > > > > Signed-off-by: Tien Fong Chee > > > > > > > > om> > > > > > > > > > --- > > > > > > > > > doc/device-tree-bindings/chosen.txt | 22 > > > > > > > > > > > > > > > > > > doc/device-tree-bindings/misc/fs_loader.txt | 52 > > > > > > > > > + > > > > > > > > > 2 files changed, 74 insertions(+) > > > > > > > > > create mode 100644 doc/device-tree- > > > > > > > > > bindings/misc/fs_loader.txt > > > > > > > > > > > > > > > > > > diff --git a/doc/device-tree-bindings/chosen.txt > > > > > > > > > b/doc/device- > > > > > > > > > tree- > > > > > > > > > bindings/chosen.txt > > > > > > > > > index c96b8f7..738673c 100644 > > > > > > > > > --- a/doc/device-tree-bindings/chosen.txt > > > > > > > > > +++ b/doc/device-tree-bindings/chosen.txt > > > > > > > > > @@ -73,3 +73,25 @@ Example > > > > > > > > > u-boot,spl-boot-order = "same-as- > > > > > > > > > spl", > > > > > > > > > &sdmmc, > > > > > > > > > "/sd > > > > > > > > > hci@fe33"; > > > > > > > > > }; > > > > > > > > > }; > > > > > > > > > + > > > > > > > > > +firmware-loader property > > > > > > > > > + > > > > > > > > > +Multiple file system firmware loader nodes could be > > > > > > > > > defined > > > > > > > > > in > > > > > > > > > device trees for > > > > > > > > > +multiple storage type and their default partition, > > > > > > > > > then > > > > > > > > > a > > > > > > > > > property > > > > > > > > > +"firmware-loader" can be used to pass default > > > > > > > > > firmware > > > > > > > > > loader > > > > > > > > > +node(default storage type) to the firmware loader > > > > > > > > > driver. > > > > > > > > > + > > > > > > > > > +Example > > > > > > > > > +--- > > > > > > > > > +/ { > > > > > > > > > + chosen { > > > > > > > > > + firmware-loader = &fs_loader0; > > > > > > > > > + }; > > > > > > > > > + > > > > > > > > > + fs_loader0: fs_loader@0 { > > > > > > > > This should be : > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > + fs_loader0: fs-loader@0 { > > > > > > > > since hyphen is used for node and property names. > > > > > > > > Underscore is > > > > > > > > used > > > > > > > > for phandles (so you have that correct). > > > > > > > > > > > > > > > Okay. > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > + u-boot,dm-pre-reloc; > > > > > > > > > + compatible = "fs_loader"; > > > > > > > > How about u-boot,fs-loader since this is U-Boot > > > > > > > > specific I > > > > > > > > think. > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > + storage_device = "mmc"; > > > > > > > > storage-device > > > > > > > > > > > > > > > Okay > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > + devpart = "0:1"; > > > > > > > > I think you should use a phandle to the node containing > > > > > > > > the > > > > > > > > mmc > > > > > > > > device to use. > > > > > > > > > > > > > > > > storage-device = <&mmc_3 1>; > > > > > > > > > > > > > > > > for example (meaning use that MMC, partition 1. > > > > > > > > > > > > > > > How to get device number based on node of a storage? > > > > > > > This could make design more complicated be