Re: [PATCH 03/23] sim/erc32: Perform pseudo-init of system if binary starts from non-zero address.

Mike Frysinger
2015-02-18T16:53:34Z

[-- Attachment #1: Type: text/plain, Size: 1413 bytes --]

On 18 Feb 2015 15:40, Jiri Gaisler wrote:
> On 02/17/2015 09:59 AM, Mike Frysinger wrote:
> > On 17 Feb 2015 08:44, Jiri Gaisler wrote:
> >> +extern struct pstate sregs;
> >> +
> >> +void
> >> +boot_init ()
> >
> > also looks like this is missing an update to a header to add the prototype ?
>
> This is done in patch (17/23).

ok, but patches things really should be standalone. although your series is
pretty good already in terms of splitting things apart.

> >> +{
> >> + mec_write(MEC_WCR, 0); /* zero waitstates */
> >> + mec_write(MEC_TRAPD, 0); /* turn off watch-dog */
> >> + mec_write(MEC_RTC_SCALER, sregs.freq-1); /* generate 1 MHz RTC tick */
> >> + mec_write(MEC_MEMCFG, (3 << 18) | (4 << 10)); /* 1 MB ROM, 4 MB RAM */
> >> + sregs.wim = 2;
> >> + sregs.psr = 0x110010e0;
> >> + sregs.r[30] = RAM_END;
> >> + sregs.r[14] = sregs.r[30] - 96*4;
> >> + mec_mcr |= 1; /* power-down enabled */
> >> +}
> >
> > why isn't sregs passed in as an arg ? looks like both callers have a pointer to
> > it already.
>
> I am saving this for next major update - SMP support. All globals will then
> be removed and the full cpu state will be in a struct that is passed to the
> simulation engine. In this way I can simulate multiple cpu's.

can't this particular bit be done already ? or is the global pointer diff from
the local one ?
-mike

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 819 bytes --]