public inbox for linux-ia64@vger.kernel.org
 help / color / mirror / Atom feed
* PAL_PROC_SET_FEATURES documentation
@ 2007-10-16  8:34 Matthew Chapman
  2007-10-16 15:09 ` Russ Anderson
  0 siblings, 1 reply; 2+ messages in thread
From: Matthew Chapman @ 2007-10-16  8:34 UTC (permalink / raw)
  To: linux-ia64

Where would I find documentation on the Itanium 2 specific flags to
PAL_PROC_SET_FEATURES?

Linux arch/ia64/kernel/setup.c seems to enable bit 0x80, but there is no
explanatory comment attached.

The Itanium 2 microarchitecture manual [1] says that early deferral of
speculative memory ops (bypassing VHPT walker) can be enabled via
PAL_PROC_SET_FEATURES, but as far as I can see does not specify anywhere
which is the appropriate bit...

Also, is it true that early deferral only happens with psr.ic=0, as
per Table 5-2?  What is the motivation for that?

Matt

[1] i.e. http://download.intel.com/design/Itanium2/manuals/25111003.pdf


^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: PAL_PROC_SET_FEATURES documentation
  2007-10-16  8:34 PAL_PROC_SET_FEATURES documentation Matthew Chapman
@ 2007-10-16 15:09 ` Russ Anderson
  0 siblings, 0 replies; 2+ messages in thread
From: Russ Anderson @ 2007-10-16 15:09 UTC (permalink / raw)
  To: linux-ia64

On Tue, Oct 16, 2007 at 06:34:14PM +1000, Matthew Chapman wrote:
> Where would I find documentation on the Itanium 2 specific flags to
> PAL_PROC_SET_FEATURES?

"Intel® Itanium® 2 Processors Firmware Guide", though I don't see it
on the Intel website.  Don't recall if the document is restricted.
 
> Linux arch/ia64/kernel/setup.c seems to enable bit 0x80, but there is no
> explanatory comment attached.

I assume you are refering to this code.

--------------------------------------
#ifdef CONFIG_MCKINLEY
        {
#               define FEATURE_SET 16
                struct ia64_pal_retval iprv;

                if (cpu_info->family = 0x1f) {
                        PAL_CALL_PHYS(iprv, PAL_PROC_GET_FEATURES, 0, FEATURE_SET, 0);
                        if ((iprv.status = 0) && (iprv.v0 & 0x80) && (iprv.v2 & 0x80))
                                PAL_CALL_PHYS(iprv, PAL_PROC_SET_FEATURES,
                                              (iprv.v1 | 0x80), FEATURE_SET, 0);
                }
        }
#endif
--------------------------------------

Note that it is setting bit 7 (0x80) in feature set 16 (not feature set 0).

> The Itanium 2 microarchitecture manual [1] says that early deferral of
> speculative memory ops (bypassing VHPT walker) can be enabled via
> PAL_PROC_SET_FEATURES, but as far as I can see does not specify anywhere
> which is the appropriate bit...
> 
> Also, is it true that early deferral only happens with psr.ic=0, as
> per Table 5-2?  What is the motivation for that?
> 
> Matt
> 
> [1] i.e. http://download.intel.com/design/Itanium2/manuals/25111003.pdf
> 
> -
> To unsubscribe from this list: send the line "unsubscribe linux-ia64" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html

-- 
Russ Anderson  RAS group  SGI  rja@sgi.com

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2007-10-16 15:09 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-10-16  8:34 PAL_PROC_SET_FEATURES documentation Matthew Chapman
2007-10-16 15:09 ` Russ Anderson

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox