[U-Boot] [PATCH 13/13] mips: jz47xx: Add Creator CI20 platform

Andreas Färber
2017-02-12T11:52:45Z

Hi Marek,

Am 01.12.2016 um 02:06 schrieb Marek Vasut:
> From: Paul Burton <paul.burton@imgtec.com>
>
> Add support for the Creator CI20 platform based on the JZ4780 SoC.
> The DTS file comes from Linux 4.6 as of revision
> 78800558d104e003f9ae92e0107f1de39cf9de9f
>
> So far, there are still a few details which will have to be fixed
> once they are fleshed out in Linux:
> - pinmux: Thus far, this board just pokes the pinmux registers to
> set the pinmux. For MMC in SPL, this will have to stay.
> But for full u-boot a proper pinmux driver will have to
> be added once the pinmux semantics in DT are in mainline
> Linux.
> - ethernet,efuse: DT bindings are missing from mainline Linux.
>
> Signed-off-by: Marek Vasut <marex@denx.de>
> Cc: Daniel Schwierzeck <daniel.schwierzeck@gmail.com>
> Cc: Paul Burton <paul.burton@imgtec.com>
> ---
> arch/mips/dts/Makefile | 1 +
> arch/mips/dts/ci20.dts | 114 ++++++++++++++
> arch/mips/mach-jz47xx/Kconfig | 11 ++
> board/imgtec/ci20/Kconfig | 35 +++++
> board/imgtec/ci20/Makefile | 5 +
> board/imgtec/ci20/README | 10 ++
> board/imgtec/ci20/ci20.c | 354 ++++++++++++++++++++++++++++++++++++++++++
> configs/ci20_defconfig | 28 ++++
> include/configs/ci20.h | 105 +++++++++++++
> 9 files changed, 663 insertions(+)
> create mode 100644 arch/mips/dts/ci20.dts
> create mode 100644 board/imgtec/ci20/Kconfig
> create mode 100644 board/imgtec/ci20/Makefile
> create mode 100644 board/imgtec/ci20/README
> create mode 100644 board/imgtec/ci20/ci20.c
> create mode 100644 configs/ci20_defconfig
> create mode 100644 include/configs/ci20.h

I've looked into testing the remainder of this patchset, not seeing a
newer version. You can find my branch here:

https://github.com/afaerber/u-boot/commits/ci20

In particular I fixed the MMC set_ios signature to silence a warning
about the int vs. void return type, which I intend to clean up and submit.

The code compiled okay after some defconfig tweaks, save for a few
unused-variable SPL-only warnings, but testing did not give any output.
Investigating that, it seemed to me
CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y was missing for
CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR. Some other include options
could be moved into defconfig, too.

CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y leads to this error:

LD spl/u-boot-spl
mipsel-suse-linux-ld.bfd: u-boot-spl section `.data' will not fit in
region `.sram'
mipsel-suse-linux-ld.bfd: region `.sram' overflowed by 288 bytes
../scripts/Makefile.spl:304: recipe for target 'spl/u-boot-spl' failed
make[2]: *** [spl/u-boot-spl] Error 1
/home/andreas/OBS/u-boot/Makefile:1342: recipe for target
'spl/u-boot-spl' failed
make[1]: *** [spl/u-boot-spl] Error 2
make[1]: Leaving directory '/home/andreas/OBS/u-boot/ci20'
Makefile:150: recipe for target 'sub-make' failed
make: *** [sub-make] Error 2

I've reviewed all SPL Kconfig options and found three seemingly unneeded
options defaulting to y, but I did not find a way to get this number
down even a single byte with my GCC 6.3.1, and the recommended 4.8.1 was
even worse (~748). I also tried combining the downstream 4.8.1-built SPL
with the upstream U-Boot (from without
CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR), but still no output.

Is this the reason this series is not respun?

Regards,
Andreas

--
SUSE Linux GmbH, Maxfeldstr. 5, 90409 N?rnberg, Germany
GF: Felix Imend?rffer, Jane Smithard, Graham Norton
HRB 21284 (AG N?rnberg)