1/* $Id: isa.h,v 1.1.1.1 2008/10/15 03:29:18 james26_jang 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 isa_device { 14 struct isa_device *next; 15 struct isa_device *child; 16 struct isa_bridge *bus; 17 int prom_node; 18 char prom_name[64]; 19 char compatible[64]; 20 struct resource resource; 21 unsigned int irq; 22}; 23 24struct isa_bridge { 25 struct isa_bridge *next; 26 struct isa_device *devices; 27 struct pci_pbm_info *parent; 28 struct pci_dev *self; 29 int index; 30 int prom_node; 31 char prom_name[64]; 32#define linux_prom_isa_ranges linux_prom_ebus_ranges 33 struct linux_prom_isa_ranges isa_ranges[PROMREG_MAX]; 34 int num_isa_ranges; 35}; 36 37extern struct isa_bridge *isa_chain; 38 39extern void isa_init(void); 40 41#define for_each_isa(bus) \ 42 for((bus) = isa_chain; (bus); (bus) = (bus)->next) 43 44#define for_each_isadev(dev, bus) \ 45 for((dev) = (bus)->devices; (dev); (dev) = (dev)->next) 46 47#endif /* !(__SPARC64_ISA_H) */ 48