Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 20 Apr 2013 23:50:53 +0200
From:      Damjan Marion <damjan.marion@gmail.com>
To:        Thomas Skibo <ThomasSkibo@sbcglobal.net>
Cc:        freebsd-arm@freebsd.org
Subject:   Re: gic.c and interrupt priority mask register (GICC_PMR)
Message-ID:  <17C7A0BE-43E4-422C-8E0F-11897DBB188E@gmail.com>
In-Reply-To: <5171C5C6.7080907@sbcglobal.net>
References:  <5171C5C6.7080907@sbcglobal.net>

next in thread | previous in thread | raw e-mail | index | archive | help

On Apr 20, 2013, at 12:31 AM, Thomas Skibo <ThomasSkibo@sbcglobal.net> =
wrote:

>=20
> Hello.
>=20
> I mentioned this as an aside in another email but I'd like to revisit =
it.
>=20
> My Zynq port doesn't work unless I initialize the GIC interrupt =
priority mask register (GICC_PMR) which I do in a hack in zy7_machdep.c. =
 The GICC_PMR register is never touched in gic.c and I wonder how other =
ARM ports work without having it initialized.  I figure either they use =
a different interrupt controller, their GIC implementation has a =
different reset value for the PMR, or a boot-loader sets up the register =
before the kernel is entered.
>=20
> The ARM Generic Interrupt Controller Architecture Specification =
(version 2.0) states that the reset value of GICC_PMR is 0 which masks =
all interrupts.  So shouldn't gic.c initialize it to 0xff if the PMR =
functionality isn't used?
>=20
> --Thomas

Hi Thomas,

Makes sense. GIC is used on several platforms so i guess those =
implementations have different reset value.

I can commit this if nobody objects.

Damjan




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?17C7A0BE-43E4-422C-8E0F-11897DBB188E>