From mboxrd@z Thu Jan 1 00:00:00 1970 From: Darwin Rambo Date: Mon, 26 May 2014 09:11:35 -0700 Subject: [U-Boot] [PATCH] arm: Allow u-boot to run from offset base address In-Reply-To: References: <1400105145-6628-1-git-send-email-drambo@broadcom.com> <1400107265.16796.8.camel@yellow> <5374CD55.3010703@broadcom.com> <20140515152119.9939F38047D@gemini.denx.de> <5374E64B.1060104@broadcom.com> <20140515191957.74A853804B6@gemini.denx.de> Message-ID: <538367B7.5090108@broadcom.com> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de Hi Albert, The previous stage bootloader (which I had no control over) wanted it's header to be aligned to a 512 byte MMC block boundary, presumably since this allowed DMA operations without copy/shifting. At the same time, I didn't want to hack a header into start.S because I didn't want to carry another downstream patch. So I investigated if I could shift u-boot's base address as a feature that would allow an aligned header to be used without the start.S patch. I know that a custom header patch to start.S would work, and that a header plus padding will also work. But I found out that you can align the base on certain smaller offsets if you keep the relocation offset at nice boundaries like 0x1000 and if the relocation offset is a multiple of the maximum alignment requirements of the image. The original patch I submitted didn't handle an end condition properly, was ARM64-specific (wasn't tested on other architectures), and because the patch was NAK'd, I didn't bother to submit a v2 patch and consider the idea to be dead. I'm happy to abandon the patch. I hope this helps. Best regards, Darwin On 14-05-26 02:50 AM, Albert ARIBAUD wrote: > Hi Wolfgang, Darwin, > > On Thu, 15 May 2014 21:19:57 +0200, Wolfgang Denk wrote: > >> Setting CONFIG_SYS_TEXT_BASE to something like 0x88000020 is extremly >> fishy. If you want to add some header data to your image, you should >> not shift the text segment, but rather include your header in the >> start of the text segment. Or keep it completely separate, without >> messing with CONFIG_SYS_TEXT_BASE. > > Back to the origin of the discussion and patch: > > Darwin, can you describe the actual technical difficulty which caused > you to you write and submitting this patch? > >> Best regards, >> >> Wolfgang Denk > > Amicalement, >