[U-Boot] [PATCH 00/12] sh: change arch and boards code to generic board
Vladimir Zapolskiy
vz at mleia.com
Sun Sep 25 23:41:21 CEST 2016
Hello Nobuhiro-san,
On 16.09.2016 04:11, Nobuhiro Iwamatsu wrote:
> Hi,
>
> Sorry, reply is late..
>
> I will check your patches this weekend.
>
have you find time to review and test the changes?
It would be nice to have all sent fixes (generic board support, pci
controller fixes and caches fixes) in v2016.11-rc1, this will simplify
the following development of new features.
Please let me know, if you need any support from my end.
--
With best wishes,
Vladimir
>
> 2016-08-31 18:44 GMT+09:00 Vladimir Zapolskiy <vz at mleia.com>:
>> On 06.08.2016 21:21, Vladimir Zapolskiy wrote:
>>> The changeset implements initial support of relocatable U-Boot code
>>> for SH2/SH3/SH4 architectures and boards, as weel as it restores
>>> a possibility to boot U-Boot on SH boards, which has not been converted
>>> to generic board in time (for more details see commit f41e6088eb1
>>> ("sh: Fix build errors for generic board")). Special attention from
>>> maintainers of all touched boards is required, due to inaccessibility
>>> of hardware for me it would be a troublesome task.
>>>
>>> Now code/data initialization and relocation in general resemble the
>>> procedure on ARM with minor peculiarities (same one relocation from a
>>> storage device if calculated reloc_off == 0, otherwise two relocations),
>>> however please note that the change does *not* add PIE support (only PIC),
>>> so it may end up that there are persistent pointers to some non-relocated
>>> data, this point requires better investion.
>>>
>>> There is a runtime dependency on one generic change in common/board_f.c,
>>> see patch https://patchwork.ozlabs.org/patch/656371/ , also only r2dplus
>>> board is actually converted to support new arcitectural changes,
>>> application of patch 12/12 depends on SH7751 PCI fixes found at
>>> https://patchwork.ozlabs.org/patch/656373/ :
>>>
>>> -#define CONFIG_SYS_TEXT_BASE 0x8FFC0000
>>> +#define CONFIG_SYS_TEXT_BASE 0x8FE00000
>>>
>>> This r2dplus board change allows immediately check the correctness of
>>> the series on a r2dplus qemu target, note that the second copy is
>>> not avoided in this case, also for simplicity SDRAM area up to text base
>>> is large enough to store malloc pool and two copies of loaded code/data.
>>>
>>> Board maintainers may pay attention to CONFIG_SYS_MALLOC_CLEAR_ON_INIT,
>>> CONFIG_NEEDS_MANUAL_RELOC, CONFIG_SYS_GENERIC_GLOBAL_DATA etc. options.
>>> To let know about the change and to continue with the completion of
>>> the final step of board conversions to generic board I include all
>>> SH2/SH3/SH4 board maintainers into Cc list, please update your board
>>> configs appropriately.
>>>
>>> The change was tested on one custom SH4 (SH7551R) board, r2dplus qemu
>>> target (see also SH7751 PCI change under review), the rest of the boards
>>> are compile tested only.
>>>
>>> Multiple kudos to Simon for great patience and a decision to not remove
>>> the code.
>>>
>>> Any further improvements are welcome, especially it's worth to mention
>>> the anticipated convertion to PIE.
>>>
>>> Vladimir Zapolskiy (12):
>>> sh4: use single u-boot linker script for all boards
>>> sh: place board lowlevel_init code in the beginning of .text
>>> sh: define entry point and reloc_dst inside a linker script
>>> sh: add MEMORY command to a shared linker script
>>> sh: remove undefined DEBUG preprocessor token from board config files
>>> sh: define CONFIG_DISPLAY_BOARDINFO to print board information
>>> sh: add common dram_init() function for all boards
>>> sh: add shared relocate_code() function and call board_init_r()
>>> sh4: fix start.S by calling board_init_f() after first code relocation
>>> sh: share the correct version of start.S among all cpus
>>> sh: generate position independent code for all platforms
>>> r2dplus: fixup CONFIG_SYS_TEXT_BASE to account arch/sh changes
>>>
>>
>> Ping.
>>
>> --
>> Best wishes,
>> Vladimir
>
>
>
More information about the U-Boot
mailing list