Lynx framebuffers multidomain implementation.
[linux/elbrus.git] / drivers / mcst / prom / sbus_proc_tree.h
blob02732a2c81e282ea8dafd3999b6a131e6b39578a
1 #ifndef SBUS_PROC_TREE_H
2 #define SBUS_PROC_TREE_H
4 #include <asm/openprom.h>
6 extern int prom_root_node;
8 #define MAX_NODES 1024
10 enum {
11 NO_TYPE,
12 #define NO_TYPE NO_TYPE
13 BUS,
14 #define BUS BUS
15 PCI,
16 #define PCI PCI
17 SBUS,
18 #define SBUS SBUS
19 CPU,
20 #define CPU CPU
21 MEMORY,
22 #define MEMORY MEMORY
23 SCSI,
24 #define SCSI SCSI
25 IDE,
26 #define IDE IDE
27 LAST_TYPE
28 #define LAST_TYPE LAST_TYPE
31 #define GET_DEV_TREE (MCT_TREE_MAGIC | 0)
33 /* Linux device tables */
34 typedef struct knode_dev {
35 struct knode_dev *next; /* next device on this Bus or null */
36 struct knode_dev *child; /* List of childes if any */
37 struct knode_dev *parent; /* Parent device if not toplevel */
38 int prom_node; /* PROM device tree node for this device */
39 char name[64]; /* PROM device name */
40 int slot;
41 int id; /* seq. number of node*/
42 int depth;
43 int type;
44 int data;
46 struct linux_prom_registers reg_addrs[PROMREG_MAX];
47 int num_registers, ranges_applied;
49 struct linux_prom_ranges device_ranges[PROMREG_MAX];
50 int num_device_ranges;
52 unsigned int irqs[4]; /* [31:8] - p2s_id, [7:0] - irq */
53 int num_irqs;
54 } knode_t;
56 #endif