Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
at v2.6.14 54 lines 1.4 kB view raw
1/* $Id: isa.h,v 1.1 2001/05/11 04:31:55 davem Exp $ 2 * isa.h: Sparc64 layer for PCI to ISA bridge devices. 3 * 4 * Copyright (C) 2001 David S. Miller (davem@redhat.com) 5 */ 6 7#ifndef __SPARC64_ISA_H 8#define __SPARC64_ISA_H 9 10#include <asm/pbm.h> 11#include <asm/oplib.h> 12 13struct sparc_isa_bridge; 14 15struct sparc_isa_device { 16 struct sparc_isa_device *next; 17 struct sparc_isa_device *child; 18 struct sparc_isa_bridge *bus; 19 int prom_node; 20 char prom_name[64]; 21 char compatible[64]; 22 struct resource resource; 23 unsigned int irq; 24}; 25 26struct sparc_isa_bridge { 27 struct sparc_isa_bridge *next; 28 struct sparc_isa_device *devices; 29 struct pci_pbm_info *parent; 30 struct pci_dev *self; 31 int index; 32 int prom_node; 33 char prom_name[64]; 34#define linux_prom_isa_ranges linux_prom_ebus_ranges 35 struct linux_prom_isa_ranges isa_ranges[PROMREG_MAX]; 36 int num_isa_ranges; 37#define linux_prom_isa_intmap linux_prom_ebus_intmap 38 struct linux_prom_isa_intmap isa_intmap[PROMREG_MAX]; 39 int num_isa_intmap; 40#define linux_prom_isa_intmask linux_prom_ebus_intmask 41 struct linux_prom_isa_intmap isa_intmask; 42}; 43 44extern struct sparc_isa_bridge *isa_chain; 45 46extern void isa_init(void); 47 48#define for_each_isa(bus) \ 49 for((bus) = isa_chain; (bus); (bus) = (bus)->next) 50 51#define for_each_isadev(dev, bus) \ 52 for((dev) = (bus)->devices; (dev); (dev) = (dev)->next) 53 54#endif /* !(__SPARC64_ISA_H) */