404

[ Avaa Bypassed ]




Upload:

Command:

botdev@13.59.147.113: ~ $
/*
 * This file is subject to the terms and conditions of the GNU General Public
 * License.  See the file "COPYING" in the main directory of this archive
 * for more details.
 *
 * SGI specific setup.
 *
 * Copyright (C) 1995-1997,1999,2001-2005 Silicon Graphics, Inc.  All rights reserved.
 * Copyright (C) 1999 Ralf Baechle (ralf@gnu.org)
 */
#ifndef _ASM_IA64_SN_ARCH_H
#define _ASM_IA64_SN_ARCH_H

#include <linux/numa.h>
#include <asm/types.h>
#include <asm/percpu.h>
#include <asm/sn/types.h>
#include <asm/sn/sn_cpuid.h>

/*
 * This is the maximum number of NUMALINK nodes that can be part of a single
 * SSI kernel. This number includes C-brick, M-bricks, and TIOs. Nodes in
 * remote partitions are NOT included in this number.
 * The number of compact nodes cannot exceed size of a coherency domain.
 * The purpose of this define is to specify a node count that includes
 * all C/M/TIO nodes in an SSI system.
 *
 * SGI system can currently support up to 256 C/M nodes plus additional TIO nodes.
 *
 * 	Note: ACPI20 has an architectural limit of 256 nodes. When we upgrade
 * 	to ACPI3.0, this limit will be removed. The notion of "compact nodes"
 * 	should be deleted and TIOs should be included in MAX_NUMNODES.
 */
#define MAX_TIO_NODES		MAX_NUMNODES
#define MAX_COMPACT_NODES	(MAX_NUMNODES + MAX_TIO_NODES)

/*
 * Maximum number of nodes in all partitions and in all coherency domains.
 * This is the total number of nodes accessible in the numalink fabric. It
 * includes all C & M bricks, plus all TIOs.
 *
 * This value is also the value of the maximum number of NASIDs in the numalink
 * fabric.
 */
#define MAX_NUMALINK_NODES	16384

/*
 * The following defines attributes of the HUB chip. These attributes are
 * frequently referenced. They are kept in the per-cpu data areas of each cpu.
 * They are kept together in a struct to minimize cache misses.
 */
struct sn_hub_info_s {
	u8 shub2;
	u8 nasid_shift;
	u8 as_shift;
	u8 shub_1_1_found;
	u16 nasid_bitmask;
};
DECLARE_PER_CPU(struct sn_hub_info_s, __sn_hub_info);
#define sn_hub_info 	this_cpu_ptr(&__sn_hub_info)
#define is_shub2()	(sn_hub_info->shub2)
#define is_shub1()	(sn_hub_info->shub2 == 0)

/*
 * Use this macro to test if shub 1.1 wars should be enabled
 */
#define enable_shub_wars_1_1()	(sn_hub_info->shub_1_1_found)


/*
 * Compact node ID to nasid mappings kept in the per-cpu data areas of each
 * cpu.
 */
DECLARE_PER_CPU(short, __sn_cnodeid_to_nasid[MAX_COMPACT_NODES]);
#define sn_cnodeid_to_nasid	this_cpu_ptr(&__sn_cnodeid_to_nasid[0])


extern u8 sn_partition_id;
extern u8 sn_system_size;
extern u8 sn_sharing_domain_size;
extern u8 sn_region_size;

extern void sn_flush_all_caches(long addr, long bytes);
extern bool sn_cpu_disable_allowed(int cpu);

#endif /* _ASM_IA64_SN_ARCH_H */

Filemanager

Name Type Size Permission Actions
sn2 Folder 0755
acpi.h File 423 B 0644
addrs.h File 9.69 KB 0644
arch.h File 2.72 KB 0644
bte.h File 7.61 KB 0644
clksupport.h File 844 B 0644
geo.h File 3.51 KB 0644
intr.h File 2.24 KB 0644
io.h File 5.68 KB 0644
ioc3.h File 7.91 KB 0644
klconfig.h File 10.15 KB 0644
l1.h File 2.28 KB 0644
leds.h File 819 B 0644
module.h File 4.01 KB 0644
mspec.h File 1.78 KB 0644
nodepda.h File 2.21 KB 0644
pcibr_provider.h File 5.52 KB 0644
pcibus_provider_defs.h File 2.16 KB 0644
pcidev.h File 3.05 KB 0644
pda.h File 1.94 KB 0644
pic.h File 9.06 KB 0644
rw_mmr.h File 944 B 0644
shub_mmr.h File 26.25 KB 0644
shubio.h File 127.34 KB 0644
simulator.h File 917 B 0644
sn_cpuid.h File 4.24 KB 0644
sn_feature_sets.h File 1.61 KB 0644
sn_sal.h File 33.14 KB 0644
tioca.h File 20.21 KB 0644
tioca_provider.h File 6 KB 0644
tioce.h File 29.87 KB 0644
tioce_provider.h File 1.49 KB 0644
tiocp.h File 8.3 KB 0644
tiocx.h File 2.24 KB 0644
types.h File 957 B 0644