[U-Boot] [PATCH v6 00/23] Bring up rk3036 uboot

Simon Glass sjg at chromium.org
Thu Nov 19 21:05:25 CET 2015


Hi Tom,

On 19 November 2015 at 09:28, Tom Rini <trini at konsulko.com> wrote:
> On Thu, Nov 19, 2015 at 07:24:45AM -0700, Simon Glass wrote:
>> +Tom
>>
>> Hi Lin,
>>
>> On 18 November 2015 at 22:49, hl <hl at rock-chips.com> wrote:
>> > Hi Simon,
>> >
>> >
>> >
>> > On 19/11/15 12:44, Simon Glass wrote:
>> >>
>> >> Hi Lin,
>> >>
>> >>
>> >> On 17 November 2015 at 18:19, hl <hl at rock-chips.com> wrote:
>> >>>
>> >>> Hi Simon,
>> >>>
>> >>>
>> >>>
>> >>> On 18/11/15 01:38, Simon Glass wrote:
>> >>>>
>> >>>> Hi Lin,
>> >>>>
>> >>>> On 16 November 2015 at 23:20, Lin Huang <hl at rock-chips.com> wrote:
>> >>>>>
>> >>>>> This series patch bring up rk3036 uboot, since rk3036 only 4K size
>> >>>>> SRAM for SPL, so in SPL stage only support timer, uart, sdram driver,
>> >>>>> and back to bootrom when finish ddr initial, and boot up second stage
>> >>>>> from bootrom.You can boot to command line(mmc info etc) for now use
>> >>>>> this patchset.
>> >>>>>
>> >>>>> Jeffy Chen (2):
>> >>>>>     rockchip: Add max spl size & spl header configs
>> >>>>>     rockchip: Add support for rk's second level loader
>> >>>>>
>> >>>>> Lin Huang (21):
>> >>>>>     rockchip: add timer driver
>> >>>>>     rockchip: move SYS_MALLOC_F_LEN to rk3288 own Kconfig
>> >>>>>     rockchip: rename board-spl.c to rk3288-board-spl.c
>> >>>>>     rockchip: add config decide whether to build common.c
>> >>>>>     dm: core: Add SPL Kconfig for REGMAP and SYSCON
>> >>>>>     rockchip: serial driver support rk3036
>> >>>>>     rockchip: Bring in RK3036 device tree file includes and bindings
>> >>>>>     rockchip: rk3036: Add clock driver
>> >>>>>     rockchip: rk3036: Add header files for GRF
>> >>>>>     rockchip: rk3036: Add Soc reset driver
>> >>>>>     rockchip: rk3036: Add a simple syscon driver
>> >>>>>     rockchip: rk3036: Add pinctrl driver
>> >>>>>     mmc: dw_mmc: move data transfer as a separate function
>> >>>>>     mmc: dw_mmc: support fifo mode in dwc mmc driver
>> >>>>>     rockchip: mmc: use non-removable property to disginguish emmc and
>> >>>>>       sdcard register
>> >>>>>     rockchip: mmc: get the fifo mode and fifo depth property from dts
>> >>>>>     rockchip: add early uart driver
>> >>>>>     rockchip: add rk3036 sdram driver
>> >>>>>     rockchip: rk3036: Add core Soc start-up code
>> >>>>>     rockchip: Add basic support for evb-rk3036 board
>> >>>>>     rockchip: doc: show packet rk3036 uboot image
>> >>>>>
>> >>>>>    arch/arm/dts/Makefile                             |   3 +-
>> >>>>>    arch/arm/dts/rk3036-sdk.dts                       |  46 ++
>> >>>>>    arch/arm/dts/rk3036.dtsi                          | 428 ++++++++++++
>> >>>>>    arch/arm/include/asm/arch-rockchip/cru_rk3036.h   | 168 +++++
>> >>>>>    arch/arm/include/asm/arch-rockchip/grf_rk3036.h   | 493
>> >>>>> ++++++++++++++
>> >>>>>    arch/arm/include/asm/arch-rockchip/sdram_rk3036.h | 341 ++++++++++
>> >>>>>    arch/arm/include/asm/arch-rockchip/timer.h        |  22 +
>> >>>>>    arch/arm/include/asm/arch-rockchip/uart.h         |  44 ++
>> >>>>>    arch/arm/mach-rockchip/Kconfig                    |  28 +-
>> >>>>>    arch/arm/mach-rockchip/Makefile                   |  10 +-
>> >>>>>    arch/arm/mach-rockchip/board-spl.c                | 294 ---------
>> >>>>>    arch/arm/mach-rockchip/board.c                    |   1 +
>> >>>>>    arch/arm/mach-rockchip/rk3036-board-spl.c         |  55 ++
>> >>>>>    arch/arm/mach-rockchip/rk3036/Kconfig             |  23 +
>> >>>>>    arch/arm/mach-rockchip/rk3036/Makefile            |  13 +
>> >>>>>    arch/arm/mach-rockchip/rk3036/reset_rk3036.c      |  45 ++
>> >>>>>    arch/arm/mach-rockchip/rk3036/save_boot_param.S   |  32 +
>> >>>>>    arch/arm/mach-rockchip/rk3036/sdram_rk3036.c      | 764
>> >>>>> ++++++++++++++++++++++
>> >>>>>    arch/arm/mach-rockchip/rk3036/syscon_rk3036.c     |  21 +
>> >>>>>    arch/arm/mach-rockchip/rk3288-board-spl.c         | 277 ++++++++
>> >>>>>    arch/arm/mach-rockchip/rk3288/Kconfig             |   9 +
>> >>>>>    arch/arm/mach-rockchip/rk_early_print.c           |  63 ++
>> >>>>>    arch/arm/mach-rockchip/rk_timer.c                 |  48 ++
>> >>>>>    board/evb_rk3036/evb_rk3036/Kconfig               |  15 +
>> >>>>>    board/evb_rk3036/evb_rk3036/MAINTAINERS           |   0
>> >>>>>    board/evb_rk3036/evb_rk3036/Makefile              |   7 +
>> >>>>>    board/evb_rk3036/evb_rk3036/evb_rk3036.c          |  49 ++
>> >>>>>    configs/chromebook_jerry_defconfig                |   2 +
>> >>>>>    configs/evb-rk3036_defconfig                      |  26 +
>> >>>>>    configs/firefly-rk3288_defconfig                  |   2 +
>> >>>>>    configs/sandbox_defconfig                         |   2 +
>> >>>>>    doc/README.rockchip                               |  11 +
>> >>>>>    drivers/clk/Makefile                              |   1 +
>> >>>>>    drivers/clk/clk_rk3036.c                          | 414 ++++++++++++
>> >>>>>    drivers/core/Kconfig                              |  19 +
>> >>>>>    drivers/core/Makefile                             |   4 +-
>> >>>>>    drivers/mmc/dw_mmc.c                              | 140 ++--
>> >>>>>    drivers/mmc/rockchip_dw_mmc.c                     |  27 +-
>> >>>>>    drivers/pinctrl/Kconfig                           |   9 +
>> >>>>>    drivers/pinctrl/rockchip/Makefile                 |   1 +
>> >>>>>    drivers/pinctrl/rockchip/pinctrl_rk3036.c         | 276 ++++++++
>> >>>>>    drivers/serial/serial_rockchip.c                  |   1 +
>> >>>>>    include/configs/evb_rk3036.h                      |  12 +
>> >>>>>    include/configs/rk3036_common.h                   | 103 +++
>> >>>>>    include/configs/rk3288_common.h                   |   8 +-
>> >>>>>    include/dt-bindings/clock/rk3036-cru.h            | 186 ++++++
>> >>>>>    include/dwmmc.h                                   |   5 +
>> >>>>>    tools/Makefile                                    |   6 +
>> >>>>>    tools/rkcommon.c                                  |  26 +-
>> >>>>>    tools/rkcommon.h                                  |   4 +-
>> >>>>>    tools/rkimage.c                                   |   2 +-
>> >>>>>    tools/rksd.c                                      |   6 +-
>> >>>>>    tools/rkspi.c                                     |   6 +-
>> >>>>>    53 files changed, 4222 insertions(+), 376 deletions(-)
>> >>>>>    create mode 100644 arch/arm/dts/rk3036-sdk.dts
>> >>>>>    create mode 100644 arch/arm/dts/rk3036.dtsi
>> >>>>>    create mode 100644 arch/arm/include/asm/arch-rockchip/cru_rk3036.h
>> >>>>>    create mode 100644 arch/arm/include/asm/arch-rockchip/grf_rk3036.h
>> >>>>>    create mode 100644 arch/arm/include/asm/arch-rockchip/sdram_rk3036.h
>> >>>>>    create mode 100644 arch/arm/include/asm/arch-rockchip/timer.h
>> >>>>>    create mode 100644 arch/arm/include/asm/arch-rockchip/uart.h
>> >>>>>    delete mode 100644 arch/arm/mach-rockchip/board-spl.c
>> >>>>>    create mode 100644 arch/arm/mach-rockchip/rk3036-board-spl.c
>> >>>>>    create mode 100644 arch/arm/mach-rockchip/rk3036/Kconfig
>> >>>>>    create mode 100644 arch/arm/mach-rockchip/rk3036/Makefile
>> >>>>>    create mode 100644 arch/arm/mach-rockchip/rk3036/reset_rk3036.c
>> >>>>>    create mode 100644 arch/arm/mach-rockchip/rk3036/save_boot_param.S
>> >>>>>    create mode 100644 arch/arm/mach-rockchip/rk3036/sdram_rk3036.c
>> >>>>>    create mode 100644 arch/arm/mach-rockchip/rk3036/syscon_rk3036.c
>> >>>>>    create mode 100644 arch/arm/mach-rockchip/rk3288-board-spl.c
>> >>>>>    create mode 100644 arch/arm/mach-rockchip/rk_early_print.c
>> >>>>>    create mode 100644 arch/arm/mach-rockchip/rk_timer.c
>> >>>>>    create mode 100644 board/evb_rk3036/evb_rk3036/Kconfig
>> >>>>>    create mode 100644 board/evb_rk3036/evb_rk3036/MAINTAINERS
>> >>>>>    create mode 100644 board/evb_rk3036/evb_rk3036/Makefile
>> >>>>>    create mode 100644 board/evb_rk3036/evb_rk3036/evb_rk3036.c
>> >>>>>    create mode 100644 configs/evb-rk3036_defconfig
>> >>>>>    create mode 100644 drivers/clk/clk_rk3036.c
>> >>>>>    create mode 100644 drivers/pinctrl/rockchip/pinctrl_rk3036.c
>> >>>>>    create mode 100644 include/configs/evb_rk3036.h
>> >>>>>    create mode 100644 include/configs/rk3036_common.h
>> >>>>>    create mode 100644 include/dt-bindings/clock/rk3036-cru.h
>> >>>>>
>> >>>>> --
>> >>>>> 1.9.1
>> >>>>>
>> >>>> Everything looks good except patch 15 which I think needs a few
>> >>>> tweaks. Can you please take a look? Either you could send a new
>> >>>> version of just that patch, or I can fix it up when applying it.
>> >>>>
>> >>>> It would be good to get this applied this week if possible.
>> >>>
>> >>>     I will update patch 15 and upload new version today, thank you.
>> >>
>> >> A few more problems....I've had to update two of the patches. I'll
>> >> resend them to the list and have pushed everything to
>> >> u-boot-rockchip/testing. Please take a look and let me know if there
>> >> are any problems. Otherwise I'll push to master tomorrow or Friday.
>> >
>> >     Thank you for your updating, i have download the latest code and
>> >     test, it can work, there is not problem. Thanks again.
>> >
>>
>> OK, I have pulled this in and pushed it to master.
>>
>> Two problems remain though:
>>
>> 1. Most important - the mkimage tool is now only built for Rockchip (a
>> change I had to make to fix a build error) and there are two versions
>> of it. The two Kconfig options should move to become command-line
>> options for mkimage. These are CONFIG_ROCKCHIP_MAX_SPL_SIZE and
>> CONFIG_ROCKCHIP_SPL_HDR. Since mkimage is a tool that is released with
>> Linux distributions it needs to support all possible uses. We only
>> release a single version. My suggestion is to add a command line
>> option for mkimage to specify the Rockchip chip type rk3288, rk3066,
>> etc.) and for the code to use the correct size/hdr automatically. You
>> can then remove these Kconfig options.
>
> This is going to be bad for distros that try and track our rc candidates
> even.  I would suggest making use of 'mkimage -n' to pass
> rk3288/rk3066/rkfuturethings to the rockchip file and sort out those
> things there.

If you like I can hold off on the pull request until this is sorted
out. But in that case can you please apply this one?

http://patchwork.ozlabs.org/patch/544969/

Lin, are you able to get a patch out quickly? If we can apply this
next week then it will not affect RC2.

Regards,
Simon


More information about the U-Boot mailing list