[U-Boot] Pull request: u-boot-spi/master

Tom Rini trini at konsulko.com
Mon Oct 28 00:46:50 UTC 2019


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!

-- 
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: not available
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20191027/4c32f499/attachment.sig>


More information about the U-Boot mailing list