public inbox for u-boot@lists.denx.de
 help / color / mirror / Atom feed
From: Xuebing Wang <xbing6@gmail.com>
To: u-boot@lists.denx.de
Subject: [U-Boot] Latest u-boot release on BeagleBone Black for FreeBSD
Date: Wed, 07 May 2014 10:09:19 +0800	[thread overview]
Message-ID: <536995CF.4060404@gmail.com> (raw)
In-Reply-To: <1399203211.1994.25.camel@yellow>


On 05/04/2014 07:33 PM, Jeroen Hofstee wrote:
> Hello Xuebing, (freebsd-arm added on cc),
>
> On di, 2014-04-08 at 16:52 +0800, Xuebing Wang wrote:
>> Hi u-boot community,
>>
>> I am trying to port u-boot (release u-boot-2014.04-rc3.tar.bz2) to
>> FreeBSD on BeagleBone Black.
>>
>> In FreeBSD, there is a u-boot loader (named ubldr), which can call
>> u-boot API to get fdt (Flat Device Tree) data.
>>
>> I have to comment out below 3 lines, in order to get correct fdt data in
>> FreeBSD ubldr from u-boot. Would you please advice what is the best way
>> to fix this?
>>
>> In file common/env_common.c:
>> const uchar *env_get_addr(int index)
>> {
>> //      if (gd->env_valid)
>> //              return (uchar *)(gd->env_addr + index);
>> //      else
>>                   return &default_environment[index];
>> }
>>
> Assuming that you checked that your environment is valid you might be
> facing the fact that the gd pointer is corrupted. gd is a pointer to the
> "global data" and used for storing globals which are available before
> and after relocation. On (32bit) ARM this value used to be stored in
> register r8 but moved to r9 (llvm cannot reserve an arbitrary register,
> but can reserve r9 for platform specific usage). If ubldr uses r9 you
> end up with a invalid gd pointer when calling back into u-boot. ubldr
> now reserves r8 and r9 so a recent version should work fine on an older
> U-boot as well as current master.
>
> Can you check the latest ubldr?

Hi Jeroen,

Thanks for your response.

1) Today, I tested ubldr in the snapshot build 
FreeBSD-11.0-CURRENT-arm-armv6-BEAGLEBONE-20140428-r265054.img.bz2
without commenting out those 3 lines, I still can not get "fdt ls" in 
ubldr command line.

After commenting out those 3 lines and rebuild u-boot, I can get "fdt 
ls" in ubldr command line.

Note: All my previous test was based on 
FreeBSD-11.0-CURRENT-arm-armv6-BEAGLEBONE-20140323-r263665.img.bz2

2) Would you please point to me which revision that reserves both r8 and r9?


Thanks.


> Regards,
> Jeroen
>
>
>

-- 
Thanks,
Xuebing Wang

  reply	other threads:[~2014-05-07  2:09 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-04-08  8:52 [U-Boot] Latest u-boot release on BeagleBone Black for FreeBSD Xuebing Wang
2014-05-04 11:33 ` Jeroen Hofstee
2014-05-07  2:09   ` Xuebing Wang [this message]
2014-05-07 14:15     ` Ian Lepore
2014-05-07 15:02     ` Tim Kientzle
2014-05-07 15:17       ` Tim Kientzle
  -- strict thread matches above, loose matches on Subject: below --
2014-04-07  7:16 Xuebing Wang
2014-04-08 13:00 ` Ian Lepore

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=536995CF.4060404@gmail.com \
    --to=xbing6@gmail.com \
    --cc=u-boot@lists.denx.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox