1 
   2 
   3 
   4 
   5 
   6 
   7 
   8 
   9 
  10 
  11 
  12 #ifndef _CS5536_PCI_H
  13 #define _CS5536_PCI_H
  14 
  15 #include <linux/types.h>
  16 #include <linux/pci_regs.h>
  17 
  18 extern void cs5536_pci_conf_write4(int function, int reg, u32 value);
  19 extern u32 cs5536_pci_conf_read4(int function, int reg);
  20 
  21 #define CS5536_ACC_INTR         9
  22 #define CS5536_IDE_INTR         14
  23 #define CS5536_USB_INTR         11
  24 #define CS5536_MFGPT_INTR       5
  25 #define CS5536_UART1_INTR       4
  26 #define CS5536_UART2_INTR       3
  27 
  28 
  29 
  30 
  31 
  32 
  33 #define PCI_BUS_CS5536          0
  34 #define PCI_IDSEL_CS5536        14
  35 
  36 
  37 
  38 
  39 
  40 
  41 
  42 
  43 
  44 
  45 #define CFG_PCI_VENDOR_ID(mod_dev_id, sys_vendor_id) \
  46         (((mod_dev_id) << 16) | (sys_vendor_id))
  47 
  48 
  49 #define CS5536_VENDOR_ID        0x1022
  50 
  51 
  52 #define CS5536_ISA_DEVICE_ID            0x2090
  53 #define CS5536_IDE_DEVICE_ID            0x209a
  54 #define CS5536_ACC_DEVICE_ID            0x2093
  55 #define CS5536_OHCI_DEVICE_ID           0x2094
  56 #define CS5536_EHCI_DEVICE_ID           0x2095
  57 
  58 
  59 #define CS5536_ISA_CLASS_CODE           0x060100
  60 #define CS5536_IDE_CLASS_CODE           0x010180
  61 #define CS5536_ACC_CLASS_CODE           0x040100
  62 #define CS5536_OHCI_CLASS_CODE          0x0C0310
  63 #define CS5536_EHCI_CLASS_CODE          0x0C0320
  64 
  65 
  66 
  67 #define CFG_PCI_CACHE_LINE_SIZE(header_type, latency_timer)     \
  68         ((PCI_NONE_BIST << 24) | ((header_type) << 16) \
  69                 | ((latency_timer) << 8) | PCI_NORMAL_CACHE_LINE_SIZE);
  70 
  71 #define PCI_NONE_BIST                   0x00    
  72 #define PCI_BRIDGE_HEADER_TYPE          0x80    
  73 #define PCI_NORMAL_HEADER_TYPE          0x00
  74 #define PCI_NORMAL_LATENCY_TIMER        0x00
  75 #define PCI_NORMAL_CACHE_LINE_SIZE      0x08    
  76 
  77 
  78 #define PCI_BAR0_REG                    0x10
  79 #define PCI_BAR1_REG                    0x14
  80 #define PCI_BAR2_REG                    0x18
  81 #define PCI_BAR3_REG                    0x1c
  82 #define PCI_BAR4_REG                    0x20
  83 #define PCI_BAR5_REG                    0x24
  84 #define PCI_BAR_RANGE_MASK              0xFFFFFFFF
  85 
  86 
  87 #define PCI_CARDBUS_CIS_POINTER         0x00000000
  88 
  89 
  90 #define CS5536_SUB_VENDOR_ID            CS5536_VENDOR_ID
  91 
  92 
  93 #define CS5536_ISA_SUB_ID               CS5536_ISA_DEVICE_ID
  94 #define CS5536_IDE_SUB_ID               CS5536_IDE_DEVICE_ID
  95 #define CS5536_ACC_SUB_ID               CS5536_ACC_DEVICE_ID
  96 #define CS5536_OHCI_SUB_ID              CS5536_OHCI_DEVICE_ID
  97 #define CS5536_EHCI_SUB_ID              CS5536_EHCI_DEVICE_ID
  98 
  99 
 100 #define PCI_EXPANSION_ROM_BAR           0x00000000
 101 
 102 
 103 #define PCI_CAPLIST_POINTER             0x00000000
 104 #define PCI_CAPLIST_USB_POINTER         0x40
 105 
 106 
 107 #define CFG_PCI_INTERRUPT_LINE(pin, mod_intr) \
 108         ((PCI_MAX_LATENCY << 24) | (PCI_MIN_GRANT << 16) | \
 109                 ((pin) << 8) | (mod_intr))
 110 
 111 #define PCI_MAX_LATENCY                 0x40
 112 #define PCI_MIN_GRANT                   0x00
 113 #define PCI_DEFAULT_PIN                 0x01
 114 
 115 
 116 
 117 
 118 
 119 
 120 #define PCI_UART1_INT_REG       0x50
 121 #define PCI_UART2_INT_REG       0x54
 122 #define PCI_ISA_FIXUP_REG       0x58
 123 
 124 
 125 
 126 
 127 #define PCI_IDE_CFG_REG         0x40
 128 #define CS5536_IDE_FLASH_SIGNATURE      0xDEADBEEF
 129 #define PCI_IDE_DTC_REG         0x48
 130 #define PCI_IDE_CAST_REG        0x4C
 131 #define PCI_IDE_ETC_REG         0x50
 132 #define PCI_IDE_PM_REG          0x54
 133 #define PCI_IDE_INT_REG         0x60
 134 
 135 
 136 
 137 
 138 #define PCI_ACC_INT_REG         0x50
 139 
 140 
 141 
 142 
 143 #define PCI_OHCI_PM_REG         0x40
 144 #define PCI_OHCI_INT_REG        0x50
 145 
 146 
 147 
 148 
 149 #define PCI_EHCI_LEGSMIEN_REG   0x50
 150 #define PCI_EHCI_LEGSMISTS_REG  0x54
 151 #define PCI_EHCI_FLADJ_REG      0x60
 152 
 153 #endif