[U-Boot] [PATCH v5 00/21] Bring up rk3036 uboot

Simon Glass sjg at chromium.org
Tue Dec 1 00:17:20 CET 2015


Hi Sjeord,

On 30 November 2015 at 01:12, Sjoerd Simons
<sjoerd.simons at collabora.co.uk> wrote:
> On Fri, 2015-11-27 at 16:21 -0800, Simon Glass wrote:
>> +a few others who have submitted patches
>
> I suspect this is unrelated to the 3036 bringup, but at the moment i
> can't build the 3288 firefly SPL smaller then 32k :( (iotw small enoug
> to be used as an SD card image). The image ends up being about 250
> bytes too big..
>
> Playing silly games with nm, it seems the big items are the sdram
> bringup-code, mmc core/drivers and ofcourse (vs)printf related
> functions (followed by a long tail of smaller things).
>
> Seems like a bit of dieting is required ;)

Yes. Maybe some #ifdefs for each subsystem in rk3288_pinctrl_request()
would help.

But in general it is too close to the limit. With the bug-fixed gcc it
is fine, but we are stuck with the bug for a while.

Would be great if we could move to tiny printf(). Adding sprintf()
requires refactoring but should be doable.

Regards,
Simon

>
>> Hi,
>>
>> On 15 November 2015 at 16:58, hl <hl at rock-chips.com> wrote:
>> > Hi Simon,
>> >
>> >
>> > On 14/11/15 02:14, Simon Glass wrote:
>> > >
>> > > Hi Lin,
>> > >
>> > > On 10 November 2015 at 03:24, 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 init size & chip tag configs
>> > > >    rockchip: Add support for rk's second level loader
>> > > >
>> > > > Lin Huang (19):
>> > > >    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: support fifo mode in dwc mmc driver
>> > > >    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                    |  24 +-
>> > > >   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         |  53 ++
>> > > >   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   |  34 +
>> > > >   arch/arm/mach-rockchip/rk3036/sdram_rk3036.c      | 766
>> > > > ++++++++++++++++++++++
>> > > >   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           |  56 ++
>> > > >   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          |  48 ++
>> > > >   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                              |  81 ++-
>> > > >   drivers/mmc/rockchip_dw_mmc.c                     |  28 +-
>> > > >   drivers/pinctrl/Kconfig                           |  18 +
>> > > >   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                   | 100 +++
>> > > >   include/configs/rk3288_common.h                   |   6 +-
>> > > >   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, 4185 insertions(+), 349 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
>> > > >
>> > > I've done one more pass through. The MMC patch needs a small
>> > > refactor
>> > > I think and I've made comments on a few other paches. There are
>> > > also
>> > > some warnings as below - not all are real, but please take a look
>> > > and
>> > > fix what you can.
>> > >
>> > > $ patman -nmt
>> > > 1 warnings for 0010-rockchip-rk3036-Add-Soc-reset-driver.patch:
>> > > Found possible blank line(s) at end of file
>> > > 'arch/arm/mach-rockchip/rk3036/Makefile'
>> > >
>> > > Cleaned 21 patches
>> > > 0 errors, 1 warnings, 1 checks for
>> > > 0008-rockchip-rk3036-Add-clock-driver.patch:
>> > > check: drivers/clk/clk_rk3036.c,46: Avoid CamelCase:
>> > > <_Static_assert>
>> > > warning: drivers/clk/clk_rk3036.c,70: Avoid line continuations in
>> > > quoted
>> > > strings
>> > >
>> > > 2 errors, 1 warnings, 2 checks for
>> > > 0013-mmc-dw_mmc-support-fifo-mode-in-dwc-mmc-driver.patch:
>> > > error: drivers/mmc/dw_mmc.c,145: "(foo*)" should be "(foo *)"
>> > > check: drivers/mmc/dw_mmc.c,146: Alignment should match open
>> > > parenthesis
>> > > error: drivers/mmc/dw_mmc.c,149: "(foo*)" should be "(foo *)"
>> > > check: drivers/mmc/dw_mmc.c,150: Alignment should match open
>> > > parenthesis
>> > > warning: drivers/mmc/dw_mmc.c,247: line over 80 characters
>> > >
>> > > 0 errors, 1 warnings, 0 checks for
>> > > 0016-rockchip-add-rk3036-sdram-driver.patch:
>> > > warning: arch/arm/include/asm/arch-rockchip/sdram_rk3036.h,281:
>> > > do not
>> > > add new typedefs
>> > >
>> > > 0 errors, 3 warnings, 0 checks for
>> > > 0017-rockchip-rk3036-Add-core-Soc-start-up-code.patch:
>> > > warning: arch/arm/mach-rockchip/rk3036-board-spl.c,22: externs
>> > > should
>> > > be avoided in .c files
>> > > warning: arch/arm/mach-rockchip/rk3036/Kconfig,3: please write a
>> > > paragraph that describes the config symbol fully
>> > > warning: include/configs/rk3036_common.h,95: line over 80
>> > > characters
>> > >
>> > > checkpatch.pl found 2 error(s), 6 warning(s), 3 checks(s)
>> > >
>> > >
>> > > Unless there is anything else that comes up, I'm hoping that this
>> > > needs only one more revision, and then I'll pick up the series.
>> >
>> >
>> >     Okay, thanks, i will upload new version ASAP.
>>
>> I've pushed an update to u-boot-rockchip/testing. If you have time,
>> please give it a try. I'll push it to master soon.
>>
>> Regards,
>> Simon
>
> --
> Sjoerd Simons
> Collabora Ltd.


More information about the U-Boot mailing list