<html><head><meta http-equiv="content-type" content="text/html; charset=UTF-8"><style>body { line-height: 1.5; }blockquote { margin-top: 0px; margin-bottom: 0px; margin-left: 0.5em; }body { font-size: 10.5pt; font-family: 微软雅黑; color: rgb(0, 0, 0); line-height: 1.5; }</style></head><body>
<div><span></span>Hi Pavel,</div><div>it works on my Zynq platform. Thankyou. I will go through the patches you posted.</div>
<div><br></div><hr style="width: 210px; height: 1px;" color="#b5c4df" size="1" align="left">
<div><span><div style="MARGIN: 10px; FONT-FAMILY: verdana; FONT-SIZE: 10pt"><div><font color="#0000ff">Best wishes,</font></div><div><font color="#0000ff">Tim Tian</font></div><div><font color="#0000ff">xuelin.tian@qkmtech.com</font></div></div></span></div>
<blockquote style="margin-top: 0px; margin-bottom: 0px; margin-left: 0.5em;"><div> </div><div style="border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0cm 0cm 0cm"><div style="PADDING-RIGHT: 8px; PADDING-LEFT: 8px; FONT-SIZE: 12px;FONT-FAMILY:tahoma;COLOR:#000000; BACKGROUND: #efefef; PADDING-BOTTOM: 8px; PADDING-TOP: 8px"><div><b>From:</b> <a href="mailto:ppisa4lists@pikron.com">Pavel Pisa</a></div><div><b>Date:</b> 2016-09-06 08:52</div><div><b>To:</b> <a href="mailto:chrisj@rtems.org">Chris Johns</a></div><div><b>CC:</b> <a href="mailto:xuelin.tian@qkmtech.com">xuelin.tian@qkmtech.com</a>; <a href="mailto:users@rtems.org">users@rtems.org</a></div><div><b>Subject:</b> Re: Simple question about RTL</div></div></div><div><div>Hello Chris,</div>
<div> </div>
<div> </div>
<div>On Tuesday 06 of September 2016 01:52:05 Chris Johns wrote:</div>
<div>> On 05/09/2016 23:52, Pavel Pisa wrote:</div>
<div>> > I can prepare 4.11 branch on my GitHub account and if it is confirmed,</div>
<div>> > that it works, then discussion about inclusion to yet unreleased 4.11</div>
<div>> > should start. Other option is to release 4.11 and correct these for</div>
<div>> > 4.11.1.</div>
<div>></div>
<div>> Please post the patches to devel for review. If they are fixing issues</div>
<div>> in libdl I am ok with pushing to 4.11 before 4.11.0 is released.</div>
<div> </div>
<div>I have spent huge amount today on shuffling patches but I have</div>
<div>not 4.11 booting on RPi2 yet. Problem is that code before branching</div>
<div>cannot run with actual firmware and U-boot versions. Hypervisor</div>
<div>boot is required.</div>
<div> </div>
<div>Fixing RTL on Zynq requires to at least these patches which I have</div>
<div>listed in previous e-mails. Problem is, that there are dependencies</div>
<div>on my previous generic cache management patches. The case of Zynq</div>
<div>and Altera is not so bad, cache manager has included specific support</div>
<div>for them. But there is significant problem that almost all other</div>
<div>ARM BSPs (including Raspberry Pi) with cache have not selected</div>
<div>any cache operations in the past due to the condition in generic</div>
<div>cache support. To do that functional requires backport another</div>
<div>patches.</div>
<div> </div>
<div>So I have ended with something like 25 patches</div>
<div> </div>
<div>  https://github.com/ppisa/rtems/tree/4.11-arm-update</div>
<div> </div>
<div>and debugging still why RPi2 does not boot.</div>
<div> </div>
<div>I consider patches marked by "Z" as critical for RTL on Zynq.</div>
<div>Patches marked by "O" as optional/may be required by dependencies</div>
<div>or Zynq boot. The rest is mostly RPi stuff and fix for rest of ARMs</div>
<div> </div>
<div>  ae58402 bsps/arm: CP15 support for flush prefetch buffer and table base control.</div>
<div>  bbfee81 arm/raspberrypi: ensure that RTEMS application image can be started by U-boot.</div>
<div>  211ff5f arm/score and shared: define ARM hypervisor mode and alternate vector table base access.</div>
<div>Z 1d640b1 score/arm: Ensure that copile time alignment is 64 bytes for Cortex-A multilib.</div>
<div>Z 52d170a rtems+bsps/cache: Define cache manager operations for code synchronization and maximal alignment.</div>
<div>Z ada6141 bsp/arm: Report correct maximal cache line length for ARM Cortex-A + L2C-310.</div>
<div>  24b045a bsps/arm: Change code to explicit selection of cache implementation for ARM BSPs.</div>
<div>  303a314 bsps/arm: basic on core cache support changed to use l1 functions.</div>
<div>Z 07ed33e libdl/rtl-obj.c: synchronize cache after code relocation.</div>
<div>  12b2428 bsps/arm: do not disable MMU during translation table management operations.</div>
<div>  65739ba arm/bsps: CP15 and basic cache support entire cache clean for more architecture variants now.</div>
<div>  1b7c3cc arm/raspberrypi: use cache manager operations to flush/invalidate all cache levels.</div>
<div>O c9fb885 arm/xilinx_zynq: ensure that cache is cleaned and MMU disabled when initialization starts.</div>
<div>  0504357 bsps/arm: use defines for cache type register format field.</div>
<div>O 531ac9b bsps/arm: remove lock in arm_cp15_set_translation_table_entries().</div>
<div>  6519972 bsps/arm: reorganize CP15 code to allow clean and invalidate ARMv7 cache by level.</div>
<div>  8904d09 bsps/arm: Fix basic cache support for SMP</div>
<div>  4192010 libbsp/arm: Add the TTB table to the default MMU set up as read/write.</div>
<div>  22f5808 libbsp/arm: Fix ARM BSPs missing the bsp_translation_table_end symbol.</div>
<div>  7d143ff bsps/arm: Support recent bootloaders starting kernel in HYP mode</div>
<div>  e94cc10 arm/raspberrypi: Enable HYP to SVC switch for this BSP.</div>
<div>  fe85ebd arm/raspberrypi: reorder and update MMU config table to nor force RW section later to RO.</div>
<div>  08374dc arm/raspberrypi: ensure that correct RPI_PERIPHERAL_BASE is provided by raspberrypi.h</div>
<div>  cc6e7ae arm/raspberrypi: remove duplicate setup of IRQ handler in the main ARM exception table.</div>
<div>  4f362eb arm/raspberrypi: change interrupt dispatch and enable to generic vector id based approach.</div>
<div> </div>
<div>I am not sure if that growing has chance to be acceptable for 4.11.</div>
<div>I have not even tested Zynq build. I do not have board there at home.</div>
<div>Incremental testing on Zynq has advantage that it runs and change breaking</div>
<div>code is immediately seen.</div>
<div> </div>
<div>All patches are backports from mainline, some RPi ones have removed touching</div>
<div>these files and subsystems which are not present on 4.11. So generally,</div>
<div>they should be OK. But ....</div>
<div> </div>
<div>Best wishes,</div>
<div> </div>
<div>                Pavel</div>
<div> </div>
<div> </div>
</div></blockquote>
</body></html>