1 /**************************************************************************
2 * Copyright (C) 2005, Silicon Graphics, Inc. *
4 * These coded instructions, statements, and computer programs contain *
5 * unpublished proprietary information of Silicon Graphics, Inc., and *
6 * are protected by Federal copyright law. They may not be disclosed *
7 * to third parties or copied or duplicated in any form, in whole or *
8 * in part, without the prior written consent of Silicon Graphics, Inc. *
10 **************************************************************************/
12 #ifndef _ASM_IA64_SN_CE_PROVIDER_H
13 #define _ASM_IA64_SN_CE_PROVIDER_H
15 #include <asm/sn/pcibus_provider_defs.h>
16 #include <asm/sn/tioce.h>
19 * Common TIOCE structure shared between the prom and kernel
21 * DO NOT CHANGE THIS STRUCT WITHOUT MAKING CORRESPONDING CHANGES TO THE
25 struct pcibus_bussoft ce_pcibus; /* common pciio header */
28 uint64_t ce_kernel_private;
29 uint64_t ce_prom_private;
33 struct tioce_common *ce_common;
35 struct list_head ce_dmamap_list;
37 uint64_t ce_ate40_shadow[TIOCE_NUM_M40_ATES];
38 uint64_t ce_ate3240_shadow[TIOCE_NUM_M3240_ATES];
39 uint32_t ce_ate3240_pagesize;
41 uint8_t ce_port1_secondary;
43 /* per-port resources */
46 uint64_t dirmap_shadow;
47 } ce_port[TIOCE_NUM_PORTS];
51 struct list_head ce_dmamap_list; /* headed by tioce_kernel */
54 uint64_t nbytes; /* # bytes mapped */
56 uint64_t ct_start; /* coretalk start address */
57 uint64_t pci_start; /* bus start address */
59 uint64_t *ate_hw; /* hw ptr of first ate in map */
60 uint64_t *ate_shadow; /* shadow ptr of firat ate */
61 uint16_t ate_count; /* # ate's in the map */
64 extern int tioce_init_provider(void);
66 #endif /* __ASM_IA64_SN_CE_PROVIDER_H */