[U-Boot] Pull request: u-boot-spi/master
Schrempf Frieder
frieder.schrempf at kontron.de
Thu Oct 31 08:01:49 UTC 2019
On 31.10.19 08:57, Jagan Teki wrote:
> Hi Schrempf,
>
> On Thu, Oct 31, 2019 at 1:24 PM Schrempf Frieder
> <frieder.schrempf at kontron.de> wrote:
>>
>> Hi Jagan,
>>
>> On 28.10.19 01:46, Tom Rini wrote:
>>> On Sun, Oct 27, 2019 at 05:20:22PM +0530, Jagan Teki wrote:
>>>> Hi Tom,
>>>>
>>>> On Fri, Oct 25, 2019 at 11:19 PM Tom Rini <trini at konsulko.com> wrote:
>>>>>
>>>>> On Fri, Oct 25, 2019 at 02:08:12PM +0530, Jagan Teki wrote:
>>>>>
>>>>>> Hi Tom,
>>>>>>
>>>>>> Please pull this PR.
>>>>>>
>>>>>> Summary:
>>>>>> - SPL_SPI_FLASH_MTD (Frieder)
>>>>>> - SPI NOR IDs' fixes, additions (Vignesh)
>>>>>> - cs_info change (Bin)
>>>>>> - Enable sunxi spi (Jagan)
>>>>>>
>>>>>> Travis-CI:
>>>>>> https://travis-ci.org/openedev/u-boot-amarula/builds/602483415
>>>>>>
>>>>>> Thanks,
>>>>>> Jagan.
>>>>>>
>>>>>> The following changes since commit 17fd9915a4c639381804ed28274fa136ae3b0bee:
>>>>>>
>>>>>> Merge branch '2019-10-24-UFS-support' (2019-10-24 09:51:48 -0400)
>>>>>>
>>>>>> are available in the Git repository at:
>>>>>>
>>>>>> https://gitlab.denx.de/u-boot/custodians/u-boot-spi master
>>>>>>
>>>>>> for you to fetch changes up to 395ec7418695e5ce23f8b48c01a1dbffd2e52d3f:
>>>>>>
>>>>>> spi-nor-ids: Add support for Adesto AT25SL321 (2019-10-25 00:48:32 +0530)
>>>>>>
>>>>>
>>>>> So, looking over the build output, I see the expected size increase in
>>>>> sunxi due to new support. But I also see a lot of size increases in
>>>>> rockchip and layerscape platforms (and possibly more, I stopped after
>>>>> spotting two different SoCs), for example:
>>>>> evb-px5 : all +12139 data +176 rodata +2275 spl/u-boot-spl:all +3529 spl/u-boot-spl:data +120 spl/u-boot-spl:rodata +309 spl/u-boot-spl:text +3100 text +9688
>>>>> u-boot: add: 49/0, grow: 0/0 bytes: 9512/0 (9512)
>>>>> function old new delta
>>>>> spi_nor_scan - 2032 +2032
>>>>> do_spi_flash - 2008 +2008
>>>>> spi_get_bus_and_cs - 436 +436
>>>>> spi_mem_exec_op - 420 +420
>>>>> static.spi_nor_wait_till_ready_with_timeout - 300 +300
>>>>> spi_nor_write - 300 +300
>>>>> mtd_arg_off_size - 276 +276
>>>>> spi_nor_erase - 232 +232
>>>>> device_unbind - 232 +232
>>>>> spi_nor_read_data - 220 +220
>>>>> spi_nor_write_data - 212 +212
>>>>> dm_spi_claim_bus - 196 +196
>>>>> spi_mem_adjust_op_size - 160 +160
>>>>> spi_mem_default_supports_op - 156 +156
>>>>> spi_nor_read - 152 +152
>>>>> spi_flash_probe_bus_cs - 152 +152
>>>>> spi_set_speed_mode - 148 +148
>>>>> spi_flash_std_erase - 136 +136
>>>>> spi_flash_std_probe - 132 +132
>>>>> mtd_arg_off - 124 +124
>>>>> device_chld_unbind - 120 +120
>>>>> _u_boot_list_2_driver_2_spi_flash_std - 120 +120
>>>>> spi_nor_write_reg - 104 +104
>>>>> spi_find_bus_and_cs - 104 +104
>>>>> spi_nor_read_reg - 100 +100
>>>>> spi_find_chip_select - 96 +96
>>>>> static.spi_check_buswidth_req - 88 +88
>>>>> str2off - 80 +80
>>>>> bytes_per_second - 76 +76
>>>>> spi_flash_std_write - 72 +72
>>>>> spi_flash_std_read - 72 +72
>>>>> spi_mem_supports_op - 56 +56
>>>>> _u_boot_list_2_cmd_2_sf - 56 +56
>>>>> dm_spi_xfer - 48 +48
>>>>> read_sr - 44 +44
>>>>> device_find_next_child - 40 +40
>>>>> spi_flash_cmd_get_sw_write_prot - 36 +36
>>>>> dm_spi_release_bus - 28 +28
>>>>> write_enable - 20 +20
>>>>> write_disable - 20 +20
>>>>> spi_flash_std_get_sw_write_prot - 20 +20
>>>>> spi_flash_write_dm - 16 +16
>>>>> spi_flash_read_dm - 16 +16
>>>>> spi_flash_erase_dm - 16 +16
>>>>> spi_xfer - 8 +8
>>>>> spi_release_bus - 8 +8
>>>>> spi_flash_std_remove - 8 +8
>>>>> spi_claim_bus - 8 +8
>>>>> flash - 8 +8
>>>>> spl-u-boot-spl: add: 25/0, grow: 0/0 bytes: 3220/0 (3220)
>>>>> function old new delta
>>>>> spi_nor_scan - 904 +904
>>>>> spi_mem_exec_op - 420 +420
>>>>> spi_nor_read - 304 +304
>>>>> dm_spi_claim_bus - 196 +196
>>>>> spi_mem_adjust_op_size - 160 +160
>>>>> spi_mem_default_supports_op - 156 +156
>>>>> spi_set_speed_mode - 148 +148
>>>>> spi_flash_std_erase - 136 +136
>>>>> spi_flash_std_probe - 132 +132
>>>>> _u_boot_list_2_driver_2_spi_flash_std - 120 +120
>>>>> spi_nor_write_reg - 104 +104
>>>>> static.spi_check_buswidth_req - 88 +88
>>>>> spi_flash_std_write - 72 +72
>>>>> spi_flash_std_read - 72 +72
>>>>> spi_mem_supports_op - 56 +56
>>>>> dm_spi_xfer - 48 +48
>>>>> dm_spi_release_bus - 28 +28
>>>>> spi_flash_std_get_sw_write_prot - 20 +20
>>>>> spi_xfer - 8 +8
>>>>> spi_release_bus - 8 +8
>>>>> spi_nor_write - 8 +8
>>>>> spi_nor_erase - 8 +8
>>>>> spi_flash_std_remove - 8 +8
>>>>> spi_flash_cmd_get_sw_write_prot - 8 +8
>>>>> spi_claim_bus - 8 +8
>>>>> ls2088aqds_tfa : all +12906 data +120 rodata +2982 text +9804
>>>>> u-boot: add: 44/0, grow: 0/0 bytes: 8460/0 (8460)
>>>>> function old new delta
>>>>> spi_nor_scan - 2168 +2168
>>>>> sst26_lock_ctl - 604 +604
>>>>> stm_unlock - 536 +536
>>>>> stm_lock - 536 +536
>>>>> sst_write - 504 +504
>>>>> spi_mem_exec_op - 420 +420
>>>>> spi_nor_write - 300 +300
>>>>> spi_nor_wait_till_ready - 300 +300
>>>>> spi_nor_erase - 232 +232
>>>>> spi_nor_read_data - 220 +220
>>>>> spi_nor_write_data - 212 +212
>>>>> dm_spi_claim_bus - 196 +196
>>>>> spi_mem_adjust_op_size - 160 +160
>>>>> spi_mem_default_supports_op - 156 +156
>>>>> spi_nor_read - 152 +152
>>>>> spi_flash_std_erase - 136 +136
>>>>> spi_flash_std_probe - 132 +132
>>>>> stm_is_locked - 120 +120
>>>>> _u_boot_list_2_driver_2_spi_flash_std - 120 +120
>>>>> static.write_sr_and_check - 112 +112
>>>>> spi_nor_write_reg - 104 +104
>>>>> spi_nor_read_reg - 100 +100
>>>>> stm_is_unlocked_sr - 92 +92
>>>>> stm_is_locked_sr - 92 +92
>>>>> static.spi_check_buswidth_req - 88 +88
>>>>> sst26_process_bpr - 88 +88
>>>>> stm_get_locked_range - 80 +80
>>>>> spi_flash_std_write - 72 +72
>>>>> spi_flash_std_read - 72 +72
>>>>> spi_mem_supports_op - 56 +56
>>>>> dm_spi_xfer - 48 +48
>>>>> read_sr - 44 +44
>>>>> sst26_is_locked - 36 +36
>>>>> spi_flash_cmd_get_sw_write_prot - 36 +36
>>>>> dm_spi_release_bus - 28 +28
>>>>> write_enable - 20 +20
>>>>> write_disable - 20 +20
>>>>> spi_flash_std_get_sw_write_prot - 20 +20
>>>>> sst26_unlock - 8 +8
>>>>> sst26_lock - 8 +8
>>>>> spi_xfer - 8 +8
>>>>> spi_release_bus - 8 +8
>>>>> spi_flash_std_remove - 8 +8
>>>>> spi_claim_bus - 8 +8
>>>>>
>>>>> So this strongly feels like something is being enabled by default when
>>>>> it shouldn't. You may want to use buildman with something like:
>>>>> $ git checkout -b current-spi-changes origin/master
>>>>> $ export SOURCE_DATE_EPOCH=`date +%s`
>>>>> $ ./tools/buildman/buildman -o /tmp/ls2088aqds_tfa -b current-spi-changes \
>>>>> -SBCdevlk ls2088aqds_tfa
>>>>> $ ./tools/buildman/buildman -o /tmp/ls2088aqds_tfa -b current-spi-changes \
>>>>> -SsBdevlk ls2088aqds_tfa
>>>>>
>>>>> If nothing in the git log stands out to you as to which commit is
>>>>> causing this growth. Thanks!
>>>>
>>>> I did see for layerscape. but not with rockchip. layerscape did use
>>>> cmd/sf.c and DM_SPI_FLASH don't know why those boards accessing
>>>> jedec,spi-nor even though they enabled it on dts. so the patch
>>>> 08: mtd: spi: Kconfig: Imply SPI_FLASH if DM_SPI_FLASH
>>>>
>>>> Enabling SPI_FLASH that indeed increasing the size on this platform,
>>>> reset seems to be fine. If yes, will make the SPI_FLASH enablement not
>>>> for layerscape. please check and let me know.
>>>>
>>>> layerscape:
>>>>
>>>> $ ./tools/buildman/buildman -o /tmp/ls2088aqds_tfa -b master -SsCdevlk
>>>> ls2088aqds_tfa
>>>> boards.cfg is up to date. Nothing to do.
>>>> Summary of 21 commits for 1 boards (1 thread, 4 jobs per thread)
>>>> 01: Merge branch '2019-10-24-UFS-support'
>>>> aarch64: w+ ls2088aqds_tfa
>>>> +(ls2088aqds_tfa) ===================== WARNING ======================
>>>> +(ls2088aqds_tfa) This board does not use CONFIG_DM_ETH (Driver Model
>>>> +(ls2088aqds_tfa) for Ethernet drivers). Please update the board to use
>>>> +(ls2088aqds_tfa) CONFIG_DM_ETH before the v2020.07 release. Failure to
>>>> +(ls2088aqds_tfa) update by the deadline may result in board removal.
>>>> +(ls2088aqds_tfa) See doc/driver-model/migration.rst for more info.
>>>> +(ls2088aqds_tfa) ====================================================
>>>> 02: mtd: spi: Kconfig: Update CONFIG_SPI_FLASH
>>>> 03: mtd: spi-nor: ids: Add is25wp256 chip
>>>> 04: spi: Kconfig: Add help text
>>>> 05: dm: spi: Return 0 if driver does not implement ops->cs_info
>>>> 06: dm: spi: Change cs_info op to return -EINVAL for invalid cs num
>>>> 07: cmd: sf: Mark it default if DM_SPI_FLASH enabled
>>>>
>>>> aarch64: (for 1/1 boards) all +12554.0 data +120.0 rodata +2750.0
>>>> text +9684.0
>>>> ls2088aqds_tfa : all +12554 data +120 rodata +2750 text +9684
>>>> 09: spi: Kconfig: Enable SPI_SUNXI for SUNXI
>>>> 10: arm: sunxi: Enable SPI/SPI-FLASH support for A64
>>>> 11: configs: sopine-baseboard: Enable SPI-FLASH
>>>> 12: mtd: spi: Add a new option SPL_SPI_FLASH_MTD to Kconfig
>>>> 13: stm32mp1: configs: Add CONFIG_SPL_SPI_FLASH_MTD
>>>> 14: mtd: spi-nor-core: Use dev_err for reporting erase/write failures
>>>> aarch64: (for 1/1 boards) all +145.0 rodata +93.0 text +52.0
>>>> ls2088aqds_tfa : all +145 rodata +93 text +52
>>>> 15: mtd: spi-nor-core: Replace MTD_SPI_NOR_USE_4K_SECTORS with
>>>> SPI_FLASH_USE_4K_SECTORS
>>>> 16: spi: designware_spi: Disable and free clock when remove driver
>>>> 17: spi-nor: spi-nor-ids: Disable SPI_NOR_4B_OPCODES for n25q512* and n25q256*
>>>> 18: spi-nor: spi-nor-ids: Add entries for mt25q variants
>>>> aarch64: (for 1/1 boards) all +201.0 rodata +129.0 text +72.0
>>>> ls2088aqds_tfa : all +201 rodata +129 text +72
>>>> 19: spi-nor: spi-nor-ids: Add USE_FSR flag for mt25q* and n25q* entry
>>>> 20: mtd: spi: Clean up usage of CONFIG_SPI_FLASH_MTD
>>>> 21: spi-nor-ids: Add support for Adesto AT25SL321
>>>>
>>>> rk3399:
>>>>
>>>> $ ./tools/buildman/buildman -o /tmp/ls2088aqds_tfa -b master -SsCdevlk
>>>> puma-rk3399
>>>> boards.cfg is up to date. Nothing to do.
>>>> Summary of 21 commits for 1 boards (1 thread, 4 jobs per thread)
>>>> 01: Merge branch '2019-10-24-UFS-support'
>>>> aarch64: w+ puma-rk3399
>>>> +(puma-rk3399) WARNING: PMUM0 file rk3399m0.bin NOT found, resulting
>>>> binary is non-functional
>>>> +(puma-rk3399) Please read Building section in doc/README.rockchip
>>>> 02: mtd: spi: Kconfig: Update CONFIG_SPI_FLASH
>>>> 03: mtd: spi-nor: ids: Add is25wp256 chip
>>>> 04: spi: Kconfig: Add help text
>>>> 05: dm: spi: Return 0 if driver does not implement ops->cs_info
>>>> 06: dm: spi: Change cs_info op to return -EINVAL for invalid cs num
>>>> 07: cmd: sf: Mark it default if DM_SPI_FLASH enabled
>>>> 08: mtd: spi: Kconfig: Imply SPI_FLASH if DM_SPI_FLASH
>>>> 09: spi: Kconfig: Enable SPI_SUNXI for SUNXI
>>>> 10: arm: sunxi: Enable SPI/SPI-FLASH support for A64
>>>> 11: configs: sopine-baseboard: Enable SPI-FLASH
>>>> 12: mtd: spi: Add a new option SPL_SPI_FLASH_MTD to Kconfig
>>>> 13: stm32mp1: configs: Add CONFIG_SPL_SPI_FLASH_MTD
>>>> 14: mtd: spi-nor-core: Use dev_err for reporting erase/write failures
>>>> aarch64: (for 1/1 boards) all +145.0 rodata +93.0 text +52.0
>>>> puma-rk3399 : all +145 rodata +93 text +52
>>>> 15: mtd: spi-nor-core: Replace MTD_SPI_NOR_USE_4K_SECTORS with
>>>> SPI_FLASH_USE_4K_SECTORS
>>>> 16: spi: designware_spi: Disable and free clock when remove driver
>>>> 17: spi-nor: spi-nor-ids: Disable SPI_NOR_4B_OPCODES for n25q512* and n25q256*
>>>> 18: spi-nor: spi-nor-ids: Add entries for mt25q variants
>>>> 19: spi-nor: spi-nor-ids: Add USE_FSR flag for mt25q* and n25q* entry
>>>> 20: mtd: spi: Clean up usage of CONFIG_SPI_FLASH_MTD
>>>> 21: spi-nor-ids: Add support for Adesto AT25SL321
>>>
>>> If you think everything is good now, please re-submit the PR and I'll
>>> give it a whirl. Thanks!
>>
>> Can you please fix the issues in the PR and resubmit, so we have these
>> patches in v2020.01 if it's not already too late?
>>
>> Or otherwise please just drop the "mtd: spi: Kconfig: Imply SPI_FLASH if
>> DM_SPI_FLASH" or whatever causes these problems, so the other patches
>> get merged.
>
> Please have a look on -rc1 tag[1] PR merged already.
>
> [1] https://gitlab.denx.de/u-boot/u-boot/commits/master
Sorry for the noise! I missed the fact that the spi tree was merged.
Thanks a lot for your work!
More information about the U-Boot
mailing list