[a66a890] | 1 | Submitted By: Jim Gifford (patches at jg555 dot com)
|
---|
| 2 | Date: 2006-07-08
|
---|
| 3 | Initial Package Version: 2.6.17.4
|
---|
| 4 | Origin: Linux-MIPS
|
---|
| 5 | Upstream Status: http://www.linux-mips.org/pub/linux/mips/kernel/v2.6/
|
---|
| 6 | Description: Merges Linux-MIPS and Kernel.org Tree's
|
---|
| 7 |
|
---|
| 8 | diff -Naur linux-2.6.17.4-kernel/arch/mips/cobalt/console.c linux-2.6.17.4-mips/arch/mips/cobalt/console.c
|
---|
| 9 | --- linux-2.6.17.4-kernel/arch/mips/cobalt/console.c 2006-07-06 13:02:28.000000000 -0700
|
---|
| 10 | +++ linux-2.6.17.4-mips/arch/mips/cobalt/console.c 2006-07-06 16:58:16.000000000 -0700
|
---|
| 11 | @@ -41,3 +41,8 @@
|
---|
| 12 |
|
---|
| 13 | printk("Cobalt: early console registered\n");
|
---|
| 14 | }
|
---|
| 15 | +
|
---|
| 16 | +void __init disable_early_printk(void)
|
---|
| 17 | +{
|
---|
| 18 | + unregister_console(&cons_info);
|
---|
| 19 | +}
|
---|
| 20 | diff -Naur linux-2.6.17.4-kernel/arch/mips/configs/atlas_defconfig linux-2.6.17.4-mips/arch/mips/configs/atlas_defconfig
|
---|
| 21 | --- linux-2.6.17.4-kernel/arch/mips/configs/atlas_defconfig 2006-07-06 13:02:28.000000000 -0700
|
---|
| 22 | +++ linux-2.6.17.4-mips/arch/mips/configs/atlas_defconfig 2006-07-06 16:58:16.000000000 -0700
|
---|
| 23 | @@ -67,6 +67,7 @@
|
---|
| 24 | CONFIG_GENERIC_FIND_NEXT_BIT=y
|
---|
| 25 | CONFIG_GENERIC_HWEIGHT=y
|
---|
| 26 | CONFIG_GENERIC_CALIBRATE_DELAY=y
|
---|
| 27 | +CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y
|
---|
| 28 | CONFIG_DMA_NONCOHERENT=y
|
---|
| 29 | CONFIG_DMA_NEED_PCI_MAP_STATE=y
|
---|
| 30 | CONFIG_MIPS_BONITO64=y
|
---|
| 31 | diff -Naur linux-2.6.17.4-kernel/arch/mips/configs/bigsur_defconfig linux-2.6.17.4-mips/arch/mips/configs/bigsur_defconfig
|
---|
| 32 | --- linux-2.6.17.4-kernel/arch/mips/configs/bigsur_defconfig 2006-07-06 13:02:28.000000000 -0700
|
---|
| 33 | +++ linux-2.6.17.4-mips/arch/mips/configs/bigsur_defconfig 2006-07-06 16:58:16.000000000 -0700
|
---|
| 34 | @@ -83,6 +83,7 @@
|
---|
| 35 | CONFIG_GENERIC_FIND_NEXT_BIT=y
|
---|
| 36 | CONFIG_GENERIC_HWEIGHT=y
|
---|
| 37 | CONFIG_GENERIC_CALIBRATE_DELAY=y
|
---|
| 38 | +CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y
|
---|
| 39 | CONFIG_DMA_COHERENT=y
|
---|
| 40 | CONFIG_CPU_BIG_ENDIAN=y
|
---|
| 41 | # CONFIG_CPU_LITTLE_ENDIAN is not set
|
---|
| 42 | diff -Naur linux-2.6.17.4-kernel/arch/mips/configs/capcella_defconfig linux-2.6.17.4-mips/arch/mips/configs/capcella_defconfig
|
---|
| 43 | --- linux-2.6.17.4-kernel/arch/mips/configs/capcella_defconfig 2006-07-06 13:02:28.000000000 -0700
|
---|
| 44 | +++ linux-2.6.17.4-mips/arch/mips/configs/capcella_defconfig 2006-07-06 16:58:16.000000000 -0700
|
---|
| 45 | @@ -75,6 +75,7 @@
|
---|
| 46 | CONFIG_GENERIC_FIND_NEXT_BIT=y
|
---|
| 47 | CONFIG_GENERIC_HWEIGHT=y
|
---|
| 48 | CONFIG_GENERIC_CALIBRATE_DELAY=y
|
---|
| 49 | +CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y
|
---|
| 50 | CONFIG_DMA_NONCOHERENT=y
|
---|
| 51 | CONFIG_DMA_NEED_PCI_MAP_STATE=y
|
---|
| 52 | # CONFIG_CPU_BIG_ENDIAN is not set
|
---|
| 53 | diff -Naur linux-2.6.17.4-kernel/arch/mips/configs/cobalt_defconfig linux-2.6.17.4-mips/arch/mips/configs/cobalt_defconfig
|
---|
| 54 | --- linux-2.6.17.4-kernel/arch/mips/configs/cobalt_defconfig 2006-07-06 13:02:28.000000000 -0700
|
---|
| 55 | +++ linux-2.6.17.4-mips/arch/mips/configs/cobalt_defconfig 2006-07-06 16:58:16.000000000 -0700
|
---|
| 56 | @@ -68,6 +68,7 @@
|
---|
| 57 | CONFIG_GENERIC_FIND_NEXT_BIT=y
|
---|
| 58 | CONFIG_GENERIC_HWEIGHT=y
|
---|
| 59 | CONFIG_GENERIC_CALIBRATE_DELAY=y
|
---|
| 60 | +CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y
|
---|
| 61 | CONFIG_DMA_NONCOHERENT=y
|
---|
| 62 | CONFIG_DMA_NEED_PCI_MAP_STATE=y
|
---|
| 63 | CONFIG_I8259=y
|
---|
| 64 | diff -Naur linux-2.6.17.4-kernel/arch/mips/configs/db1000_defconfig linux-2.6.17.4-mips/arch/mips/configs/db1000_defconfig
|
---|
| 65 | --- linux-2.6.17.4-kernel/arch/mips/configs/db1000_defconfig 2006-07-06 13:02:28.000000000 -0700
|
---|
| 66 | +++ linux-2.6.17.4-mips/arch/mips/configs/db1000_defconfig 2006-07-06 16:58:16.000000000 -0700
|
---|
| 67 | @@ -67,6 +67,7 @@
|
---|
| 68 | CONFIG_GENERIC_FIND_NEXT_BIT=y
|
---|
| 69 | CONFIG_GENERIC_HWEIGHT=y
|
---|
| 70 | CONFIG_GENERIC_CALIBRATE_DELAY=y
|
---|
| 71 | +CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y
|
---|
| 72 | CONFIG_DMA_NONCOHERENT=y
|
---|
| 73 | CONFIG_DMA_NEED_PCI_MAP_STATE=y
|
---|
| 74 | # CONFIG_CPU_BIG_ENDIAN is not set
|
---|
| 75 | diff -Naur linux-2.6.17.4-kernel/arch/mips/configs/db1100_defconfig linux-2.6.17.4-mips/arch/mips/configs/db1100_defconfig
|
---|
| 76 | --- linux-2.6.17.4-kernel/arch/mips/configs/db1100_defconfig 2006-07-06 13:02:28.000000000 -0700
|
---|
| 77 | +++ linux-2.6.17.4-mips/arch/mips/configs/db1100_defconfig 2006-07-06 16:58:16.000000000 -0700
|
---|
| 78 | @@ -67,6 +67,7 @@
|
---|
| 79 | CONFIG_GENERIC_FIND_NEXT_BIT=y
|
---|
| 80 | CONFIG_GENERIC_HWEIGHT=y
|
---|
| 81 | CONFIG_GENERIC_CALIBRATE_DELAY=y
|
---|
| 82 | +CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y
|
---|
| 83 | CONFIG_DMA_NONCOHERENT=y
|
---|
| 84 | CONFIG_DMA_NEED_PCI_MAP_STATE=y
|
---|
| 85 | # CONFIG_CPU_BIG_ENDIAN is not set
|
---|
| 86 | diff -Naur linux-2.6.17.4-kernel/arch/mips/configs/db1200_defconfig linux-2.6.17.4-mips/arch/mips/configs/db1200_defconfig
|
---|
| 87 | --- linux-2.6.17.4-kernel/arch/mips/configs/db1200_defconfig 2006-07-06 13:02:28.000000000 -0700
|
---|
| 88 | +++ linux-2.6.17.4-mips/arch/mips/configs/db1200_defconfig 2006-07-06 16:58:16.000000000 -0700
|
---|
| 89 | @@ -67,6 +67,7 @@
|
---|
| 90 | CONFIG_GENERIC_FIND_NEXT_BIT=y
|
---|
| 91 | CONFIG_GENERIC_HWEIGHT=y
|
---|
| 92 | CONFIG_GENERIC_CALIBRATE_DELAY=y
|
---|
| 93 | +CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y
|
---|
| 94 | CONFIG_DMA_COHERENT=y
|
---|
| 95 | CONFIG_MIPS_DISABLE_OBSOLETE_IDE=y
|
---|
| 96 | # CONFIG_CPU_BIG_ENDIAN is not set
|
---|
| 97 | diff -Naur linux-2.6.17.4-kernel/arch/mips/configs/db1500_defconfig linux-2.6.17.4-mips/arch/mips/configs/db1500_defconfig
|
---|
| 98 | --- linux-2.6.17.4-kernel/arch/mips/configs/db1500_defconfig 2006-07-06 13:02:28.000000000 -0700
|
---|
| 99 | +++ linux-2.6.17.4-mips/arch/mips/configs/db1500_defconfig 2006-07-06 16:58:16.000000000 -0700
|
---|
| 100 | @@ -67,6 +67,7 @@
|
---|
| 101 | CONFIG_GENERIC_FIND_NEXT_BIT=y
|
---|
| 102 | CONFIG_GENERIC_HWEIGHT=y
|
---|
| 103 | CONFIG_GENERIC_CALIBRATE_DELAY=y
|
---|
| 104 | +CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y
|
---|
| 105 | CONFIG_DMA_NONCOHERENT=y
|
---|
| 106 | CONFIG_DMA_NEED_PCI_MAP_STATE=y
|
---|
| 107 | CONFIG_MIPS_DISABLE_OBSOLETE_IDE=y
|
---|
| 108 | diff -Naur linux-2.6.17.4-kernel/arch/mips/configs/db1550_defconfig linux-2.6.17.4-mips/arch/mips/configs/db1550_defconfig
|
---|
| 109 | --- linux-2.6.17.4-kernel/arch/mips/configs/db1550_defconfig 2006-07-06 13:02:28.000000000 -0700
|
---|
| 110 | +++ linux-2.6.17.4-mips/arch/mips/configs/db1550_defconfig 2006-07-06 16:58:16.000000000 -0700
|
---|
| 111 | @@ -67,6 +67,7 @@
|
---|
| 112 | CONFIG_GENERIC_FIND_NEXT_BIT=y
|
---|
| 113 | CONFIG_GENERIC_HWEIGHT=y
|
---|
| 114 | CONFIG_GENERIC_CALIBRATE_DELAY=y
|
---|
| 115 | +CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y
|
---|
| 116 | CONFIG_DMA_NONCOHERENT=y
|
---|
| 117 | CONFIG_DMA_NEED_PCI_MAP_STATE=y
|
---|
| 118 | CONFIG_MIPS_DISABLE_OBSOLETE_IDE=y
|
---|
| 119 | diff -Naur linux-2.6.17.4-kernel/arch/mips/configs/ddb5476_defconfig linux-2.6.17.4-mips/arch/mips/configs/ddb5476_defconfig
|
---|
| 120 | --- linux-2.6.17.4-kernel/arch/mips/configs/ddb5476_defconfig 2006-07-06 13:02:28.000000000 -0700
|
---|
| 121 | +++ linux-2.6.17.4-mips/arch/mips/configs/ddb5476_defconfig 2006-07-06 16:58:16.000000000 -0700
|
---|
| 122 | @@ -67,6 +67,7 @@
|
---|
| 123 | CONFIG_GENERIC_FIND_NEXT_BIT=y
|
---|
| 124 | CONFIG_GENERIC_HWEIGHT=y
|
---|
| 125 | CONFIG_GENERIC_CALIBRATE_DELAY=y
|
---|
| 126 | +CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y
|
---|
| 127 | CONFIG_DMA_NONCOHERENT=y
|
---|
| 128 | CONFIG_DMA_NEED_PCI_MAP_STATE=y
|
---|
| 129 | CONFIG_I8259=y
|
---|
| 130 | diff -Naur linux-2.6.17.4-kernel/arch/mips/configs/ddb5477_defconfig linux-2.6.17.4-mips/arch/mips/configs/ddb5477_defconfig
|
---|
| 131 | --- linux-2.6.17.4-kernel/arch/mips/configs/ddb5477_defconfig 2006-07-06 13:02:28.000000000 -0700
|
---|
| 132 | +++ linux-2.6.17.4-mips/arch/mips/configs/ddb5477_defconfig 2006-07-06 16:58:16.000000000 -0700
|
---|
| 133 | @@ -68,6 +68,7 @@
|
---|
| 134 | CONFIG_GENERIC_FIND_NEXT_BIT=y
|
---|
| 135 | CONFIG_GENERIC_HWEIGHT=y
|
---|
| 136 | CONFIG_GENERIC_CALIBRATE_DELAY=y
|
---|
| 137 | +CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y
|
---|
| 138 | CONFIG_DMA_NONCOHERENT=y
|
---|
| 139 | CONFIG_DMA_NEED_PCI_MAP_STATE=y
|
---|
| 140 | CONFIG_I8259=y
|
---|
| 141 | diff -Naur linux-2.6.17.4-kernel/arch/mips/configs/decstation_defconfig linux-2.6.17.4-mips/arch/mips/configs/decstation_defconfig
|
---|
| 142 | --- linux-2.6.17.4-kernel/arch/mips/configs/decstation_defconfig 2006-07-06 13:02:28.000000000 -0700
|
---|
| 143 | +++ linux-2.6.17.4-mips/arch/mips/configs/decstation_defconfig 2006-07-06 16:58:16.000000000 -0700
|
---|
| 144 | @@ -68,6 +68,7 @@
|
---|
| 145 | CONFIG_GENERIC_FIND_NEXT_BIT=y
|
---|
| 146 | CONFIG_GENERIC_HWEIGHT=y
|
---|
| 147 | CONFIG_GENERIC_CALIBRATE_DELAY=y
|
---|
| 148 | +CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y
|
---|
| 149 | CONFIG_DMA_NONCOHERENT=y
|
---|
| 150 | CONFIG_DMA_NEED_PCI_MAP_STATE=y
|
---|
| 151 | # CONFIG_CPU_BIG_ENDIAN is not set
|
---|
| 152 | diff -Naur linux-2.6.17.4-kernel/arch/mips/configs/e55_defconfig linux-2.6.17.4-mips/arch/mips/configs/e55_defconfig
|
---|
| 153 | --- linux-2.6.17.4-kernel/arch/mips/configs/e55_defconfig 2006-07-06 13:02:28.000000000 -0700
|
---|
| 154 | +++ linux-2.6.17.4-mips/arch/mips/configs/e55_defconfig 2006-07-06 16:58:16.000000000 -0700
|
---|
| 155 | @@ -73,6 +73,7 @@
|
---|
| 156 | CONFIG_GENERIC_FIND_NEXT_BIT=y
|
---|
| 157 | CONFIG_GENERIC_HWEIGHT=y
|
---|
| 158 | CONFIG_GENERIC_CALIBRATE_DELAY=y
|
---|
| 159 | +CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y
|
---|
| 160 | CONFIG_DMA_NONCOHERENT=y
|
---|
| 161 | CONFIG_DMA_NEED_PCI_MAP_STATE=y
|
---|
| 162 | # CONFIG_CPU_BIG_ENDIAN is not set
|
---|
| 163 | diff -Naur linux-2.6.17.4-kernel/arch/mips/configs/ev64120_defconfig linux-2.6.17.4-mips/arch/mips/configs/ev64120_defconfig
|
---|
| 164 | --- linux-2.6.17.4-kernel/arch/mips/configs/ev64120_defconfig 2006-07-06 13:02:28.000000000 -0700
|
---|
| 165 | +++ linux-2.6.17.4-mips/arch/mips/configs/ev64120_defconfig 2006-07-06 16:58:16.000000000 -0700
|
---|
| 166 | @@ -68,6 +68,7 @@
|
---|
| 167 | CONFIG_GENERIC_FIND_NEXT_BIT=y
|
---|
| 168 | CONFIG_GENERIC_HWEIGHT=y
|
---|
| 169 | CONFIG_GENERIC_CALIBRATE_DELAY=y
|
---|
| 170 | +CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y
|
---|
| 171 | CONFIG_DMA_NONCOHERENT=y
|
---|
| 172 | CONFIG_DMA_NEED_PCI_MAP_STATE=y
|
---|
| 173 | CONFIG_CPU_BIG_ENDIAN=y
|
---|
| 174 | diff -Naur linux-2.6.17.4-kernel/arch/mips/configs/ev96100_defconfig linux-2.6.17.4-mips/arch/mips/configs/ev96100_defconfig
|
---|
| 175 | --- linux-2.6.17.4-kernel/arch/mips/configs/ev96100_defconfig 2006-07-06 13:02:28.000000000 -0700
|
---|
| 176 | +++ linux-2.6.17.4-mips/arch/mips/configs/ev96100_defconfig 2006-07-06 16:58:16.000000000 -0700
|
---|
| 177 | @@ -67,6 +67,7 @@
|
---|
| 178 | CONFIG_GENERIC_FIND_NEXT_BIT=y
|
---|
| 179 | CONFIG_GENERIC_HWEIGHT=y
|
---|
| 180 | CONFIG_GENERIC_CALIBRATE_DELAY=y
|
---|
| 181 | +CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y
|
---|
| 182 | CONFIG_DMA_NONCOHERENT=y
|
---|
| 183 | CONFIG_DMA_NEED_PCI_MAP_STATE=y
|
---|
| 184 | CONFIG_CPU_BIG_ENDIAN=y
|
---|
| 185 | diff -Naur linux-2.6.17.4-kernel/arch/mips/configs/ip22_defconfig linux-2.6.17.4-mips/arch/mips/configs/ip22_defconfig
|
---|
| 186 | --- linux-2.6.17.4-kernel/arch/mips/configs/ip22_defconfig 2006-07-06 13:02:28.000000000 -0700
|
---|
| 187 | +++ linux-2.6.17.4-mips/arch/mips/configs/ip22_defconfig 2006-07-06 16:58:16.000000000 -0700
|
---|
| 188 | @@ -67,6 +67,7 @@
|
---|
| 189 | CONFIG_GENERIC_FIND_NEXT_BIT=y
|
---|
| 190 | CONFIG_GENERIC_HWEIGHT=y
|
---|
| 191 | CONFIG_GENERIC_CALIBRATE_DELAY=y
|
---|
| 192 | +CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y
|
---|
| 193 | CONFIG_ARC=y
|
---|
| 194 | CONFIG_DMA_NONCOHERENT=y
|
---|
| 195 | CONFIG_DMA_NEED_PCI_MAP_STATE=y
|
---|
| 196 | diff -Naur linux-2.6.17.4-kernel/arch/mips/configs/ip27_defconfig linux-2.6.17.4-mips/arch/mips/configs/ip27_defconfig
|
---|
| 197 | --- linux-2.6.17.4-kernel/arch/mips/configs/ip27_defconfig 2006-07-06 13:02:28.000000000 -0700
|
---|
| 198 | +++ linux-2.6.17.4-mips/arch/mips/configs/ip27_defconfig 2006-07-06 16:58:16.000000000 -0700
|
---|
| 199 | @@ -73,6 +73,7 @@
|
---|
| 200 | CONFIG_GENERIC_FIND_NEXT_BIT=y
|
---|
| 201 | CONFIG_GENERIC_HWEIGHT=y
|
---|
| 202 | CONFIG_GENERIC_CALIBRATE_DELAY=y
|
---|
| 203 | +CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y
|
---|
| 204 | CONFIG_ARC=y
|
---|
| 205 | CONFIG_DMA_IP27=y
|
---|
| 206 | CONFIG_CPU_BIG_ENDIAN=y
|
---|
| 207 | diff -Naur linux-2.6.17.4-kernel/arch/mips/configs/ip32_defconfig linux-2.6.17.4-mips/arch/mips/configs/ip32_defconfig
|
---|
| 208 | --- linux-2.6.17.4-kernel/arch/mips/configs/ip32_defconfig 2006-07-06 13:02:28.000000000 -0700
|
---|
| 209 | +++ linux-2.6.17.4-mips/arch/mips/configs/ip32_defconfig 2006-07-06 16:58:16.000000000 -0700
|
---|
| 210 | @@ -67,6 +67,7 @@
|
---|
| 211 | CONFIG_GENERIC_FIND_NEXT_BIT=y
|
---|
| 212 | CONFIG_GENERIC_HWEIGHT=y
|
---|
| 213 | CONFIG_GENERIC_CALIBRATE_DELAY=y
|
---|
| 214 | +CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y
|
---|
| 215 | CONFIG_ARC=y
|
---|
| 216 | CONFIG_DMA_IP32=y
|
---|
| 217 | CONFIG_DMA_NONCOHERENT=y
|
---|
| 218 | diff -Naur linux-2.6.17.4-kernel/arch/mips/configs/it8172_defconfig linux-2.6.17.4-mips/arch/mips/configs/it8172_defconfig
|
---|
| 219 | --- linux-2.6.17.4-kernel/arch/mips/configs/it8172_defconfig 2006-07-06 13:02:28.000000000 -0700
|
---|
| 220 | +++ linux-2.6.17.4-mips/arch/mips/configs/it8172_defconfig 2006-07-06 16:58:16.000000000 -0700
|
---|
| 221 | @@ -68,6 +68,7 @@
|
---|
| 222 | CONFIG_GENERIC_FIND_NEXT_BIT=y
|
---|
| 223 | CONFIG_GENERIC_HWEIGHT=y
|
---|
| 224 | CONFIG_GENERIC_CALIBRATE_DELAY=y
|
---|
| 225 | +CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y
|
---|
| 226 | CONFIG_DMA_NONCOHERENT=y
|
---|
| 227 | CONFIG_DMA_NEED_PCI_MAP_STATE=y
|
---|
| 228 | # CONFIG_CPU_BIG_ENDIAN is not set
|
---|
| 229 | diff -Naur linux-2.6.17.4-kernel/arch/mips/configs/ivr_defconfig linux-2.6.17.4-mips/arch/mips/configs/ivr_defconfig
|
---|
| 230 | --- linux-2.6.17.4-kernel/arch/mips/configs/ivr_defconfig 2006-07-06 13:02:28.000000000 -0700
|
---|
| 231 | +++ linux-2.6.17.4-mips/arch/mips/configs/ivr_defconfig 2006-07-06 16:58:16.000000000 -0700
|
---|
| 232 | @@ -67,6 +67,7 @@
|
---|
| 233 | CONFIG_GENERIC_FIND_NEXT_BIT=y
|
---|
| 234 | CONFIG_GENERIC_HWEIGHT=y
|
---|
| 235 | CONFIG_GENERIC_CALIBRATE_DELAY=y
|
---|
| 236 | +CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y
|
---|
| 237 | CONFIG_DMA_NONCOHERENT=y
|
---|
| 238 | CONFIG_DMA_NEED_PCI_MAP_STATE=y
|
---|
| 239 | # CONFIG_CPU_BIG_ENDIAN is not set
|
---|
| 240 | diff -Naur linux-2.6.17.4-kernel/arch/mips/configs/jaguar-atx_defconfig linux-2.6.17.4-mips/arch/mips/configs/jaguar-atx_defconfig
|
---|
| 241 | --- linux-2.6.17.4-kernel/arch/mips/configs/jaguar-atx_defconfig 2006-07-06 13:02:28.000000000 -0700
|
---|
| 242 | +++ linux-2.6.17.4-mips/arch/mips/configs/jaguar-atx_defconfig 2006-07-06 16:58:16.000000000 -0700
|
---|
| 243 | @@ -68,6 +68,7 @@
|
---|
| 244 | CONFIG_GENERIC_FIND_NEXT_BIT=y
|
---|
| 245 | CONFIG_GENERIC_HWEIGHT=y
|
---|
| 246 | CONFIG_GENERIC_CALIBRATE_DELAY=y
|
---|
| 247 | +CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y
|
---|
| 248 | CONFIG_DMA_NONCOHERENT=y
|
---|
| 249 | CONFIG_DMA_NEED_PCI_MAP_STATE=y
|
---|
| 250 | CONFIG_LIMITED_DMA=y
|
---|
| 251 | diff -Naur linux-2.6.17.4-kernel/arch/mips/configs/jmr3927_defconfig linux-2.6.17.4-mips/arch/mips/configs/jmr3927_defconfig
|
---|
| 252 | --- linux-2.6.17.4-kernel/arch/mips/configs/jmr3927_defconfig 2006-07-06 13:02:28.000000000 -0700
|
---|
| 253 | +++ linux-2.6.17.4-mips/arch/mips/configs/jmr3927_defconfig 2006-07-06 16:58:16.000000000 -0700
|
---|
| 254 | @@ -67,6 +67,7 @@
|
---|
| 255 | CONFIG_GENERIC_FIND_NEXT_BIT=y
|
---|
| 256 | CONFIG_GENERIC_HWEIGHT=y
|
---|
| 257 | CONFIG_GENERIC_CALIBRATE_DELAY=y
|
---|
| 258 | +CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y
|
---|
| 259 | CONFIG_DMA_NONCOHERENT=y
|
---|
| 260 | CONFIG_DMA_NEED_PCI_MAP_STATE=y
|
---|
| 261 | CONFIG_CPU_BIG_ENDIAN=y
|
---|
| 262 | diff -Naur linux-2.6.17.4-kernel/arch/mips/configs/lasat200_defconfig linux-2.6.17.4-mips/arch/mips/configs/lasat200_defconfig
|
---|
| 263 | --- linux-2.6.17.4-kernel/arch/mips/configs/lasat200_defconfig 2006-07-06 13:02:28.000000000 -0700
|
---|
| 264 | +++ linux-2.6.17.4-mips/arch/mips/configs/lasat200_defconfig 2006-07-06 16:58:16.000000000 -0700
|
---|
| 265 | @@ -71,6 +71,7 @@
|
---|
| 266 | CONFIG_GENERIC_FIND_NEXT_BIT=y
|
---|
| 267 | CONFIG_GENERIC_HWEIGHT=y
|
---|
| 268 | CONFIG_GENERIC_CALIBRATE_DELAY=y
|
---|
| 269 | +CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y
|
---|
| 270 | CONFIG_DMA_NONCOHERENT=y
|
---|
| 271 | CONFIG_DMA_NEED_PCI_MAP_STATE=y
|
---|
| 272 | CONFIG_MIPS_NILE4=y
|
---|
| 273 | diff -Naur linux-2.6.17.4-kernel/arch/mips/configs/malta_defconfig linux-2.6.17.4-mips/arch/mips/configs/malta_defconfig
|
---|
| 274 | --- linux-2.6.17.4-kernel/arch/mips/configs/malta_defconfig 2006-07-06 13:02:28.000000000 -0700
|
---|
| 275 | +++ linux-2.6.17.4-mips/arch/mips/configs/malta_defconfig 2006-07-06 16:58:16.000000000 -0700
|
---|
| 276 | @@ -67,6 +67,7 @@
|
---|
| 277 | CONFIG_GENERIC_FIND_NEXT_BIT=y
|
---|
| 278 | CONFIG_GENERIC_HWEIGHT=y
|
---|
| 279 | CONFIG_GENERIC_CALIBRATE_DELAY=y
|
---|
| 280 | +CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y
|
---|
| 281 | CONFIG_ARCH_MAY_HAVE_PC_FDC=y
|
---|
| 282 | CONFIG_DMA_NONCOHERENT=y
|
---|
| 283 | CONFIG_DMA_NEED_PCI_MAP_STATE=y
|
---|
| 284 | diff -Naur linux-2.6.17.4-kernel/arch/mips/configs/mipssim_defconfig linux-2.6.17.4-mips/arch/mips/configs/mipssim_defconfig
|
---|
| 285 | --- linux-2.6.17.4-kernel/arch/mips/configs/mipssim_defconfig 2006-07-06 13:02:28.000000000 -0700
|
---|
| 286 | +++ linux-2.6.17.4-mips/arch/mips/configs/mipssim_defconfig 2006-07-06 16:58:16.000000000 -0700
|
---|
| 287 | @@ -67,6 +67,7 @@
|
---|
| 288 | CONFIG_GENERIC_FIND_NEXT_BIT=y
|
---|
| 289 | CONFIG_GENERIC_HWEIGHT=y
|
---|
| 290 | CONFIG_GENERIC_CALIBRATE_DELAY=y
|
---|
| 291 | +CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y
|
---|
| 292 | CONFIG_DMA_NONCOHERENT=y
|
---|
| 293 | CONFIG_DMA_NEED_PCI_MAP_STATE=y
|
---|
| 294 | # CONFIG_CPU_BIG_ENDIAN is not set
|
---|
| 295 | diff -Naur linux-2.6.17.4-kernel/arch/mips/configs/mpc30x_defconfig linux-2.6.17.4-mips/arch/mips/configs/mpc30x_defconfig
|
---|
| 296 | --- linux-2.6.17.4-kernel/arch/mips/configs/mpc30x_defconfig 2006-07-06 13:02:28.000000000 -0700
|
---|
| 297 | +++ linux-2.6.17.4-mips/arch/mips/configs/mpc30x_defconfig 2006-07-06 16:58:16.000000000 -0700
|
---|
| 298 | @@ -75,6 +75,7 @@
|
---|
| 299 | CONFIG_GENERIC_FIND_NEXT_BIT=y
|
---|
| 300 | CONFIG_GENERIC_HWEIGHT=y
|
---|
| 301 | CONFIG_GENERIC_CALIBRATE_DELAY=y
|
---|
| 302 | +CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y
|
---|
| 303 | CONFIG_DMA_NONCOHERENT=y
|
---|
| 304 | CONFIG_DMA_NEED_PCI_MAP_STATE=y
|
---|
| 305 | # CONFIG_CPU_BIG_ENDIAN is not set
|
---|
| 306 | diff -Naur linux-2.6.17.4-kernel/arch/mips/configs/ocelot_3_defconfig linux-2.6.17.4-mips/arch/mips/configs/ocelot_3_defconfig
|
---|
| 307 | --- linux-2.6.17.4-kernel/arch/mips/configs/ocelot_3_defconfig 2006-07-06 13:02:28.000000000 -0700
|
---|
| 308 | +++ linux-2.6.17.4-mips/arch/mips/configs/ocelot_3_defconfig 2006-07-06 16:58:16.000000000 -0700
|
---|
| 309 | @@ -67,6 +67,7 @@
|
---|
| 310 | CONFIG_GENERIC_FIND_NEXT_BIT=y
|
---|
| 311 | CONFIG_GENERIC_HWEIGHT=y
|
---|
| 312 | CONFIG_GENERIC_CALIBRATE_DELAY=y
|
---|
| 313 | +CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y
|
---|
| 314 | CONFIG_DMA_NONCOHERENT=y
|
---|
| 315 | CONFIG_DMA_NEED_PCI_MAP_STATE=y
|
---|
| 316 | CONFIG_CPU_BIG_ENDIAN=y
|
---|
| 317 | diff -Naur linux-2.6.17.4-kernel/arch/mips/configs/ocelot_c_defconfig linux-2.6.17.4-mips/arch/mips/configs/ocelot_c_defconfig
|
---|
| 318 | --- linux-2.6.17.4-kernel/arch/mips/configs/ocelot_c_defconfig 2006-07-06 13:02:28.000000000 -0700
|
---|
| 319 | +++ linux-2.6.17.4-mips/arch/mips/configs/ocelot_c_defconfig 2006-07-06 16:58:16.000000000 -0700
|
---|
| 320 | @@ -67,6 +67,7 @@
|
---|
| 321 | CONFIG_GENERIC_FIND_NEXT_BIT=y
|
---|
| 322 | CONFIG_GENERIC_HWEIGHT=y
|
---|
| 323 | CONFIG_GENERIC_CALIBRATE_DELAY=y
|
---|
| 324 | +CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y
|
---|
| 325 | CONFIG_DMA_NONCOHERENT=y
|
---|
| 326 | CONFIG_DMA_NEED_PCI_MAP_STATE=y
|
---|
| 327 | CONFIG_CPU_BIG_ENDIAN=y
|
---|
| 328 | diff -Naur linux-2.6.17.4-kernel/arch/mips/configs/ocelot_defconfig linux-2.6.17.4-mips/arch/mips/configs/ocelot_defconfig
|
---|
| 329 | --- linux-2.6.17.4-kernel/arch/mips/configs/ocelot_defconfig 2006-07-06 13:02:28.000000000 -0700
|
---|
| 330 | +++ linux-2.6.17.4-mips/arch/mips/configs/ocelot_defconfig 2006-07-06 16:58:16.000000000 -0700
|
---|
| 331 | @@ -67,6 +67,7 @@
|
---|
| 332 | CONFIG_GENERIC_FIND_NEXT_BIT=y
|
---|
| 333 | CONFIG_GENERIC_HWEIGHT=y
|
---|
| 334 | CONFIG_GENERIC_CALIBRATE_DELAY=y
|
---|
| 335 | +CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y
|
---|
| 336 | CONFIG_DMA_NONCOHERENT=y
|
---|
| 337 | CONFIG_DMA_NEED_PCI_MAP_STATE=y
|
---|
| 338 | CONFIG_CPU_BIG_ENDIAN=y
|
---|
| 339 | diff -Naur linux-2.6.17.4-kernel/arch/mips/configs/ocelot_g_defconfig linux-2.6.17.4-mips/arch/mips/configs/ocelot_g_defconfig
|
---|
| 340 | --- linux-2.6.17.4-kernel/arch/mips/configs/ocelot_g_defconfig 2006-07-06 13:02:28.000000000 -0700
|
---|
| 341 | +++ linux-2.6.17.4-mips/arch/mips/configs/ocelot_g_defconfig 2006-07-06 16:58:16.000000000 -0700
|
---|
| 342 | @@ -67,6 +67,7 @@
|
---|
| 343 | CONFIG_GENERIC_FIND_NEXT_BIT=y
|
---|
| 344 | CONFIG_GENERIC_HWEIGHT=y
|
---|
| 345 | CONFIG_GENERIC_CALIBRATE_DELAY=y
|
---|
| 346 | +CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y
|
---|
| 347 | CONFIG_DMA_NONCOHERENT=y
|
---|
| 348 | CONFIG_DMA_NEED_PCI_MAP_STATE=y
|
---|
| 349 | CONFIG_CPU_BIG_ENDIAN=y
|
---|
| 350 | diff -Naur linux-2.6.17.4-kernel/arch/mips/configs/pb1100_defconfig linux-2.6.17.4-mips/arch/mips/configs/pb1100_defconfig
|
---|
| 351 | --- linux-2.6.17.4-kernel/arch/mips/configs/pb1100_defconfig 2006-07-06 13:02:28.000000000 -0700
|
---|
| 352 | +++ linux-2.6.17.4-mips/arch/mips/configs/pb1100_defconfig 2006-07-06 16:58:16.000000000 -0700
|
---|
| 353 | @@ -67,6 +67,7 @@
|
---|
| 354 | CONFIG_GENERIC_FIND_NEXT_BIT=y
|
---|
| 355 | CONFIG_GENERIC_HWEIGHT=y
|
---|
| 356 | CONFIG_GENERIC_CALIBRATE_DELAY=y
|
---|
| 357 | +CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y
|
---|
| 358 | CONFIG_DMA_NONCOHERENT=y
|
---|
| 359 | CONFIG_DMA_NEED_PCI_MAP_STATE=y
|
---|
| 360 | # CONFIG_CPU_BIG_ENDIAN is not set
|
---|
| 361 | diff -Naur linux-2.6.17.4-kernel/arch/mips/configs/pb1500_defconfig linux-2.6.17.4-mips/arch/mips/configs/pb1500_defconfig
|
---|
| 362 | --- linux-2.6.17.4-kernel/arch/mips/configs/pb1500_defconfig 2006-07-06 13:02:28.000000000 -0700
|
---|
| 363 | +++ linux-2.6.17.4-mips/arch/mips/configs/pb1500_defconfig 2006-07-06 16:58:16.000000000 -0700
|
---|
| 364 | @@ -67,6 +67,7 @@
|
---|
| 365 | CONFIG_GENERIC_FIND_NEXT_BIT=y
|
---|
| 366 | CONFIG_GENERIC_HWEIGHT=y
|
---|
| 367 | CONFIG_GENERIC_CALIBRATE_DELAY=y
|
---|
| 368 | +CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y
|
---|
| 369 | CONFIG_DMA_NONCOHERENT=y
|
---|
| 370 | CONFIG_DMA_NEED_PCI_MAP_STATE=y
|
---|
| 371 | # CONFIG_CPU_BIG_ENDIAN is not set
|
---|
| 372 | diff -Naur linux-2.6.17.4-kernel/arch/mips/configs/pb1550_defconfig linux-2.6.17.4-mips/arch/mips/configs/pb1550_defconfig
|
---|
| 373 | --- linux-2.6.17.4-kernel/arch/mips/configs/pb1550_defconfig 2006-07-06 13:02:28.000000000 -0700
|
---|
| 374 | +++ linux-2.6.17.4-mips/arch/mips/configs/pb1550_defconfig 2006-07-06 16:58:16.000000000 -0700
|
---|
| 375 | @@ -67,6 +67,7 @@
|
---|
| 376 | CONFIG_GENERIC_FIND_NEXT_BIT=y
|
---|
| 377 | CONFIG_GENERIC_HWEIGHT=y
|
---|
| 378 | CONFIG_GENERIC_CALIBRATE_DELAY=y
|
---|
| 379 | +CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y
|
---|
| 380 | CONFIG_DMA_NONCOHERENT=y
|
---|
| 381 | CONFIG_DMA_NEED_PCI_MAP_STATE=y
|
---|
| 382 | CONFIG_MIPS_DISABLE_OBSOLETE_IDE=y
|
---|
| 383 | diff -Naur linux-2.6.17.4-kernel/arch/mips/configs/pnx8550-jbs_defconfig linux-2.6.17.4-mips/arch/mips/configs/pnx8550-jbs_defconfig
|
---|
| 384 | --- linux-2.6.17.4-kernel/arch/mips/configs/pnx8550-jbs_defconfig 2006-07-06 13:02:28.000000000 -0700
|
---|
| 385 | +++ linux-2.6.17.4-mips/arch/mips/configs/pnx8550-jbs_defconfig 2006-07-06 16:58:16.000000000 -0700
|
---|
| 386 | @@ -67,6 +67,7 @@
|
---|
| 387 | CONFIG_GENERIC_FIND_NEXT_BIT=y
|
---|
| 388 | CONFIG_GENERIC_HWEIGHT=y
|
---|
| 389 | CONFIG_GENERIC_CALIBRATE_DELAY=y
|
---|
| 390 | +CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y
|
---|
| 391 | CONFIG_DMA_NONCOHERENT=y
|
---|
| 392 | CONFIG_DMA_NEED_PCI_MAP_STATE=y
|
---|
| 393 | # CONFIG_CPU_BIG_ENDIAN is not set
|
---|
| 394 | diff -Naur linux-2.6.17.4-kernel/arch/mips/configs/pnx8550-v2pci_defconfig linux-2.6.17.4-mips/arch/mips/configs/pnx8550-v2pci_defconfig
|
---|
| 395 | --- linux-2.6.17.4-kernel/arch/mips/configs/pnx8550-v2pci_defconfig 2006-07-06 13:02:28.000000000 -0700
|
---|
| 396 | +++ linux-2.6.17.4-mips/arch/mips/configs/pnx8550-v2pci_defconfig 2006-07-06 16:58:16.000000000 -0700
|
---|
| 397 | @@ -67,6 +67,7 @@
|
---|
| 398 | CONFIG_GENERIC_FIND_NEXT_BIT=y
|
---|
| 399 | CONFIG_GENERIC_HWEIGHT=y
|
---|
| 400 | CONFIG_GENERIC_CALIBRATE_DELAY=y
|
---|
| 401 | +CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y
|
---|
| 402 | CONFIG_DMA_NONCOHERENT=y
|
---|
| 403 | CONFIG_DMA_NEED_PCI_MAP_STATE=y
|
---|
| 404 | # CONFIG_CPU_BIG_ENDIAN is not set
|
---|
| 405 | diff -Naur linux-2.6.17.4-kernel/arch/mips/configs/qemu_defconfig linux-2.6.17.4-mips/arch/mips/configs/qemu_defconfig
|
---|
| 406 | --- linux-2.6.17.4-kernel/arch/mips/configs/qemu_defconfig 2006-07-06 13:02:28.000000000 -0700
|
---|
| 407 | +++ linux-2.6.17.4-mips/arch/mips/configs/qemu_defconfig 2006-07-06 16:58:16.000000000 -0700
|
---|
| 408 | @@ -67,6 +67,7 @@
|
---|
| 409 | CONFIG_GENERIC_FIND_NEXT_BIT=y
|
---|
| 410 | CONFIG_GENERIC_HWEIGHT=y
|
---|
| 411 | CONFIG_GENERIC_CALIBRATE_DELAY=y
|
---|
| 412 | +CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y
|
---|
| 413 | CONFIG_DMA_COHERENT=y
|
---|
| 414 | CONFIG_GENERIC_ISA_DMA=y
|
---|
| 415 | CONFIG_I8259=y
|
---|
| 416 | diff -Naur linux-2.6.17.4-kernel/arch/mips/configs/rbhma4500_defconfig linux-2.6.17.4-mips/arch/mips/configs/rbhma4500_defconfig
|
---|
| 417 | --- linux-2.6.17.4-kernel/arch/mips/configs/rbhma4500_defconfig 2006-07-06 13:02:28.000000000 -0700
|
---|
| 418 | +++ linux-2.6.17.4-mips/arch/mips/configs/rbhma4500_defconfig 2006-07-06 16:58:16.000000000 -0700
|
---|
| 419 | @@ -74,6 +74,7 @@
|
---|
| 420 | CONFIG_GENERIC_FIND_NEXT_BIT=y
|
---|
| 421 | CONFIG_GENERIC_HWEIGHT=y
|
---|
| 422 | CONFIG_GENERIC_CALIBRATE_DELAY=y
|
---|
| 423 | +CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y
|
---|
| 424 | CONFIG_DMA_NONCOHERENT=y
|
---|
| 425 | CONFIG_DMA_NEED_PCI_MAP_STATE=y
|
---|
| 426 | CONFIG_GENERIC_ISA_DMA=y
|
---|
| 427 | diff -Naur linux-2.6.17.4-kernel/arch/mips/configs/rm200_defconfig linux-2.6.17.4-mips/arch/mips/configs/rm200_defconfig
|
---|
| 428 | --- linux-2.6.17.4-kernel/arch/mips/configs/rm200_defconfig 2006-07-06 13:02:28.000000000 -0700
|
---|
| 429 | +++ linux-2.6.17.4-mips/arch/mips/configs/rm200_defconfig 2006-07-06 16:58:16.000000000 -0700
|
---|
| 430 | @@ -67,6 +67,7 @@
|
---|
| 431 | CONFIG_GENERIC_FIND_NEXT_BIT=y
|
---|
| 432 | CONFIG_GENERIC_HWEIGHT=y
|
---|
| 433 | CONFIG_GENERIC_CALIBRATE_DELAY=y
|
---|
| 434 | +CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y
|
---|
| 435 | CONFIG_ARC=y
|
---|
| 436 | CONFIG_ARCH_MAY_HAVE_PC_FDC=y
|
---|
| 437 | CONFIG_DMA_NONCOHERENT=y
|
---|
| 438 | diff -Naur linux-2.6.17.4-kernel/arch/mips/configs/sb1250-swarm_defconfig linux-2.6.17.4-mips/arch/mips/configs/sb1250-swarm_defconfig
|
---|
| 439 | --- linux-2.6.17.4-kernel/arch/mips/configs/sb1250-swarm_defconfig 2006-07-06 13:02:28.000000000 -0700
|
---|
| 440 | +++ linux-2.6.17.4-mips/arch/mips/configs/sb1250-swarm_defconfig 2006-07-06 16:58:16.000000000 -0700
|
---|
| 441 | @@ -84,6 +84,7 @@
|
---|
| 442 | CONFIG_GENERIC_FIND_NEXT_BIT=y
|
---|
| 443 | CONFIG_GENERIC_HWEIGHT=y
|
---|
| 444 | CONFIG_GENERIC_CALIBRATE_DELAY=y
|
---|
| 445 | +CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y
|
---|
| 446 | CONFIG_DMA_COHERENT=y
|
---|
| 447 | CONFIG_CPU_BIG_ENDIAN=y
|
---|
| 448 | # CONFIG_CPU_LITTLE_ENDIAN is not set
|
---|
| 449 | diff -Naur linux-2.6.17.4-kernel/arch/mips/configs/sead_defconfig linux-2.6.17.4-mips/arch/mips/configs/sead_defconfig
|
---|
| 450 | --- linux-2.6.17.4-kernel/arch/mips/configs/sead_defconfig 2006-07-06 13:02:28.000000000 -0700
|
---|
| 451 | +++ linux-2.6.17.4-mips/arch/mips/configs/sead_defconfig 2006-07-06 16:58:16.000000000 -0700
|
---|
| 452 | @@ -67,6 +67,7 @@
|
---|
| 453 | CONFIG_GENERIC_FIND_NEXT_BIT=y
|
---|
| 454 | CONFIG_GENERIC_HWEIGHT=y
|
---|
| 455 | CONFIG_GENERIC_CALIBRATE_DELAY=y
|
---|
| 456 | +CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y
|
---|
| 457 | CONFIG_DMA_NONCOHERENT=y
|
---|
| 458 | CONFIG_DMA_NEED_PCI_MAP_STATE=y
|
---|
| 459 | # CONFIG_CPU_BIG_ENDIAN is not set
|
---|
| 460 | diff -Naur linux-2.6.17.4-kernel/arch/mips/configs/tb0226_defconfig linux-2.6.17.4-mips/arch/mips/configs/tb0226_defconfig
|
---|
| 461 | --- linux-2.6.17.4-kernel/arch/mips/configs/tb0226_defconfig 2006-07-06 13:02:28.000000000 -0700
|
---|
| 462 | +++ linux-2.6.17.4-mips/arch/mips/configs/tb0226_defconfig 2006-07-06 16:58:16.000000000 -0700
|
---|
| 463 | @@ -77,6 +77,7 @@
|
---|
| 464 | CONFIG_GENERIC_FIND_NEXT_BIT=y
|
---|
| 465 | CONFIG_GENERIC_HWEIGHT=y
|
---|
| 466 | CONFIG_GENERIC_CALIBRATE_DELAY=y
|
---|
| 467 | +CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y
|
---|
| 468 | CONFIG_DMA_NONCOHERENT=y
|
---|
| 469 | CONFIG_DMA_NEED_PCI_MAP_STATE=y
|
---|
| 470 | # CONFIG_CPU_BIG_ENDIAN is not set
|
---|
| 471 | diff -Naur linux-2.6.17.4-kernel/arch/mips/configs/tb0229_defconfig linux-2.6.17.4-mips/arch/mips/configs/tb0229_defconfig
|
---|
| 472 | --- linux-2.6.17.4-kernel/arch/mips/configs/tb0229_defconfig 2006-07-06 13:02:28.000000000 -0700
|
---|
| 473 | +++ linux-2.6.17.4-mips/arch/mips/configs/tb0229_defconfig 2006-07-06 16:58:16.000000000 -0700
|
---|
| 474 | @@ -77,6 +77,7 @@
|
---|
| 475 | CONFIG_GENERIC_FIND_NEXT_BIT=y
|
---|
| 476 | CONFIG_GENERIC_HWEIGHT=y
|
---|
| 477 | CONFIG_GENERIC_CALIBRATE_DELAY=y
|
---|
| 478 | +CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y
|
---|
| 479 | CONFIG_DMA_NONCOHERENT=y
|
---|
| 480 | CONFIG_DMA_NEED_PCI_MAP_STATE=y
|
---|
| 481 | # CONFIG_CPU_BIG_ENDIAN is not set
|
---|
| 482 | diff -Naur linux-2.6.17.4-kernel/arch/mips/configs/workpad_defconfig linux-2.6.17.4-mips/arch/mips/configs/workpad_defconfig
|
---|
| 483 | --- linux-2.6.17.4-kernel/arch/mips/configs/workpad_defconfig 2006-07-06 13:02:28.000000000 -0700
|
---|
| 484 | +++ linux-2.6.17.4-mips/arch/mips/configs/workpad_defconfig 2006-07-06 16:58:16.000000000 -0700
|
---|
| 485 | @@ -73,6 +73,7 @@
|
---|
| 486 | CONFIG_GENERIC_FIND_NEXT_BIT=y
|
---|
| 487 | CONFIG_GENERIC_HWEIGHT=y
|
---|
| 488 | CONFIG_GENERIC_CALIBRATE_DELAY=y
|
---|
| 489 | +CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y
|
---|
| 490 | CONFIG_DMA_NONCOHERENT=y
|
---|
| 491 | CONFIG_DMA_NEED_PCI_MAP_STATE=y
|
---|
| 492 | # CONFIG_CPU_BIG_ENDIAN is not set
|
---|
| 493 | diff -Naur linux-2.6.17.4-kernel/arch/mips/configs/yosemite_defconfig linux-2.6.17.4-mips/arch/mips/configs/yosemite_defconfig
|
---|
| 494 | --- linux-2.6.17.4-kernel/arch/mips/configs/yosemite_defconfig 2006-07-06 13:02:28.000000000 -0700
|
---|
| 495 | +++ linux-2.6.17.4-mips/arch/mips/configs/yosemite_defconfig 2006-07-06 16:58:16.000000000 -0700
|
---|
| 496 | @@ -68,6 +68,7 @@
|
---|
| 497 | CONFIG_GENERIC_FIND_NEXT_BIT=y
|
---|
| 498 | CONFIG_GENERIC_HWEIGHT=y
|
---|
| 499 | CONFIG_GENERIC_CALIBRATE_DELAY=y
|
---|
| 500 | +CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y
|
---|
| 501 | CONFIG_DMA_COHERENT=y
|
---|
| 502 | CONFIG_CPU_BIG_ENDIAN=y
|
---|
| 503 | # CONFIG_CPU_LITTLE_ENDIAN is not set
|
---|
| 504 | diff -Naur linux-2.6.17.4-kernel/arch/mips/defconfig linux-2.6.17.4-mips/arch/mips/defconfig
|
---|
| 505 | --- linux-2.6.17.4-kernel/arch/mips/defconfig 2006-07-06 13:02:28.000000000 -0700
|
---|
| 506 | +++ linux-2.6.17.4-mips/arch/mips/defconfig 2006-07-06 16:58:16.000000000 -0700
|
---|
| 507 | @@ -67,6 +67,7 @@
|
---|
| 508 | CONFIG_GENERIC_FIND_NEXT_BIT=y
|
---|
| 509 | CONFIG_GENERIC_HWEIGHT=y
|
---|
| 510 | CONFIG_GENERIC_CALIBRATE_DELAY=y
|
---|
| 511 | +CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y
|
---|
| 512 | CONFIG_ARC=y
|
---|
| 513 | CONFIG_DMA_NONCOHERENT=y
|
---|
| 514 | CONFIG_DMA_NEED_PCI_MAP_STATE=y
|
---|
| 515 | diff -Naur linux-2.6.17.4-kernel/arch/mips/Kconfig linux-2.6.17.4-mips/arch/mips/Kconfig
|
---|
| 516 | --- linux-2.6.17.4-kernel/arch/mips/Kconfig 2006-07-06 13:02:28.000000000 -0700
|
---|
| 517 | +++ linux-2.6.17.4-mips/arch/mips/Kconfig 2006-07-06 16:58:16.000000000 -0700
|
---|
| 518 | @@ -278,6 +278,7 @@
|
---|
| 519 | select SYS_SUPPORTS_64BIT_KERNEL
|
---|
| 520 | select SYS_SUPPORTS_BIG_ENDIAN
|
---|
| 521 | select SYS_SUPPORTS_LITTLE_ENDIAN
|
---|
| 522 | + select SYS_SUPPORTS_MULTITHREADING if EXPERIMENTAL
|
---|
| 523 | help
|
---|
| 524 | This enables support for the MIPS Technologies Atlas evaluation
|
---|
| 525 | board.
|
---|
| 526 | @@ -294,6 +295,7 @@
|
---|
| 527 | select I8259
|
---|
| 528 | select MIPS_BOARDS_GEN
|
---|
| 529 | select MIPS_BONITO64
|
---|
| 530 | + select MIPS_CPU_SCACHE
|
---|
| 531 | select MIPS_GT64120
|
---|
| 532 | select MIPS_MSC
|
---|
| 533 | select SWAP_IO_SPACE
|
---|
| 534 | @@ -306,6 +308,7 @@
|
---|
| 535 | select SYS_SUPPORTS_64BIT_KERNEL
|
---|
| 536 | select SYS_SUPPORTS_BIG_ENDIAN
|
---|
| 537 | select SYS_SUPPORTS_LITTLE_ENDIAN
|
---|
| 538 | + select SYS_SUPPORTS_MULTITHREADING
|
---|
| 539 | help
|
---|
| 540 | This enables support for the MIPS Technologies Malta evaluation
|
---|
| 541 | board.
|
---|
| 542 | @@ -438,11 +441,13 @@
|
---|
| 543 |
|
---|
| 544 | config PNX8550_V2PCI
|
---|
| 545 | bool "Philips PNX8550 based Viper2-PCI board"
|
---|
| 546 | + depends on BROKEN
|
---|
| 547 | select PNX8550
|
---|
| 548 | select SYS_SUPPORTS_LITTLE_ENDIAN
|
---|
| 549 |
|
---|
| 550 | config PNX8550_JBS
|
---|
| 551 | bool "Philips PNX8550 based JBS board"
|
---|
| 552 | + depends on BROKEN
|
---|
| 553 | select PNX8550
|
---|
| 554 | select SYS_SUPPORTS_LITTLE_ENDIAN
|
---|
| 555 |
|
---|
| 556 | @@ -506,8 +511,6 @@
|
---|
| 557 | config MACH_VR41XX
|
---|
| 558 | bool "NEC VR41XX-based machines"
|
---|
| 559 | select SYS_HAS_CPU_VR41XX
|
---|
| 560 | - select SYS_SUPPORTS_32BIT_KERNEL
|
---|
| 561 | - select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
|
---|
| 562 |
|
---|
| 563 | config PMC_YOSEMITE
|
---|
| 564 | bool "PMC-Sierra Yosemite eval board"
|
---|
| 565 | @@ -522,6 +525,7 @@
|
---|
| 566 | select SYS_SUPPORTS_64BIT_KERNEL
|
---|
| 567 | select SYS_SUPPORTS_BIG_ENDIAN
|
---|
| 568 | select SYS_SUPPORTS_HIGHMEM
|
---|
| 569 | + select SYS_SUPPORTS_SMP
|
---|
| 570 | help
|
---|
| 571 | Yosemite is an evaluation board for the RM9000x2 processor
|
---|
| 572 | manufactured by PMC-Sierra.
|
---|
| 573 | @@ -555,6 +559,7 @@
|
---|
| 574 | select HW_HAS_EISA
|
---|
| 575 | select IP22_CPU_SCACHE
|
---|
| 576 | select IRQ_CPU
|
---|
| 577 | + select NO_ISA if ISA
|
---|
| 578 | select SWAP_IO_SPACE
|
---|
| 579 | select SYS_HAS_CPU_R4X00
|
---|
| 580 | select SYS_HAS_CPU_R5000
|
---|
| 581 | @@ -577,6 +582,7 @@
|
---|
| 582 | select SYS_HAS_CPU_R10000
|
---|
| 583 | select SYS_SUPPORTS_64BIT_KERNEL
|
---|
| 584 | select SYS_SUPPORTS_BIG_ENDIAN
|
---|
| 585 | + select SYS_SUPPORTS_SMP
|
---|
| 586 | help
|
---|
| 587 | This are the SGI Origin 200, Origin 2000 and Onyx 2 Graphics
|
---|
| 588 | workstations. To compile a Linux kernel that runs on these, say Y
|
---|
| 589 | @@ -1035,6 +1041,9 @@
|
---|
| 590 | config HAVE_STD_PC_SERIAL_PORT
|
---|
| 591 | bool
|
---|
| 592 |
|
---|
| 593 | +config VR4181
|
---|
| 594 | + bool
|
---|
| 595 | +
|
---|
| 596 | config ARC_CONSOLE
|
---|
| 597 | bool "ARC console support"
|
---|
| 598 | depends on SGI_IP22 || SNI_RM200_PCI
|
---|
| 599 | @@ -1155,7 +1164,7 @@
|
---|
| 600 | select CPU_SUPPORTS_32BIT_KERNEL
|
---|
| 601 | select CPU_SUPPORTS_64BIT_KERNEL
|
---|
| 602 | help
|
---|
| 603 | - The options selects support for the NEC VR4100 series of processors.
|
---|
| 604 | + The options selects support for the NEC VR41xx series of processors.
|
---|
| 605 | Only choose this option if you have one of these processors as a
|
---|
| 606 | kernel built with this option will not run on any other type of
|
---|
| 607 | processor or vice versa.
|
---|
| 608 | @@ -1211,7 +1220,7 @@
|
---|
| 609 | select CPU_SUPPORTS_32BIT_KERNEL
|
---|
| 610 | help
|
---|
| 611 | MIPS Technologies R6000 and R6000A series processors. Note these
|
---|
| 612 | - processors are extremly rare and the support for them is incomplete.
|
---|
| 613 | + processors are extremely rare and the support for them is incomplete.
|
---|
| 614 |
|
---|
| 615 | config CPU_NEVADA
|
---|
| 616 | bool "RM52xx"
|
---|
| 617 | @@ -1332,7 +1341,7 @@
|
---|
| 618 | endmenu
|
---|
| 619 |
|
---|
| 620 | #
|
---|
| 621 | -# These two indicate any levelof the MIPS32 and MIPS64 architecture
|
---|
| 622 | +# These two indicate any level of the MIPS32 and MIPS64 architecture
|
---|
| 623 | #
|
---|
| 624 | config CPU_MIPS32
|
---|
| 625 | bool
|
---|
| 626 | @@ -1343,7 +1352,7 @@
|
---|
| 627 | default y if CPU_MIPS64_R1 || CPU_MIPS64_R2
|
---|
| 628 |
|
---|
| 629 | #
|
---|
| 630 | -# These two indicate the revision of the architecture, either 32 bot 64 bit.
|
---|
| 631 | +# These two indicate the revision of the architecture, either Release 1 or Release 2
|
---|
| 632 | #
|
---|
| 633 | config CPU_MIPSR1
|
---|
| 634 | bool
|
---|
| 635 | @@ -1436,6 +1445,13 @@
|
---|
| 636 | bool
|
---|
| 637 | select BOARD_SCACHE
|
---|
| 638 |
|
---|
| 639 | +#
|
---|
| 640 | +# Support for a MIPS32 / MIPS64 style S-caches
|
---|
| 641 | +#
|
---|
| 642 | +config MIPS_CPU_SCACHE
|
---|
| 643 | + bool
|
---|
| 644 | + select BOARD_SCACHE
|
---|
| 645 | +
|
---|
| 646 | config R5000_CPU_SCACHE
|
---|
| 647 | bool
|
---|
| 648 | select BOARD_SCACHE
|
---|
| 649 | @@ -1455,32 +1471,57 @@
|
---|
| 650 | config CPU_HAS_PREFETCH
|
---|
| 651 | bool
|
---|
| 652 |
|
---|
| 653 | -config MIPS_MT
|
---|
| 654 | - bool "Enable MIPS MT"
|
---|
| 655 | -
|
---|
| 656 | choice
|
---|
| 657 | prompt "MIPS MT options"
|
---|
| 658 | - depends on MIPS_MT
|
---|
| 659 | +
|
---|
| 660 | +config MIPS_MT_DISABLED
|
---|
| 661 | + bool "Disable multithreading support."
|
---|
| 662 | + help
|
---|
| 663 | + Use this option if your workload can't take advantage of
|
---|
| 664 | + MIPS hardware multithreading support. On systems that don't have
|
---|
| 665 | + the option of an MT-enabled processor this option will be the only
|
---|
| 666 | + option in this menu.
|
---|
| 667 |
|
---|
| 668 | config MIPS_MT_SMTC
|
---|
| 669 | bool "SMTC: Use all TCs on all VPEs for SMP"
|
---|
| 670 | + depends on CPU_MIPS32_R2
|
---|
| 671 | + #depends on CPU_MIPS64_R2 # once there is hardware ...
|
---|
| 672 | + depends on SYS_SUPPORTS_MULTITHREADING
|
---|
| 673 | select CPU_MIPSR2_IRQ_VI
|
---|
| 674 | select CPU_MIPSR2_SRS
|
---|
| 675 | + select MIPS_MT
|
---|
| 676 | select SMP
|
---|
| 677 | + help
|
---|
| 678 | + This is a kernel model which is known a SMTC or lately has been
|
---|
| 679 | + marketesed into SMVP.
|
---|
| 680 |
|
---|
| 681 | config MIPS_MT_SMP
|
---|
| 682 | bool "Use 1 TC on each available VPE for SMP"
|
---|
| 683 | + depends on SYS_SUPPORTS_MULTITHREADING
|
---|
| 684 | + select CPU_MIPSR2_IRQ_VI
|
---|
| 685 | + select CPU_MIPSR2_SRS
|
---|
| 686 | + select MIPS_MT
|
---|
| 687 | select SMP
|
---|
| 688 | + help
|
---|
| 689 | + This is a kernel model which is also known a VSMP or lately
|
---|
| 690 | + has been marketesed into SMVP.
|
---|
| 691 |
|
---|
| 692 | config MIPS_VPE_LOADER
|
---|
| 693 | bool "VPE loader support."
|
---|
| 694 | - depends on MIPS_MT
|
---|
| 695 | + depends on SYS_SUPPORTS_MULTITHREADING
|
---|
| 696 | + select MIPS_MT
|
---|
| 697 | help
|
---|
| 698 | Includes a loader for loading an elf relocatable object
|
---|
| 699 | onto another VPE and running it.
|
---|
| 700 |
|
---|
| 701 | endchoice
|
---|
| 702 |
|
---|
| 703 | +config MIPS_MT
|
---|
| 704 | + bool
|
---|
| 705 | +
|
---|
| 706 | +config SYS_SUPPORTS_MULTITHREADING
|
---|
| 707 | + bool
|
---|
| 708 | +
|
---|
| 709 | config MIPS_MT_FPAFF
|
---|
| 710 | bool "Dynamic FPU affinity for FP-intensive threads"
|
---|
| 711 | depends on MIPS_MT
|
---|
| 712 | @@ -1537,32 +1578,23 @@
|
---|
| 713 | config CPU_HAS_WB
|
---|
| 714 | bool
|
---|
| 715 |
|
---|
| 716 | +#
|
---|
| 717 | +# Vectored interrupt mode is an R2 feature
|
---|
| 718 | +#
|
---|
| 719 | config CPU_MIPSR2_IRQ_VI
|
---|
| 720 | - bool "Vectored interrupt mode"
|
---|
| 721 | - depends on CPU_MIPSR2
|
---|
| 722 | - help
|
---|
| 723 | - Vectored interrupt mode allowing faster dispatching of interrupts.
|
---|
| 724 | - The board support code needs to be written to take advantage of this
|
---|
| 725 | - mode. Compatibility code is included to allow the kernel to run on
|
---|
| 726 | - a CPU that does not support vectored interrupts. It's safe to
|
---|
| 727 | - say Y here.
|
---|
| 728 | + bool
|
---|
| 729 |
|
---|
| 730 | +#
|
---|
| 731 | +# Extended interrupt mode is an R2 feature
|
---|
| 732 | +#
|
---|
| 733 | config CPU_MIPSR2_IRQ_EI
|
---|
| 734 | - bool "External interrupt controller mode"
|
---|
| 735 | - depends on CPU_MIPSR2
|
---|
| 736 | - help
|
---|
| 737 | - Extended interrupt mode takes advantage of an external interrupt
|
---|
| 738 | - controller to allow fast dispatching from many possible interrupt
|
---|
| 739 | - sources. Say N unless you know that external interrupt support is
|
---|
| 740 | - required.
|
---|
| 741 | + bool
|
---|
| 742 |
|
---|
| 743 | +#
|
---|
| 744 | +# Shadow registers are an R2 feature
|
---|
| 745 | +#
|
---|
| 746 | config CPU_MIPSR2_SRS
|
---|
| 747 | - bool "Make shadow set registers available for interrupt handlers"
|
---|
| 748 | - depends on CPU_MIPSR2_IRQ_VI || CPU_MIPSR2_IRQ_EI
|
---|
| 749 | - help
|
---|
| 750 | - Allow the kernel to use shadow register sets for fast interrupts.
|
---|
| 751 | - Interrupt handlers must be specially written to use shadow sets.
|
---|
| 752 | - Say N unless you know that shadow register set upport is needed.
|
---|
| 753 | + bool
|
---|
| 754 |
|
---|
| 755 | config CPU_HAS_SYNC
|
---|
| 756 | bool
|
---|
| 757 | @@ -1616,8 +1648,8 @@
|
---|
| 758 |
|
---|
| 759 | config SMP
|
---|
| 760 | bool "Multi-Processing support"
|
---|
| 761 | - depends on CPU_RM9000 || ((SIBYTE_BCM1x80 || SIBYTE_BCM1x55 || SIBYTE_SB1250 || QEMU) && !SIBYTE_STANDALONE) || SGI_IP27 || MIPS_MT_SMP || MIPS_MT_SMTC
|
---|
| 762 | - ---help---
|
---|
| 763 | + depends on SYS_SUPPORTS_SMP
|
---|
| 764 | + help
|
---|
| 765 | This enables support for systems with more than one CPU. If you have
|
---|
| 766 | a system with only one CPU, like most personal computers, say N. If
|
---|
| 767 | you have a system with more than one CPU, say Y.
|
---|
| 768 | @@ -1636,6 +1668,9 @@
|
---|
| 769 |
|
---|
| 770 | If you don't know what to do here, say N.
|
---|
| 771 |
|
---|
| 772 | +config SYS_SUPPORTS_SMP
|
---|
| 773 | + bool
|
---|
| 774 | +
|
---|
| 775 | config NR_CPUS
|
---|
| 776 | int "Maximum number of CPUs (2-64)"
|
---|
| 777 | range 2 64
|
---|
| 778 | @@ -1710,6 +1745,9 @@
|
---|
| 779 | config ISA
|
---|
| 780 | bool
|
---|
| 781 |
|
---|
| 782 | +config NO_ISA
|
---|
| 783 | + bool
|
---|
| 784 | +
|
---|
| 785 | config EISA
|
---|
| 786 | bool "EISA support"
|
---|
| 787 | depends on HW_HAS_EISA
|
---|
| 788 | diff -Naur linux-2.6.17.4-kernel/arch/mips/kernel/cpu-probe.c linux-2.6.17.4-mips/arch/mips/kernel/cpu-probe.c
|
---|
| 789 | --- linux-2.6.17.4-kernel/arch/mips/kernel/cpu-probe.c 2006-07-06 13:02:28.000000000 -0700
|
---|
| 790 | +++ linux-2.6.17.4-mips/arch/mips/kernel/cpu-probe.c 2006-07-06 16:58:16.000000000 -0700
|
---|
| 791 | @@ -111,7 +111,6 @@
|
---|
| 792 | case CPU_R5000:
|
---|
| 793 | case CPU_NEVADA:
|
---|
| 794 | case CPU_RM7000:
|
---|
| 795 | - case CPU_RM9000:
|
---|
| 796 | case CPU_TX49XX:
|
---|
| 797 | case CPU_4KC:
|
---|
| 798 | case CPU_4KEC:
|
---|
| 799 | @@ -137,6 +136,14 @@
|
---|
| 800 | } else
|
---|
| 801 | printk(" unavailable.\n");
|
---|
| 802 | break;
|
---|
| 803 | + case CPU_RM9000:
|
---|
| 804 | + if ((c->processor_id & 0x00ff) >= 0x40) {
|
---|
| 805 | + cpu_wait = r4k_wait;
|
---|
| 806 | + printk(" available.\n");
|
---|
| 807 | + } else {
|
---|
| 808 | + printk(" unavailable.\n");
|
---|
| 809 | + }
|
---|
| 810 | + break;
|
---|
| 811 | default:
|
---|
| 812 | printk(" unavailable.\n");
|
---|
| 813 | break;
|
---|
| 814 | @@ -243,9 +250,15 @@
|
---|
| 815 | break;
|
---|
| 816 | case PRID_IMP_VR41XX:
|
---|
| 817 | switch (c->processor_id & 0xf0) {
|
---|
| 818 | +#ifndef CONFIG_VR4181
|
---|
| 819 | case PRID_REV_VR4111:
|
---|
| 820 | c->cputype = CPU_VR4111;
|
---|
| 821 | break;
|
---|
| 822 | +#else
|
---|
| 823 | + case PRID_REV_VR4181:
|
---|
| 824 | + c->cputype = CPU_VR4181;
|
---|
| 825 | + break;
|
---|
| 826 | +#endif
|
---|
| 827 | case PRID_REV_VR4121:
|
---|
| 828 | c->cputype = CPU_VR4121;
|
---|
| 829 | break;
|
---|
| 830 | @@ -597,8 +610,6 @@
|
---|
| 831 | break;
|
---|
| 832 | case PRID_IMP_25KF:
|
---|
| 833 | c->cputype = CPU_25KF;
|
---|
| 834 | - /* Probe for L2 cache */
|
---|
| 835 | - c->scache.flags &= ~MIPS_CACHE_NOT_PRESENT;
|
---|
| 836 | break;
|
---|
| 837 | case PRID_IMP_34K:
|
---|
| 838 | c->cputype = CPU_34K;
|
---|
| 839 | diff -Naur linux-2.6.17.4-kernel/arch/mips/kernel/entry.S linux-2.6.17.4-mips/arch/mips/kernel/entry.S
|
---|
| 840 | --- linux-2.6.17.4-kernel/arch/mips/kernel/entry.S 2006-07-06 13:02:28.000000000 -0700
|
---|
| 841 | +++ linux-2.6.17.4-mips/arch/mips/kernel/entry.S 2006-07-06 16:58:16.000000000 -0700
|
---|
| 842 | @@ -87,7 +87,7 @@
|
---|
| 843 | ori v1, v0, TCSTATUS_IXMT
|
---|
| 844 | mtc0 v1, CP0_TCSTATUS
|
---|
| 845 | andi v0, TCSTATUS_IXMT
|
---|
| 846 | - ehb
|
---|
| 847 | + _ehb
|
---|
| 848 | mfc0 t0, CP0_TCCONTEXT
|
---|
| 849 | DMT 9 # dmt t1
|
---|
| 850 | jal mips_ihb
|
---|
| 851 | @@ -95,7 +95,7 @@
|
---|
| 852 | andi t3, t0, 0xff00
|
---|
| 853 | or t2, t2, t3
|
---|
| 854 | mtc0 t2, CP0_STATUS
|
---|
| 855 | - ehb
|
---|
| 856 | + _ehb
|
---|
| 857 | andi t1, t1, VPECONTROL_TE
|
---|
| 858 | beqz t1, 1f
|
---|
| 859 | EMT
|
---|
| 860 | @@ -105,7 +105,7 @@
|
---|
| 861 | xori v1, v1, TCSTATUS_IXMT
|
---|
| 862 | or v1, v0, v1
|
---|
| 863 | mtc0 v1, CP0_TCSTATUS
|
---|
| 864 | - ehb
|
---|
| 865 | + _ehb
|
---|
| 866 | xor t0, t0, t3
|
---|
| 867 | mtc0 t0, CP0_TCCONTEXT
|
---|
| 868 | #endif /* CONFIG_MIPS_MT_SMTC */
|
---|
| 869 | diff -Naur linux-2.6.17.4-kernel/arch/mips/kernel/gdb-low.S linux-2.6.17.4-mips/arch/mips/kernel/gdb-low.S
|
---|
| 870 | --- linux-2.6.17.4-kernel/arch/mips/kernel/gdb-low.S 2006-07-06 13:02:28.000000000 -0700
|
---|
| 871 | +++ linux-2.6.17.4-mips/arch/mips/kernel/gdb-low.S 2006-07-06 16:58:16.000000000 -0700
|
---|
| 872 | @@ -291,7 +291,7 @@
|
---|
| 873 | ori t1, t2, TCSTATUS_IXMT
|
---|
| 874 | mtc0 t1, CP0_TCSTATUS
|
---|
| 875 | andi t2, t2, TCSTATUS_IXMT
|
---|
| 876 | - ehb
|
---|
| 877 | + _ehb
|
---|
| 878 | DMT 9 # dmt t1
|
---|
| 879 | jal mips_ihb
|
---|
| 880 | nop
|
---|
| 881 | @@ -310,7 +310,7 @@
|
---|
| 882 | xori t1, t1, TCSTATUS_IXMT
|
---|
| 883 | or t1, t1, t2
|
---|
| 884 | mtc0 t1, CP0_TCSTATUS
|
---|
| 885 | - ehb
|
---|
| 886 | + _ehb
|
---|
| 887 | #endif /* CONFIG_MIPS_MT_SMTC */
|
---|
| 888 | LONG_L v0, GDB_FR_STATUS(sp)
|
---|
| 889 | LONG_L v1, GDB_FR_EPC(sp)
|
---|
| 890 | diff -Naur linux-2.6.17.4-kernel/arch/mips/kernel/genex.S linux-2.6.17.4-mips/arch/mips/kernel/genex.S
|
---|
| 891 | --- linux-2.6.17.4-kernel/arch/mips/kernel/genex.S 2006-07-06 13:02:28.000000000 -0700
|
---|
| 892 | +++ linux-2.6.17.4-mips/arch/mips/kernel/genex.S 2006-07-06 16:58:16.000000000 -0700
|
---|
| 893 | @@ -214,7 +214,7 @@
|
---|
| 894 | mtc0 t0, CP0_TCCONTEXT
|
---|
| 895 | xor t1, t1, t0
|
---|
| 896 | mtc0 t1, CP0_STATUS
|
---|
| 897 | - ehb
|
---|
| 898 | + _ehb
|
---|
| 899 | #endif /* CONFIG_MIPS_MT_SMTC */
|
---|
| 900 | CLI
|
---|
| 901 | move a0, sp
|
---|
| 902 | diff -Naur linux-2.6.17.4-kernel/arch/mips/kernel/head.S linux-2.6.17.4-mips/arch/mips/kernel/head.S
|
---|
| 903 | --- linux-2.6.17.4-kernel/arch/mips/kernel/head.S 2006-07-06 13:02:28.000000000 -0700
|
---|
| 904 | +++ linux-2.6.17.4-mips/arch/mips/kernel/head.S 2006-07-06 16:58:16.000000000 -0700
|
---|
| 905 | @@ -96,7 +96,7 @@
|
---|
| 906 | /* Clear TKSU, leave IXMT */
|
---|
| 907 | xori t0, 0x00001800
|
---|
| 908 | mtc0 t0, CP0_TCSTATUS
|
---|
| 909 | - ehb
|
---|
| 910 | + _ehb
|
---|
| 911 | /* We need to leave the global IE bit set, but clear EXL...*/
|
---|
| 912 | mfc0 t0, CP0_STATUS
|
---|
| 913 | or t0, ST0_CU0 | ST0_EXL | ST0_ERL | \set | \clr
|
---|
| 914 | diff -Naur linux-2.6.17.4-kernel/arch/mips/kernel/ptrace.c linux-2.6.17.4-mips/arch/mips/kernel/ptrace.c
|
---|
| 915 | --- linux-2.6.17.4-kernel/arch/mips/kernel/ptrace.c 2006-07-06 13:02:28.000000000 -0700
|
---|
| 916 | +++ linux-2.6.17.4-mips/arch/mips/kernel/ptrace.c 2006-07-06 16:58:16.000000000 -0700
|
---|
| 917 | @@ -21,12 +21,12 @@
|
---|
| 918 | #include <linux/mm.h>
|
---|
| 919 | #include <linux/errno.h>
|
---|
| 920 | #include <linux/ptrace.h>
|
---|
| 921 | -#include <linux/audit.h>
|
---|
| 922 | #include <linux/smp.h>
|
---|
| 923 | #include <linux/smp_lock.h>
|
---|
| 924 | #include <linux/user.h>
|
---|
| 925 | #include <linux/security.h>
|
---|
| 926 | -#include <linux/signal.h>
|
---|
| 927 | +#include <linux/audit.h>
|
---|
| 928 | +#include <linux/seccomp.h>
|
---|
| 929 |
|
---|
| 930 | #include <asm/byteorder.h>
|
---|
| 931 | #include <asm/cpu.h>
|
---|
| 932 | @@ -482,12 +482,16 @@
|
---|
| 933 | */
|
---|
| 934 | asmlinkage void do_syscall_trace(struct pt_regs *regs, int entryexit)
|
---|
| 935 | {
|
---|
| 936 | + /* do the secure computing check first */
|
---|
| 937 | + secure_computing(regs->orig_eax);
|
---|
| 938 | +
|
---|
| 939 | if (unlikely(current->audit_context) && entryexit)
|
---|
| 940 | audit_syscall_exit(AUDITSC_RESULT(regs->regs[2]),
|
---|
| 941 | regs->regs[2]);
|
---|
| 942 |
|
---|
| 943 | if (!(current->ptrace & PT_PTRACED))
|
---|
| 944 | goto out;
|
---|
| 945 | +
|
---|
| 946 | if (!test_thread_flag(TIF_SYSCALL_TRACE))
|
---|
| 947 | goto out;
|
---|
| 948 |
|
---|
| 949 | @@ -505,9 +509,14 @@
|
---|
| 950 | send_sig(current->exit_code, current, 1);
|
---|
| 951 | current->exit_code = 0;
|
---|
| 952 | }
|
---|
| 953 | - out:
|
---|
| 954 | +
|
---|
| 955 | +out:
|
---|
| 956 | + /* There is no ->orig_eax and that's quite intensional for now making
|
---|
| 957 | + this work will require some work in various other place before it's
|
---|
| 958 | + more than a placebo. */
|
---|
| 959 | +
|
---|
| 960 | if (unlikely(current->audit_context) && !entryexit)
|
---|
| 961 | - audit_syscall_entry(audit_arch(), regs->regs[2],
|
---|
| 962 | - regs->regs[4], regs->regs[5],
|
---|
| 963 | - regs->regs[6], regs->regs[7]);
|
---|
| 964 | + audit_syscall_entry(audit_arch(), regs->orig_eax,
|
---|
| 965 | + regs->regs[4], regs->regs[5],
|
---|
| 966 | + regs->regs[6], regs->regs[7]);
|
---|
| 967 | }
|
---|
| 968 | diff -Naur linux-2.6.17.4-kernel/arch/mips/kernel/r4k_switch.S linux-2.6.17.4-mips/arch/mips/kernel/r4k_switch.S
|
---|
| 969 | --- linux-2.6.17.4-kernel/arch/mips/kernel/r4k_switch.S 2006-07-06 13:02:28.000000000 -0700
|
---|
| 970 | +++ linux-2.6.17.4-mips/arch/mips/kernel/r4k_switch.S 2006-07-06 16:58:16.000000000 -0700
|
---|
| 971 | @@ -75,8 +75,8 @@
|
---|
| 972 | and t0, t0, t1
|
---|
| 973 | LONG_S t0, ST_OFF(t3)
|
---|
| 974 |
|
---|
| 975 | - fpu_save_double a0 t1 t0 t2 # c0_status passed in t1
|
---|
| 976 | - # clobbers t0 and t2
|
---|
| 977 | + fpu_save_double a0 t0 t1 # c0_status passed in t0
|
---|
| 978 | + # clobbers t1
|
---|
| 979 | 1:
|
---|
| 980 |
|
---|
| 981 | /*
|
---|
| 982 | @@ -94,7 +94,7 @@
|
---|
| 983 | ori t1, t2, TCSTATUS_IXMT
|
---|
| 984 | mtc0 t1, CP0_TCSTATUS
|
---|
| 985 | andi t2, t2, TCSTATUS_IXMT
|
---|
| 986 | - ehb
|
---|
| 987 | + _ehb
|
---|
| 988 | DMT 8 # dmt t0
|
---|
| 989 | move t1,ra
|
---|
| 990 | jal mips_ihb
|
---|
| 991 | @@ -109,7 +109,7 @@
|
---|
| 992 | or a2, t1
|
---|
| 993 | mtc0 a2, CP0_STATUS
|
---|
| 994 | #ifdef CONFIG_MIPS_MT_SMTC
|
---|
| 995 | - ehb
|
---|
| 996 | + _ehb
|
---|
| 997 | andi t0, t0, VPECONTROL_TE
|
---|
| 998 | beqz t0, 1f
|
---|
| 999 | emt
|
---|
| 1000 | @@ -118,7 +118,7 @@
|
---|
| 1001 | xori t1, t1, TCSTATUS_IXMT
|
---|
| 1002 | or t1, t1, t2
|
---|
| 1003 | mtc0 t1, CP0_TCSTATUS
|
---|
| 1004 | - ehb
|
---|
| 1005 | + _ehb
|
---|
| 1006 | #endif /* CONFIG_MIPS_MT_SMTC */
|
---|
| 1007 | move v0, a0
|
---|
| 1008 | jr ra
|
---|
| 1009 | @@ -129,9 +129,9 @@
|
---|
| 1010 | */
|
---|
| 1011 | LEAF(_save_fp)
|
---|
| 1012 | #ifdef CONFIG_64BIT
|
---|
| 1013 | - mfc0 t1, CP0_STATUS
|
---|
| 1014 | + mfc0 t0, CP0_STATUS
|
---|
| 1015 | #endif
|
---|
| 1016 | - fpu_save_double a0 t1 t0 t2 # clobbers t1
|
---|
| 1017 | + fpu_save_double a0 t0 t1 # clobbers t1
|
---|
| 1018 | jr ra
|
---|
| 1019 | END(_save_fp)
|
---|
| 1020 |
|
---|
| 1021 | @@ -139,7 +139,10 @@
|
---|
| 1022 | * Restore a thread's fp context.
|
---|
| 1023 | */
|
---|
| 1024 | LEAF(_restore_fp)
|
---|
| 1025 | - fpu_restore_double a0, t1 # clobbers t1
|
---|
| 1026 | +#ifdef CONFIG_64BIT
|
---|
| 1027 | + mfc0 t0, CP0_STATUS
|
---|
| 1028 | +#endif
|
---|
| 1029 | + fpu_restore_double a0 t0 t1 # clobbers t1
|
---|
| 1030 | jr ra
|
---|
| 1031 | END(_restore_fp)
|
---|
| 1032 |
|
---|
| 1033 | diff -Naur linux-2.6.17.4-kernel/arch/mips/kernel/scall32-o32.S linux-2.6.17.4-mips/arch/mips/kernel/scall32-o32.S
|
---|
| 1034 | --- linux-2.6.17.4-kernel/arch/mips/kernel/scall32-o32.S 2006-07-06 13:02:28.000000000 -0700
|
---|
| 1035 | +++ linux-2.6.17.4-mips/arch/mips/kernel/scall32-o32.S 2006-07-06 16:58:16.000000000 -0700
|
---|
| 1036 | @@ -497,7 +497,7 @@
|
---|
| 1037 | sys sys_sched_get_priority_min 1
|
---|
| 1038 | sys sys_sched_rr_get_interval 2 /* 4165 */
|
---|
| 1039 | sys sys_nanosleep, 2
|
---|
| 1040 | - sys sys_mremap, 4
|
---|
| 1041 | + sys sys_mremap, 5
|
---|
| 1042 | sys sys_accept 3
|
---|
| 1043 | sys sys_bind 3
|
---|
| 1044 | sys sys_connect 3 /* 4170 */
|
---|
| 1045 | @@ -647,6 +647,7 @@
|
---|
| 1046 | sys sys_unshare 1
|
---|
| 1047 | sys sys_splice 4
|
---|
| 1048 | sys sys_sync_file_range 7 /* 4305 */
|
---|
| 1049 | + sys sys_tee 4
|
---|
| 1050 | .endm
|
---|
| 1051 |
|
---|
| 1052 | /* We pre-compute the number of _instruction_ bytes needed to
|
---|
| 1053 | diff -Naur linux-2.6.17.4-kernel/arch/mips/kernel/scall64-64.S linux-2.6.17.4-mips/arch/mips/kernel/scall64-64.S
|
---|
| 1054 | --- linux-2.6.17.4-kernel/arch/mips/kernel/scall64-64.S 2006-07-06 13:02:28.000000000 -0700
|
---|
| 1055 | +++ linux-2.6.17.4-mips/arch/mips/kernel/scall64-64.S 2006-07-06 16:58:16.000000000 -0700
|
---|
| 1056 | @@ -462,3 +462,4 @@
|
---|
| 1057 | PTR sys_unshare
|
---|
| 1058 | PTR sys_splice
|
---|
| 1059 | PTR sys_sync_file_range
|
---|
| 1060 | + PTR sys_tee /* 5265 */
|
---|
| 1061 | diff -Naur linux-2.6.17.4-kernel/arch/mips/kernel/scall64-n32.S linux-2.6.17.4-mips/arch/mips/kernel/scall64-n32.S
|
---|
| 1062 | --- linux-2.6.17.4-kernel/arch/mips/kernel/scall64-n32.S 2006-07-06 13:02:28.000000000 -0700
|
---|
| 1063 | +++ linux-2.6.17.4-mips/arch/mips/kernel/scall64-n32.S 2006-07-06 16:58:16.000000000 -0700
|
---|
| 1064 | @@ -388,3 +388,4 @@
|
---|
| 1065 | PTR sys_unshare
|
---|
| 1066 | PTR sys_splice
|
---|
| 1067 | PTR sys_sync_file_range
|
---|
| 1068 | + PTR sys_tee
|
---|
| 1069 | diff -Naur linux-2.6.17.4-kernel/arch/mips/kernel/scall64-o32.S linux-2.6.17.4-mips/arch/mips/kernel/scall64-o32.S
|
---|
| 1070 | --- linux-2.6.17.4-kernel/arch/mips/kernel/scall64-o32.S 2006-07-06 13:02:28.000000000 -0700
|
---|
| 1071 | +++ linux-2.6.17.4-mips/arch/mips/kernel/scall64-o32.S 2006-07-06 16:58:16.000000000 -0700
|
---|
| 1072 | @@ -510,4 +510,5 @@
|
---|
| 1073 | PTR sys_unshare
|
---|
| 1074 | PTR sys_splice
|
---|
| 1075 | PTR sys32_sync_file_range /* 4305 */
|
---|
| 1076 | + PTR sys_tee
|
---|
| 1077 | .size sys_call_table,.-sys_call_table
|
---|
| 1078 | diff -Naur linux-2.6.17.4-kernel/arch/mips/kernel/smp.c linux-2.6.17.4-mips/arch/mips/kernel/smp.c
|
---|
| 1079 | --- linux-2.6.17.4-kernel/arch/mips/kernel/smp.c 2006-07-06 13:02:28.000000000 -0700
|
---|
| 1080 | +++ linux-2.6.17.4-mips/arch/mips/kernel/smp.c 2006-07-06 16:58:16.000000000 -0700
|
---|
| 1081 | @@ -336,7 +336,7 @@
|
---|
| 1082 | preempt_disable();
|
---|
| 1083 |
|
---|
| 1084 | if ((atomic_read(&mm->mm_users) != 1) || (current->mm != mm)) {
|
---|
| 1085 | - smp_call_function(flush_tlb_mm_ipi, (void *)mm, 1, 1);
|
---|
| 1086 | + __on_other_cores(flush_tlb_mm_ipi, (void *)mm);
|
---|
| 1087 | } else {
|
---|
| 1088 | int i;
|
---|
| 1089 | for (i = 0; i < num_online_cpus(); i++)
|
---|
| 1090 | @@ -372,7 +372,7 @@
|
---|
| 1091 | fd.vma = vma;
|
---|
| 1092 | fd.addr1 = start;
|
---|
| 1093 | fd.addr2 = end;
|
---|
| 1094 | - smp_call_function(flush_tlb_range_ipi, (void *)&fd, 1, 1);
|
---|
| 1095 | + __on_other_cores(flush_tlb_range_ipi, (void *)&fd);
|
---|
| 1096 | } else {
|
---|
| 1097 | int i;
|
---|
| 1098 | for (i = 0; i < num_online_cpus(); i++)
|
---|
| 1099 | @@ -414,7 +414,7 @@
|
---|
| 1100 |
|
---|
| 1101 | fd.vma = vma;
|
---|
| 1102 | fd.addr1 = page;
|
---|
| 1103 | - smp_call_function(flush_tlb_page_ipi, (void *)&fd, 1, 1);
|
---|
| 1104 | + __on_other_cores(flush_tlb_page_ipi, (void *)&fd);
|
---|
| 1105 | } else {
|
---|
| 1106 | int i;
|
---|
| 1107 | for (i = 0; i < num_online_cpus(); i++)
|
---|
| 1108 | @@ -434,8 +434,7 @@
|
---|
| 1109 |
|
---|
| 1110 | void flush_tlb_one(unsigned long vaddr)
|
---|
| 1111 | {
|
---|
| 1112 | - smp_call_function(flush_tlb_one_ipi, (void *) vaddr, 1, 1);
|
---|
| 1113 | - local_flush_tlb_one(vaddr);
|
---|
| 1114 | + __on_each_core(flush_tlb_one_ipi, (void *) vaddr);
|
---|
| 1115 | }
|
---|
| 1116 |
|
---|
| 1117 | static DEFINE_PER_CPU(struct cpu, cpu_devices);
|
---|
| 1118 | diff -Naur linux-2.6.17.4-kernel/arch/mips/kernel/smtc-asm.S linux-2.6.17.4-mips/arch/mips/kernel/smtc-asm.S
|
---|
| 1119 | --- linux-2.6.17.4-kernel/arch/mips/kernel/smtc-asm.S 2006-07-06 13:02:28.000000000 -0700
|
---|
| 1120 | +++ linux-2.6.17.4-mips/arch/mips/kernel/smtc-asm.S 2006-07-06 16:58:16.000000000 -0700
|
---|
| 1121 | @@ -52,12 +52,12 @@
|
---|
| 1122 | .set noat
|
---|
| 1123 | /* Disable thread scheduling to make Status update atomic */
|
---|
| 1124 | DMT 27 # dmt k1
|
---|
| 1125 | - ehb
|
---|
| 1126 | + _ehb
|
---|
| 1127 | /* Set EXL */
|
---|
| 1128 | mfc0 k0,CP0_STATUS
|
---|
| 1129 | ori k0,k0,ST0_EXL
|
---|
| 1130 | mtc0 k0,CP0_STATUS
|
---|
| 1131 | - ehb
|
---|
| 1132 | + _ehb
|
---|
| 1133 | /* Thread scheduling now inhibited by EXL. Restore TE state. */
|
---|
| 1134 | andi k1,k1,VPECONTROL_TE
|
---|
| 1135 | beqz k1,1f
|
---|
| 1136 | @@ -82,7 +82,7 @@
|
---|
| 1137 | li k1,ST0_CU0
|
---|
| 1138 | or k1,k1,k0
|
---|
| 1139 | mtc0 k1,CP0_STATUS
|
---|
| 1140 | - ehb
|
---|
| 1141 | + _ehb
|
---|
| 1142 | get_saved_sp
|
---|
| 1143 | /* Interrupting TC will have pre-set values in slots in the new frame */
|
---|
| 1144 | 2: subu k1,k1,PT_SIZE
|
---|
| 1145 | @@ -90,7 +90,7 @@
|
---|
| 1146 | lw k0,PT_TCSTATUS(k1)
|
---|
| 1147 | /* Write it to TCStatus to restore CU/KSU/IXMT state */
|
---|
| 1148 | mtc0 k0,$2,1
|
---|
| 1149 | - ehb
|
---|
| 1150 | + _ehb
|
---|
| 1151 | lw k0,PT_EPC(k1)
|
---|
| 1152 | mtc0 k0,CP0_EPC
|
---|
| 1153 | /* Save all will redundantly recompute the SP, but use it for now */
|
---|
| 1154 | @@ -116,7 +116,7 @@
|
---|
| 1155 | mfc0 t0,CP0_TCSTATUS
|
---|
| 1156 | ori t1,t0,TCSTATUS_IXMT
|
---|
| 1157 | mtc0 t1,CP0_TCSTATUS
|
---|
| 1158 | - ehb
|
---|
| 1159 | + _ehb
|
---|
| 1160 | /* We know we're in kernel mode, so prepare stack frame */
|
---|
| 1161 | subu t1,sp,PT_SIZE
|
---|
| 1162 | sw ra,PT_EPC(t1)
|
---|
| 1163 | diff -Naur linux-2.6.17.4-kernel/arch/mips/kernel/traps.c linux-2.6.17.4-mips/arch/mips/kernel/traps.c
|
---|
| 1164 | --- linux-2.6.17.4-kernel/arch/mips/kernel/traps.c 2006-07-06 13:02:28.000000000 -0700
|
---|
| 1165 | +++ linux-2.6.17.4-mips/arch/mips/kernel/traps.c 2006-07-06 16:58:16.000000000 -0700
|
---|
| 1166 | @@ -1051,7 +1051,7 @@
|
---|
| 1167 | return (void *)old_handler;
|
---|
| 1168 | }
|
---|
| 1169 |
|
---|
| 1170 | -#ifdef CONFIG_CPU_MIPSR2
|
---|
| 1171 | +#ifdef CONFIG_CPU_MIPSR2_SRS
|
---|
| 1172 | /*
|
---|
| 1173 | * MIPSR2 shadow register set allocation
|
---|
| 1174 | * FIXME: SMP...
|
---|
| 1175 | @@ -1070,11 +1070,9 @@
|
---|
| 1176 |
|
---|
| 1177 | static void mips_srs_init(void)
|
---|
| 1178 | {
|
---|
| 1179 | -#ifdef CONFIG_CPU_MIPSR2_SRS
|
---|
| 1180 | shadow_registers.sr_supported = ((read_c0_srsctl() >> 26) & 0x0f) + 1;
|
---|
| 1181 | printk(KERN_INFO "%d MIPSR2 register sets available\n",
|
---|
| 1182 | shadow_registers.sr_supported);
|
---|
| 1183 | -#endif
|
---|
| 1184 | shadow_registers.sr_allocated = 1; /* Set 0 used by kernel */
|
---|
| 1185 | }
|
---|
| 1186 |
|
---|
| 1187 | @@ -1199,7 +1197,14 @@
|
---|
| 1188 | {
|
---|
| 1189 | return set_vi_srs_handler(n, addr, 0);
|
---|
| 1190 | }
|
---|
| 1191 | -#endif
|
---|
| 1192 | +
|
---|
| 1193 | +#else
|
---|
| 1194 | +
|
---|
| 1195 | +static inline void mips_srs_init(void)
|
---|
| 1196 | +{
|
---|
| 1197 | +}
|
---|
| 1198 | +
|
---|
| 1199 | +#endif /* CONFIG_CPU_MIPSR2_SRS */
|
---|
| 1200 |
|
---|
| 1201 | /*
|
---|
| 1202 | * This is used by native signal handling
|
---|
| 1203 | @@ -1389,9 +1394,7 @@
|
---|
| 1204 | else
|
---|
| 1205 | ebase = CAC_BASE;
|
---|
| 1206 |
|
---|
| 1207 | -#ifdef CONFIG_CPU_MIPSR2
|
---|
| 1208 | mips_srs_init();
|
---|
| 1209 | -#endif
|
---|
| 1210 |
|
---|
| 1211 | per_cpu_trap_init();
|
---|
| 1212 |
|
---|
| 1213 | diff -Naur linux-2.6.17.4-kernel/arch/mips/lib/iomap.c linux-2.6.17.4-mips/arch/mips/lib/iomap.c
|
---|
| 1214 | --- linux-2.6.17.4-kernel/arch/mips/lib/iomap.c 2006-07-06 13:02:28.000000000 -0700
|
---|
| 1215 | +++ linux-2.6.17.4-mips/arch/mips/lib/iomap.c 1969-12-31 16:00:00.000000000 -0800
|
---|
| 1216 | @@ -1,78 +0,0 @@
|
---|
| 1217 | -/*
|
---|
| 1218 | - * iomap.c, Memory Mapped I/O routines for MIPS architecture.
|
---|
| 1219 | - *
|
---|
| 1220 | - * This code is based on lib/iomap.c, by Linus Torvalds.
|
---|
| 1221 | - *
|
---|
| 1222 | - * Copyright (C) 2004-2005 Yoichi Yuasa <yoichi_yuasa@tripeaks.co.jp>
|
---|
| 1223 | - *
|
---|
| 1224 | - * This program is free software; you can redistribute it and/or modify
|
---|
| 1225 | - * it under the terms of the GNU General Public License as published by
|
---|
| 1226 | - * the Free Software Foundation; either version 2 of the License, or
|
---|
| 1227 | - * (at your option) any later version.
|
---|
| 1228 | - *
|
---|
| 1229 | - * This program is distributed in the hope that it will be useful,
|
---|
| 1230 | - * but WITHOUT ANY WARRANTY; without even the implied warranty of
|
---|
| 1231 | - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
---|
| 1232 | - * GNU General Public License for more details.
|
---|
| 1233 | - *
|
---|
| 1234 | - * You should have received a copy of the GNU General Public License
|
---|
| 1235 | - * along with this program; if not, write to the Free Software
|
---|
| 1236 | - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
---|
| 1237 | - */
|
---|
| 1238 | -#include <linux/ioport.h>
|
---|
| 1239 | -#include <linux/module.h>
|
---|
| 1240 | -#include <linux/pci.h>
|
---|
| 1241 | -
|
---|
| 1242 | -#include <asm/io.h>
|
---|
| 1243 | -
|
---|
| 1244 | -void __iomem *ioport_map(unsigned long port, unsigned int nr)
|
---|
| 1245 | -{
|
---|
| 1246 | - unsigned long end;
|
---|
| 1247 | -
|
---|
| 1248 | - end = port + nr - 1UL;
|
---|
| 1249 | - if (ioport_resource.start > port ||
|
---|
| 1250 | - ioport_resource.end < end || port > end)
|
---|
| 1251 | - return NULL;
|
---|
| 1252 | -
|
---|
| 1253 | - return (void __iomem *)(mips_io_port_base + port);
|
---|
| 1254 | -}
|
---|
| 1255 | -
|
---|
| 1256 | -void ioport_unmap(void __iomem *addr)
|
---|
| 1257 | -{
|
---|
| 1258 | -}
|
---|
| 1259 | -EXPORT_SYMBOL(ioport_map);
|
---|
| 1260 | -EXPORT_SYMBOL(ioport_unmap);
|
---|
| 1261 | -
|
---|
| 1262 | -void __iomem *pci_iomap(struct pci_dev *dev, int bar, unsigned long maxlen)
|
---|
| 1263 | -{
|
---|
| 1264 | - unsigned long start, len, flags;
|
---|
| 1265 | -
|
---|
| 1266 | - if (dev == NULL)
|
---|
| 1267 | - return NULL;
|
---|
| 1268 | -
|
---|
| 1269 | - start = pci_resource_start(dev, bar);
|
---|
| 1270 | - len = pci_resource_len(dev, bar);
|
---|
| 1271 | - if (!start || !len)
|
---|
| 1272 | - return NULL;
|
---|
| 1273 | -
|
---|
| 1274 | - if (maxlen != 0 && len > maxlen)
|
---|
| 1275 | - len = maxlen;
|
---|
| 1276 | -
|
---|
| 1277 | - flags = pci_resource_flags(dev, bar);
|
---|
| 1278 | - if (flags & IORESOURCE_IO)
|
---|
| 1279 | - return ioport_map(start, len);
|
---|
| 1280 | - if (flags & IORESOURCE_MEM) {
|
---|
| 1281 | - if (flags & IORESOURCE_CACHEABLE)
|
---|
| 1282 | - return ioremap_cachable(start, len);
|
---|
| 1283 | - return ioremap_nocache(start, len);
|
---|
| 1284 | - }
|
---|
| 1285 | -
|
---|
| 1286 | - return NULL;
|
---|
| 1287 | -}
|
---|
| 1288 | -
|
---|
| 1289 | -void pci_iounmap(struct pci_dev *dev, void __iomem *addr)
|
---|
| 1290 | -{
|
---|
| 1291 | - iounmap(addr);
|
---|
| 1292 | -}
|
---|
| 1293 | -EXPORT_SYMBOL(pci_iomap);
|
---|
| 1294 | -EXPORT_SYMBOL(pci_iounmap);
|
---|
| 1295 | diff -Naur linux-2.6.17.4-kernel/arch/mips/lib/Makefile linux-2.6.17.4-mips/arch/mips/lib/Makefile
|
---|
| 1296 | --- linux-2.6.17.4-kernel/arch/mips/lib/Makefile 2006-07-06 13:02:28.000000000 -0700
|
---|
| 1297 | +++ linux-2.6.17.4-mips/arch/mips/lib/Makefile 2006-07-06 16:58:16.000000000 -0700
|
---|
| 1298 | @@ -5,6 +5,7 @@
|
---|
| 1299 | lib-y += csum_partial_copy.o memcpy.o promlib.o strlen_user.o strncpy_user.o \
|
---|
| 1300 | strnlen_user.o uncached.o
|
---|
| 1301 |
|
---|
| 1302 | -obj-y += iomap.o
|
---|
| 1303 | +# libgcc-style stuff needed in the kernel
|
---|
| 1304 | +lib-y += ashldi3.o ashrdi3.o lshrdi3.o
|
---|
| 1305 |
|
---|
| 1306 | EXTRA_AFLAGS := $(CFLAGS)
|
---|
| 1307 | diff -Naur linux-2.6.17.4-kernel/arch/mips/lib-32/dump_tlb.c linux-2.6.17.4-mips/arch/mips/lib-32/dump_tlb.c
|
---|
| 1308 | --- linux-2.6.17.4-kernel/arch/mips/lib-32/dump_tlb.c 2006-07-06 13:02:28.000000000 -0700
|
---|
| 1309 | +++ linux-2.6.17.4-mips/arch/mips/lib-32/dump_tlb.c 2006-07-06 16:58:16.000000000 -0700
|
---|
| 1310 | @@ -41,8 +41,6 @@
|
---|
| 1311 | return "256Mb";
|
---|
| 1312 | #endif
|
---|
| 1313 | }
|
---|
| 1314 | -
|
---|
| 1315 | - return "unknown";
|
---|
| 1316 | }
|
---|
| 1317 |
|
---|
| 1318 | #define BARRIER() \
|
---|
| 1319 | diff -Naur linux-2.6.17.4-kernel/arch/mips/lib-64/dump_tlb.c linux-2.6.17.4-mips/arch/mips/lib-64/dump_tlb.c
|
---|
| 1320 | --- linux-2.6.17.4-kernel/arch/mips/lib-64/dump_tlb.c 2006-07-06 13:02:28.000000000 -0700
|
---|
| 1321 | +++ linux-2.6.17.4-mips/arch/mips/lib-64/dump_tlb.c 2006-07-06 16:58:16.000000000 -0700
|
---|
| 1322 | @@ -32,8 +32,6 @@
|
---|
| 1323 | case PM_256M: return "256Mb";
|
---|
| 1324 | #endif
|
---|
| 1325 | }
|
---|
| 1326 | -
|
---|
| 1327 | - return "unknown";
|
---|
| 1328 | }
|
---|
| 1329 |
|
---|
| 1330 | #define BARRIER() \
|
---|
| 1331 | diff -Naur linux-2.6.17.4-kernel/arch/mips/Makefile linux-2.6.17.4-mips/arch/mips/Makefile
|
---|
| 1332 | --- linux-2.6.17.4-kernel/arch/mips/Makefile 2006-07-06 13:02:28.000000000 -0700
|
---|
| 1333 | +++ linux-2.6.17.4-mips/arch/mips/Makefile 2006-07-06 16:58:16.000000000 -0700
|
---|
| 1334 | @@ -83,6 +83,8 @@
|
---|
| 1335 | LDFLAGS_vmlinux += -G 0 -static -n -nostdlib
|
---|
| 1336 | MODFLAGS += -mlong-calls
|
---|
| 1337 |
|
---|
| 1338 | +cflags-y += -ffreestanding
|
---|
| 1339 | +
|
---|
| 1340 | #
|
---|
| 1341 | # We explicitly add the endianness specifier if needed, this allows
|
---|
| 1342 | # to compile kernels with a toolchain for the other endianness. We
|
---|
| 1343 | @@ -365,6 +367,7 @@
|
---|
| 1344 | cflags-$(CONFIG_PMC_YOSEMITE) += -Iinclude/asm-mips/mach-yosemite
|
---|
| 1345 | load-$(CONFIG_PMC_YOSEMITE) += 0xffffffff80100000
|
---|
| 1346 |
|
---|
| 1347 | +#
|
---|
| 1348 | # Qemu simulating MIPS32 4Kc
|
---|
| 1349 | #
|
---|
| 1350 | core-$(CONFIG_QEMU) += arch/mips/qemu/
|
---|
| 1351 | diff -Naur linux-2.6.17.4-kernel/arch/mips/mips-boards/generic/memory.c linux-2.6.17.4-mips/arch/mips/mips-boards/generic/memory.c
|
---|
| 1352 | --- linux-2.6.17.4-kernel/arch/mips/mips-boards/generic/memory.c 2006-07-06 13:02:28.000000000 -0700
|
---|
| 1353 | +++ linux-2.6.17.4-mips/arch/mips/mips-boards/generic/memory.c 2006-07-06 16:58:16.000000000 -0700
|
---|
| 1354 | @@ -48,34 +48,45 @@
|
---|
| 1355 | };
|
---|
| 1356 | #endif
|
---|
| 1357 |
|
---|
| 1358 | +/* determined physical memory size, not overridden by command line args */
|
---|
| 1359 | +unsigned long physical_memsize = 0L;
|
---|
| 1360 | +
|
---|
| 1361 | struct prom_pmemblock * __init prom_getmdesc(void)
|
---|
| 1362 | {
|
---|
| 1363 | char *memsize_str;
|
---|
| 1364 | unsigned int memsize;
|
---|
| 1365 | char cmdline[CL_SIZE], *ptr;
|
---|
| 1366 |
|
---|
| 1367 | - /* Check the command line first for a memsize directive */
|
---|
| 1368 | + /* otherwise look in the environment */
|
---|
| 1369 | + memsize_str = prom_getenv("memsize");
|
---|
| 1370 | + if (!memsize_str) {
|
---|
| 1371 | + prom_printf("memsize not set in boot prom, set to default (32Mb)\n");
|
---|
| 1372 | + physical_memsize = 0x02000000;
|
---|
| 1373 | + } else {
|
---|
| 1374 | +#ifdef DEBUG
|
---|
| 1375 | + prom_printf("prom_memsize = %s\n", memsize_str);
|
---|
| 1376 | +#endif
|
---|
| 1377 | + physical_memsize = simple_strtol(memsize_str, NULL, 0);
|
---|
| 1378 | + }
|
---|
| 1379 | +
|
---|
| 1380 | +#ifdef CONFIG_CPU_BIG_ENDIAN
|
---|
| 1381 | + /* SOC-it swaps, or perhaps doesn't swap, when DMA'ing the last
|
---|
| 1382 | + word of physical memory */
|
---|
| 1383 | + physical_memsize -= PAGE_SIZE;
|
---|
| 1384 | +#endif
|
---|
| 1385 | +
|
---|
| 1386 | + /* Check the command line for a memsize directive that overrides
|
---|
| 1387 | + the physical/default amount */
|
---|
| 1388 | strcpy(cmdline, arcs_cmdline);
|
---|
| 1389 | ptr = strstr(cmdline, "memsize=");
|
---|
| 1390 | if (ptr && (ptr != cmdline) && (*(ptr - 1) != ' '))
|
---|
| 1391 | ptr = strstr(ptr, " memsize=");
|
---|
| 1392 |
|
---|
| 1393 | - if (ptr) {
|
---|
| 1394 | + if (ptr)
|
---|
| 1395 | memsize = memparse(ptr + 8, &ptr);
|
---|
| 1396 | - }
|
---|
| 1397 | - else {
|
---|
| 1398 | - /* otherwise look in the environment */
|
---|
| 1399 | - memsize_str = prom_getenv("memsize");
|
---|
| 1400 | - if (!memsize_str) {
|
---|
| 1401 | - prom_printf("memsize not set in boot prom, set to default (32Mb)\n");
|
---|
| 1402 | - memsize = 0x02000000;
|
---|
| 1403 | - } else {
|
---|
| 1404 | -#ifdef DEBUG
|
---|
| 1405 | - prom_printf("prom_memsize = %s\n", memsize_str);
|
---|
| 1406 | -#endif
|
---|
| 1407 | - memsize = simple_strtol(memsize_str, NULL, 0);
|
---|
| 1408 | - }
|
---|
| 1409 | - }
|
---|
| 1410 | + else
|
---|
| 1411 | + memsize = physical_memsize;
|
---|
| 1412 | +
|
---|
| 1413 | memset(mdesc, 0, sizeof(mdesc));
|
---|
| 1414 |
|
---|
| 1415 | mdesc[0].type = yamon_dontuse;
|
---|
| 1416 | diff -Naur linux-2.6.17.4-kernel/arch/mips/mips-boards/malta/malta_int.c linux-2.6.17.4-mips/arch/mips/mips-boards/malta/malta_int.c
|
---|
| 1417 | --- linux-2.6.17.4-kernel/arch/mips/mips-boards/malta/malta_int.c 2006-07-06 13:02:28.000000000 -0700
|
---|
| 1418 | +++ linux-2.6.17.4-mips/arch/mips/mips-boards/malta/malta_int.c 2006-07-06 16:58:16.000000000 -0700
|
---|
| 1419 | @@ -208,23 +208,23 @@
|
---|
| 1420 | unsigned int a0 = 7;
|
---|
| 1421 | unsigned int t0;
|
---|
| 1422 |
|
---|
| 1423 | - t0 = s0 & 0xf000;
|
---|
| 1424 | + t0 = pending & 0xf000;
|
---|
| 1425 | t0 = t0 < 1;
|
---|
| 1426 | t0 = t0 << 2;
|
---|
| 1427 | a0 = a0 - t0;
|
---|
| 1428 | - s0 = s0 << t0;
|
---|
| 1429 | + pending = pending << t0;
|
---|
| 1430 |
|
---|
| 1431 | - t0 = s0 & 0xc000;
|
---|
| 1432 | + t0 = pending & 0xc000;
|
---|
| 1433 | t0 = t0 < 1;
|
---|
| 1434 | t0 = t0 << 1;
|
---|
| 1435 | a0 = a0 - t0;
|
---|
| 1436 | - s0 = s0 << t0;
|
---|
| 1437 | + pending = pending << t0;
|
---|
| 1438 |
|
---|
| 1439 | - t0 = s0 & 0x8000;
|
---|
| 1440 | + t0 = pending & 0x8000;
|
---|
| 1441 | t0 = t0 < 1;
|
---|
| 1442 | //t0 = t0 << 2;
|
---|
| 1443 | a0 = a0 - t0;
|
---|
| 1444 | - //s0 = s0 << t0;
|
---|
| 1445 | + //pending = pending << t0;
|
---|
| 1446 |
|
---|
| 1447 | return a0;
|
---|
| 1448 | #endif
|
---|
| 1449 | diff -Naur linux-2.6.17.4-kernel/arch/mips/mm/c-r4k.c linux-2.6.17.4-mips/arch/mips/mm/c-r4k.c
|
---|
| 1450 | --- linux-2.6.17.4-kernel/arch/mips/mm/c-r4k.c 2006-07-06 13:02:28.000000000 -0700
|
---|
| 1451 | +++ linux-2.6.17.4-mips/arch/mips/mm/c-r4k.c 2006-07-06 16:58:16.000000000 -0700
|
---|
| 1452 | @@ -24,32 +24,12 @@
|
---|
| 1453 | #include <asm/page.h>
|
---|
| 1454 | #include <asm/pgtable.h>
|
---|
| 1455 | #include <asm/r4kcache.h>
|
---|
| 1456 | +#include <asm/smp.h>
|
---|
| 1457 | #include <asm/system.h>
|
---|
| 1458 | #include <asm/mmu_context.h>
|
---|
| 1459 | #include <asm/war.h>
|
---|
| 1460 | #include <asm/cacheflush.h> /* for run_uncached() */
|
---|
| 1461 |
|
---|
| 1462 | -
|
---|
| 1463 | -/*
|
---|
| 1464 | - * Special Variant of smp_call_function for use by cache functions:
|
---|
| 1465 | - *
|
---|
| 1466 | - * o No return value
|
---|
| 1467 | - * o collapses to normal function call on UP kernels
|
---|
| 1468 | - * o collapses to normal function call on systems with a single shared
|
---|
| 1469 | - * primary cache.
|
---|
| 1470 | - */
|
---|
| 1471 | -static inline void r4k_on_each_cpu(void (*func) (void *info), void *info,
|
---|
| 1472 | - int retry, int wait)
|
---|
| 1473 | -{
|
---|
| 1474 | - preempt_disable();
|
---|
| 1475 | -
|
---|
| 1476 | -#if !defined(CONFIG_MIPS_MT_SMP) && !defined(CONFIG_MIPS_MT_SMTC)
|
---|
| 1477 | - smp_call_function(func, info, retry, wait);
|
---|
| 1478 | -#endif
|
---|
| 1479 | - func(info);
|
---|
| 1480 | - preempt_enable();
|
---|
| 1481 | -}
|
---|
| 1482 | -
|
---|
| 1483 | /*
|
---|
| 1484 | * Must die.
|
---|
| 1485 | */
|
---|
| 1486 | @@ -60,13 +40,13 @@
|
---|
| 1487 | /*
|
---|
| 1488 | * Dummy cache handling routines for machines without boardcaches
|
---|
| 1489 | */
|
---|
| 1490 | -static void no_sc_noop(void) {}
|
---|
| 1491 | +static void cache_noop(void) {}
|
---|
| 1492 |
|
---|
| 1493 | static struct bcache_ops no_sc_ops = {
|
---|
| 1494 | - .bc_enable = (void *)no_sc_noop,
|
---|
| 1495 | - .bc_disable = (void *)no_sc_noop,
|
---|
| 1496 | - .bc_wback_inv = (void *)no_sc_noop,
|
---|
| 1497 | - .bc_inv = (void *)no_sc_noop
|
---|
| 1498 | + .bc_enable = (void *)cache_noop,
|
---|
| 1499 | + .bc_disable = (void *)cache_noop,
|
---|
| 1500 | + .bc_wback_inv = (void *)cache_noop,
|
---|
| 1501 | + .bc_inv = (void *)cache_noop
|
---|
| 1502 | };
|
---|
| 1503 |
|
---|
| 1504 | struct bcache_ops *bcops = &no_sc_ops;
|
---|
| 1505 | @@ -94,7 +74,9 @@
|
---|
| 1506 | {
|
---|
| 1507 | unsigned long dc_lsize = cpu_dcache_line_size();
|
---|
| 1508 |
|
---|
| 1509 | - if (dc_lsize == 16)
|
---|
| 1510 | + if (dc_lsize == 0)
|
---|
| 1511 | + r4k_blast_dcache_page = (void *)cache_noop;
|
---|
| 1512 | + else if (dc_lsize == 16)
|
---|
| 1513 | r4k_blast_dcache_page = blast_dcache16_page;
|
---|
| 1514 | else if (dc_lsize == 32)
|
---|
| 1515 | r4k_blast_dcache_page = r4k_blast_dcache_page_dc32;
|
---|
| 1516 | @@ -106,7 +88,9 @@
|
---|
| 1517 | {
|
---|
| 1518 | unsigned long dc_lsize = cpu_dcache_line_size();
|
---|
| 1519 |
|
---|
| 1520 | - if (dc_lsize == 16)
|
---|
| 1521 | + if (dc_lsize == 0)
|
---|
| 1522 | + r4k_blast_dcache_page_indexed = (void *)cache_noop;
|
---|
| 1523 | + else if (dc_lsize == 16)
|
---|
| 1524 | r4k_blast_dcache_page_indexed = blast_dcache16_page_indexed;
|
---|
| 1525 | else if (dc_lsize == 32)
|
---|
| 1526 | r4k_blast_dcache_page_indexed = blast_dcache32_page_indexed;
|
---|
| 1527 | @@ -118,7 +102,9 @@
|
---|
| 1528 | {
|
---|
| 1529 | unsigned long dc_lsize = cpu_dcache_line_size();
|
---|
| 1530 |
|
---|
| 1531 | - if (dc_lsize == 16)
|
---|
| 1532 | + if (dc_lsize == 0)
|
---|
| 1533 | + r4k_blast_dcache = (void *)cache_noop;
|
---|
| 1534 | + else if (dc_lsize == 16)
|
---|
| 1535 | r4k_blast_dcache = blast_dcache16;
|
---|
| 1536 | else if (dc_lsize == 32)
|
---|
| 1537 | r4k_blast_dcache = blast_dcache32;
|
---|
| 1538 | @@ -201,7 +187,9 @@
|
---|
| 1539 | {
|
---|
| 1540 | unsigned long ic_lsize = cpu_icache_line_size();
|
---|
| 1541 |
|
---|
| 1542 | - if (ic_lsize == 16)
|
---|
| 1543 | + if (ic_lsize == 0)
|
---|
| 1544 | + r4k_blast_icache_page = (void *)cache_noop;
|
---|
| 1545 | + else if (ic_lsize == 16)
|
---|
| 1546 | r4k_blast_icache_page = blast_icache16_page;
|
---|
| 1547 | else if (ic_lsize == 32)
|
---|
| 1548 | r4k_blast_icache_page = blast_icache32_page;
|
---|
| 1549 | @@ -216,7 +204,9 @@
|
---|
| 1550 | {
|
---|
| 1551 | unsigned long ic_lsize = cpu_icache_line_size();
|
---|
| 1552 |
|
---|
| 1553 | - if (ic_lsize == 16)
|
---|
| 1554 | + if (ic_lsize == 0)
|
---|
| 1555 | + r4k_blast_icache_page_indexed = (void *)cache_noop;
|
---|
| 1556 | + else if (ic_lsize == 16)
|
---|
| 1557 | r4k_blast_icache_page_indexed = blast_icache16_page_indexed;
|
---|
| 1558 | else if (ic_lsize == 32) {
|
---|
| 1559 | if (R4600_V1_INDEX_ICACHEOP_WAR && cpu_is_r4600_v1_x())
|
---|
| 1560 | @@ -238,7 +228,9 @@
|
---|
| 1561 | {
|
---|
| 1562 | unsigned long ic_lsize = cpu_icache_line_size();
|
---|
| 1563 |
|
---|
| 1564 | - if (ic_lsize == 16)
|
---|
| 1565 | + if (ic_lsize == 0)
|
---|
| 1566 | + r4k_blast_icache = (void *)cache_noop;
|
---|
| 1567 | + else if (ic_lsize == 16)
|
---|
| 1568 | r4k_blast_icache = blast_icache16;
|
---|
| 1569 | else if (ic_lsize == 32) {
|
---|
| 1570 | if (R4600_V1_INDEX_ICACHEOP_WAR && cpu_is_r4600_v1_x())
|
---|
| 1571 | @@ -258,7 +250,7 @@
|
---|
| 1572 | unsigned long sc_lsize = cpu_scache_line_size();
|
---|
| 1573 |
|
---|
| 1574 | if (scache_size == 0)
|
---|
| 1575 | - r4k_blast_scache_page = (void *)no_sc_noop;
|
---|
| 1576 | + r4k_blast_scache_page = (void *)cache_noop;
|
---|
| 1577 | else if (sc_lsize == 16)
|
---|
| 1578 | r4k_blast_scache_page = blast_scache16_page;
|
---|
| 1579 | else if (sc_lsize == 32)
|
---|
| 1580 | @@ -276,7 +268,7 @@
|
---|
| 1581 | unsigned long sc_lsize = cpu_scache_line_size();
|
---|
| 1582 |
|
---|
| 1583 | if (scache_size == 0)
|
---|
| 1584 | - r4k_blast_scache_page_indexed = (void *)no_sc_noop;
|
---|
| 1585 | + r4k_blast_scache_page_indexed = (void *)cache_noop;
|
---|
| 1586 | else if (sc_lsize == 16)
|
---|
| 1587 | r4k_blast_scache_page_indexed = blast_scache16_page_indexed;
|
---|
| 1588 | else if (sc_lsize == 32)
|
---|
| 1589 | @@ -294,7 +286,7 @@
|
---|
| 1590 | unsigned long sc_lsize = cpu_scache_line_size();
|
---|
| 1591 |
|
---|
| 1592 | if (scache_size == 0)
|
---|
| 1593 | - r4k_blast_scache = (void *)no_sc_noop;
|
---|
| 1594 | + r4k_blast_scache = (void *)cache_noop;
|
---|
| 1595 | else if (sc_lsize == 16)
|
---|
| 1596 | r4k_blast_scache = blast_scache16;
|
---|
| 1597 | else if (sc_lsize == 32)
|
---|
| 1598 | @@ -320,7 +312,7 @@
|
---|
| 1599 | if (!cpu_has_dc_aliases)
|
---|
| 1600 | return;
|
---|
| 1601 |
|
---|
| 1602 | - r4k_on_each_cpu(local_r4k_flush_cache_all, NULL, 1, 1);
|
---|
| 1603 | + __on_each_core(local_r4k_flush_cache_all, NULL);
|
---|
| 1604 | }
|
---|
| 1605 |
|
---|
| 1606 | static inline void local_r4k___flush_cache_all(void * args)
|
---|
| 1607 | @@ -342,7 +334,7 @@
|
---|
| 1608 |
|
---|
| 1609 | static void r4k___flush_cache_all(void)
|
---|
| 1610 | {
|
---|
| 1611 | - r4k_on_each_cpu(local_r4k___flush_cache_all, NULL, 1, 1);
|
---|
| 1612 | + __on_each_core(local_r4k___flush_cache_all, NULL);
|
---|
| 1613 | }
|
---|
| 1614 |
|
---|
| 1615 | static inline void local_r4k_flush_cache_range(void * args)
|
---|
| 1616 | @@ -363,7 +355,7 @@
|
---|
| 1617 | static void r4k_flush_cache_range(struct vm_area_struct *vma,
|
---|
| 1618 | unsigned long start, unsigned long end)
|
---|
| 1619 | {
|
---|
| 1620 | - r4k_on_each_cpu(local_r4k_flush_cache_range, vma, 1, 1);
|
---|
| 1621 | + __on_each_core(local_r4k_flush_cache_range, vma);
|
---|
| 1622 | }
|
---|
| 1623 |
|
---|
| 1624 | static inline void local_r4k_flush_cache_mm(void * args)
|
---|
| 1625 | @@ -392,7 +384,7 @@
|
---|
| 1626 | if (!cpu_has_dc_aliases)
|
---|
| 1627 | return;
|
---|
| 1628 |
|
---|
| 1629 | - r4k_on_each_cpu(local_r4k_flush_cache_mm, mm, 1, 1);
|
---|
| 1630 | + __on_each_core(local_r4k_flush_cache_mm, mm);
|
---|
| 1631 | }
|
---|
| 1632 |
|
---|
| 1633 | struct flush_cache_page_args {
|
---|
| 1634 | @@ -483,7 +475,7 @@
|
---|
| 1635 | args.addr = addr;
|
---|
| 1636 | args.pfn = pfn;
|
---|
| 1637 |
|
---|
| 1638 | - r4k_on_each_cpu(local_r4k_flush_cache_page, &args, 1, 1);
|
---|
| 1639 | + __on_each_core(local_r4k_flush_cache_page, &args);
|
---|
| 1640 | }
|
---|
| 1641 |
|
---|
| 1642 | static inline void local_r4k_flush_data_cache_page(void * addr)
|
---|
| 1643 | @@ -493,7 +485,7 @@
|
---|
| 1644 |
|
---|
| 1645 | static void r4k_flush_data_cache_page(unsigned long addr)
|
---|
| 1646 | {
|
---|
| 1647 | - r4k_on_each_cpu(local_r4k_flush_data_cache_page, (void *) addr, 1, 1);
|
---|
| 1648 | + __on_each_core(local_r4k_flush_data_cache_page, (void *) addr);
|
---|
| 1649 | }
|
---|
| 1650 |
|
---|
| 1651 | struct flush_icache_range_args {
|
---|
| 1652 | @@ -508,7 +500,7 @@
|
---|
| 1653 | unsigned long end = fir_args->end;
|
---|
| 1654 |
|
---|
| 1655 | if (!cpu_has_ic_fills_f_dc) {
|
---|
| 1656 | - if (end - start > dcache_size) {
|
---|
| 1657 | + if (end - start >= dcache_size) {
|
---|
| 1658 | r4k_blast_dcache();
|
---|
| 1659 | } else {
|
---|
| 1660 | R4600_HIT_CACHEOP_WAR_IMPL;
|
---|
| 1661 | @@ -536,7 +528,7 @@
|
---|
| 1662 | args.start = start;
|
---|
| 1663 | args.end = end;
|
---|
| 1664 |
|
---|
| 1665 | - r4k_on_each_cpu(local_r4k_flush_icache_range, &args, 1, 1);
|
---|
| 1666 | + __on_each_core(local_r4k_flush_icache_range, &args);
|
---|
| 1667 | instruction_hazard();
|
---|
| 1668 | }
|
---|
| 1669 |
|
---|
| 1670 | @@ -612,7 +604,7 @@
|
---|
| 1671 | args.vma = vma;
|
---|
| 1672 | args.page = page;
|
---|
| 1673 |
|
---|
| 1674 | - r4k_on_each_cpu(local_r4k_flush_icache_page, &args, 1, 1);
|
---|
| 1675 | + __on_each_core(local_r4k_flush_icache_page, &args);
|
---|
| 1676 | }
|
---|
| 1677 |
|
---|
| 1678 |
|
---|
| 1679 | @@ -683,10 +675,12 @@
|
---|
| 1680 | unsigned long addr = (unsigned long) arg;
|
---|
| 1681 |
|
---|
| 1682 | R4600_HIT_CACHEOP_WAR_IMPL;
|
---|
| 1683 | - protected_writeback_dcache_line(addr & ~(dc_lsize - 1));
|
---|
| 1684 | + if (dc_lsize)
|
---|
| 1685 | + protected_writeback_dcache_line(addr & ~(dc_lsize - 1));
|
---|
| 1686 | if (!cpu_icache_snoops_remote_store && scache_size)
|
---|
| 1687 | protected_writeback_scache_line(addr & ~(sc_lsize - 1));
|
---|
| 1688 | - protected_flush_icache_line(addr & ~(ic_lsize - 1));
|
---|
| 1689 | + if (ic_lsize)
|
---|
| 1690 | + protected_flush_icache_line(addr & ~(ic_lsize - 1));
|
---|
| 1691 | if (MIPS4K_ICACHE_REFILL_WAR) {
|
---|
| 1692 | __asm__ __volatile__ (
|
---|
| 1693 | ".set push\n\t"
|
---|
| 1694 | @@ -711,7 +705,7 @@
|
---|
| 1695 |
|
---|
| 1696 | static void r4k_flush_cache_sigtramp(unsigned long addr)
|
---|
| 1697 | {
|
---|
| 1698 | - r4k_on_each_cpu(local_r4k_flush_cache_sigtramp, (void *) addr, 1, 1);
|
---|
| 1699 | + __on_each_core(local_r4k_flush_cache_sigtramp, (void *) addr);
|
---|
| 1700 | }
|
---|
| 1701 |
|
---|
| 1702 | static void r4k_flush_icache_all(void)
|
---|
| 1703 | @@ -973,8 +967,10 @@
|
---|
| 1704 | c->icache.waysize = icache_size / c->icache.ways;
|
---|
| 1705 | c->dcache.waysize = dcache_size / c->dcache.ways;
|
---|
| 1706 |
|
---|
| 1707 | - c->icache.sets = icache_size / (c->icache.linesz * c->icache.ways);
|
---|
| 1708 | - c->dcache.sets = dcache_size / (c->dcache.linesz * c->dcache.ways);
|
---|
| 1709 | + c->icache.sets = c->icache.linesz ?
|
---|
| 1710 | + icache_size / (c->icache.linesz * c->icache.ways) : 0;
|
---|
| 1711 | + c->dcache.sets = c->dcache.linesz ?
|
---|
| 1712 | + dcache_size / (c->dcache.linesz * c->dcache.ways) : 0;
|
---|
| 1713 |
|
---|
| 1714 | /*
|
---|
| 1715 | * R10000 and R12000 P-caches are odd in a positive way. They're 32kB
|
---|
| 1716 | @@ -993,10 +989,15 @@
|
---|
| 1717 | break;
|
---|
| 1718 | case CPU_24K:
|
---|
| 1719 | case CPU_34K:
|
---|
| 1720 | - if (!(read_c0_config7() & (1 << 16)))
|
---|
| 1721 | + if ((read_c0_config7() & (1 << 16))) {
|
---|
| 1722 | + /* effectively physically indexed dcache,
|
---|
| 1723 | + thus no virtual aliases. */
|
---|
| 1724 | + c->dcache.flags |= MIPS_CACHE_PINDEX;
|
---|
| 1725 | + break;
|
---|
| 1726 | + }
|
---|
| 1727 | default:
|
---|
| 1728 | - if (c->dcache.waysize > PAGE_SIZE)
|
---|
| 1729 | - c->dcache.flags |= MIPS_CACHE_ALIASES;
|
---|
| 1730 | + if (c->dcache.waysize > PAGE_SIZE)
|
---|
| 1731 | + c->dcache.flags |= MIPS_CACHE_ALIASES;
|
---|
| 1732 | }
|
---|
| 1733 |
|
---|
| 1734 | switch (c->cputype) {
|
---|
| 1735 | @@ -1092,6 +1093,7 @@
|
---|
| 1736 |
|
---|
| 1737 | extern int r5k_sc_init(void);
|
---|
| 1738 | extern int rm7k_sc_init(void);
|
---|
| 1739 | +extern int mips_sc_init(void);
|
---|
| 1740 |
|
---|
| 1741 | static void __init setup_scache(void)
|
---|
| 1742 | {
|
---|
| 1743 | @@ -1139,17 +1141,29 @@
|
---|
| 1744 | return;
|
---|
| 1745 |
|
---|
| 1746 | default:
|
---|
| 1747 | + if (c->isa_level == MIPS_CPU_ISA_M32R1 ||
|
---|
| 1748 | + c->isa_level == MIPS_CPU_ISA_M32R2 ||
|
---|
| 1749 | + c->isa_level == MIPS_CPU_ISA_M64R1 ||
|
---|
| 1750 | + c->isa_level == MIPS_CPU_ISA_M64R2) {
|
---|
| 1751 | +#ifdef CONFIG_MIPS_CPU_SCACHE
|
---|
| 1752 | + if (mips_sc_init ()) {
|
---|
| 1753 | + scache_size = c->scache.ways * c->scache.sets * c->scache.linesz;
|
---|
| 1754 | + printk("MIPS secondary cache %ldkB, %s, linesize %d bytes.\n",
|
---|
| 1755 | + scache_size >> 10,
|
---|
| 1756 | + way_string[c->scache.ways], c->scache.linesz);
|
---|
| 1757 | + }
|
---|
| 1758 | +#else
|
---|
| 1759 | + if (!(c->scache.flags & MIPS_CACHE_NOT_PRESENT))
|
---|
| 1760 | + panic("Dunno how to handle MIPS32 / MIPS64 second level cache");
|
---|
| 1761 | +#endif
|
---|
| 1762 | + return;
|
---|
| 1763 | + }
|
---|
| 1764 | sc_present = 0;
|
---|
| 1765 | }
|
---|
| 1766 |
|
---|
| 1767 | if (!sc_present)
|
---|
| 1768 | return;
|
---|
| 1769 |
|
---|
| 1770 | - if ((c->isa_level == MIPS_CPU_ISA_M32R1 ||
|
---|
| 1771 | - c->isa_level == MIPS_CPU_ISA_M64R1) &&
|
---|
| 1772 | - !(c->scache.flags & MIPS_CACHE_NOT_PRESENT))
|
---|
| 1773 | - panic("Dunno how to handle MIPS32 / MIPS64 second level cache");
|
---|
| 1774 | -
|
---|
| 1775 | /* compute a couple of other cache variables */
|
---|
| 1776 | c->scache.waysize = scache_size / c->scache.ways;
|
---|
| 1777 |
|
---|
| 1778 | @@ -1246,10 +1260,12 @@
|
---|
| 1779 | * This code supports virtually indexed processors and will be
|
---|
| 1780 | * unnecessarily inefficient on physically indexed processors.
|
---|
| 1781 | */
|
---|
| 1782 | - shm_align_mask = max_t( unsigned long,
|
---|
| 1783 | - c->dcache.sets * c->dcache.linesz - 1,
|
---|
| 1784 | - PAGE_SIZE - 1);
|
---|
| 1785 | -
|
---|
| 1786 | + if (c->dcache.linesz)
|
---|
| 1787 | + shm_align_mask = max_t( unsigned long,
|
---|
| 1788 | + c->dcache.sets * c->dcache.linesz - 1,
|
---|
| 1789 | + PAGE_SIZE - 1);
|
---|
| 1790 | + else
|
---|
| 1791 | + shm_align_mask = PAGE_SIZE-1;
|
---|
| 1792 | flush_cache_all = r4k_flush_cache_all;
|
---|
| 1793 | __flush_cache_all = r4k___flush_cache_all;
|
---|
| 1794 | flush_cache_mm = r4k_flush_cache_mm;
|
---|
| 1795 | diff -Naur linux-2.6.17.4-kernel/arch/mips/mm/Makefile linux-2.6.17.4-mips/arch/mips/mm/Makefile
|
---|
| 1796 | --- linux-2.6.17.4-kernel/arch/mips/mm/Makefile 2006-07-06 13:02:28.000000000 -0700
|
---|
| 1797 | +++ linux-2.6.17.4-mips/arch/mips/mm/Makefile 2006-07-06 16:58:16.000000000 -0700
|
---|
| 1798 | @@ -30,6 +30,7 @@
|
---|
| 1799 | obj-$(CONFIG_IP22_CPU_SCACHE) += sc-ip22.o
|
---|
| 1800 | obj-$(CONFIG_R5000_CPU_SCACHE) += sc-r5k.o
|
---|
| 1801 | obj-$(CONFIG_RM7000_CPU_SCACHE) += sc-rm7k.o
|
---|
| 1802 | +obj-$(CONFIG_MIPS_CPU_SCACHE) += sc-mips.o
|
---|
| 1803 |
|
---|
| 1804 | #
|
---|
| 1805 | # Choose one DMA coherency model
|
---|
| 1806 | diff -Naur linux-2.6.17.4-kernel/arch/mips/pci/fixup-tb0219.c linux-2.6.17.4-mips/arch/mips/pci/fixup-tb0219.c
|
---|
| 1807 | --- linux-2.6.17.4-kernel/arch/mips/pci/fixup-tb0219.c 2006-07-06 13:02:28.000000000 -0700
|
---|
| 1808 | +++ linux-2.6.17.4-mips/arch/mips/pci/fixup-tb0219.c 2006-07-06 16:58:16.000000000 -0700
|
---|
| 1809 | @@ -2,7 +2,7 @@
|
---|
| 1810 | * fixup-tb0219.c, The TANBAC TB0219 specific PCI fixups.
|
---|
| 1811 | *
|
---|
| 1812 | * Copyright (C) 2003 Megasolution Inc. <matsu@megasolution.jp>
|
---|
| 1813 | - * Copyright (C) 2004 Yoichi Yuasa <yoichi_yuasa@tripeaks.co.jp>
|
---|
| 1814 | + * Copyright (C) 2004-2005 Yoichi Yuasa <yoichi_yuasa@tripeaks.co.jp>
|
---|
| 1815 | *
|
---|
| 1816 | * This program is free software; you can redistribute it and/or modify
|
---|
| 1817 | * it under the terms of the GNU General Public License as published by
|
---|
| 1818 | diff -Naur linux-2.6.17.4-kernel/arch/mips/qemu/Makefile linux-2.6.17.4-mips/arch/mips/qemu/Makefile
|
---|
| 1819 | --- linux-2.6.17.4-kernel/arch/mips/qemu/Makefile 2006-07-06 13:02:28.000000000 -0700
|
---|
| 1820 | +++ linux-2.6.17.4-mips/arch/mips/qemu/Makefile 2006-07-06 16:58:16.000000000 -0700
|
---|
| 1821 | @@ -4,4 +4,5 @@
|
---|
| 1822 |
|
---|
| 1823 | obj-y = q-firmware.o q-irq.o q-mem.o q-setup.o
|
---|
| 1824 |
|
---|
| 1825 | +obj-$(CONFIG_VT) += q-vga.o
|
---|
| 1826 | obj-$(CONFIG_SMP) += q-smp.o
|
---|
| 1827 | diff -Naur linux-2.6.17.4-kernel/arch/mips/qemu/q-setup.c linux-2.6.17.4-mips/arch/mips/qemu/q-setup.c
|
---|
| 1828 | --- linux-2.6.17.4-kernel/arch/mips/qemu/q-setup.c 2006-07-06 13:02:28.000000000 -0700
|
---|
| 1829 | +++ linux-2.6.17.4-mips/arch/mips/qemu/q-setup.c 2006-07-06 16:58:16.000000000 -0700
|
---|
| 1830 | @@ -2,6 +2,8 @@
|
---|
| 1831 | #include <asm/io.h>
|
---|
| 1832 | #include <asm/time.h>
|
---|
| 1833 |
|
---|
| 1834 | +extern void qvga_init(void);
|
---|
| 1835 | +
|
---|
| 1836 | #define QEMU_PORT_BASE 0xb4000000
|
---|
| 1837 |
|
---|
| 1838 | const char *get_system_type(void)
|
---|
| 1839 | @@ -21,5 +23,8 @@
|
---|
| 1840 | void __init plat_setup(void)
|
---|
| 1841 | {
|
---|
| 1842 | set_io_port_base(QEMU_PORT_BASE);
|
---|
| 1843 | +#ifdef CONFIG_VT
|
---|
| 1844 | + qvga_init();
|
---|
| 1845 | +#endif
|
---|
| 1846 | board_timer_setup = qemu_timer_setup;
|
---|
| 1847 | }
|
---|
| 1848 | diff -Naur linux-2.6.17.4-kernel/arch/mips/sgi-ip27/ip27-irq.c linux-2.6.17.4-mips/arch/mips/sgi-ip27/ip27-irq.c
|
---|
| 1849 | --- linux-2.6.17.4-kernel/arch/mips/sgi-ip27/ip27-irq.c 2006-07-06 13:02:28.000000000 -0700
|
---|
| 1850 | +++ linux-2.6.17.4-mips/arch/mips/sgi-ip27/ip27-irq.c 2006-07-06 16:58:16.000000000 -0700
|
---|
| 1851 | @@ -360,7 +360,7 @@
|
---|
| 1852 |
|
---|
| 1853 | static unsigned long irq_map[NR_IRQS / BITS_PER_LONG];
|
---|
| 1854 |
|
---|
| 1855 | -static int allocate_irqno(void)
|
---|
| 1856 | +int allocate_irqno(void)
|
---|
| 1857 | {
|
---|
| 1858 | int irq;
|
---|
| 1859 |
|
---|
| 1860 | diff -Naur linux-2.6.17.4-kernel/arch/mips/sgi-ip27/ip27-timer.c linux-2.6.17.4-mips/arch/mips/sgi-ip27/ip27-timer.c
|
---|
| 1861 | --- linux-2.6.17.4-kernel/arch/mips/sgi-ip27/ip27-timer.c 2006-07-06 13:02:28.000000000 -0700
|
---|
| 1862 | +++ linux-2.6.17.4-mips/arch/mips/sgi-ip27/ip27-timer.c 2006-07-06 16:58:16.000000000 -0700
|
---|
| 1863 | @@ -89,11 +89,13 @@
|
---|
| 1864 | }
|
---|
| 1865 | #endif
|
---|
| 1866 |
|
---|
| 1867 | +static unsigned int rt_timer_irq;
|
---|
| 1868 | +
|
---|
| 1869 | void ip27_rt_timer_interrupt(struct pt_regs *regs)
|
---|
| 1870 | {
|
---|
| 1871 | int cpu = smp_processor_id();
|
---|
| 1872 | int cpuA = cputoslice(cpu) == 0;
|
---|
| 1873 | - int irq = 9; /* XXX Assign number */
|
---|
| 1874 | + unsigned int irq = rt_timer_irq;
|
---|
| 1875 |
|
---|
| 1876 | irq_enter();
|
---|
| 1877 | write_seqlock(&xtime_lock);
|
---|
| 1878 | @@ -179,13 +181,68 @@
|
---|
| 1879 | return mktime(year, month, date, hour, min, sec);
|
---|
| 1880 | }
|
---|
| 1881 |
|
---|
| 1882 | +static void startup_rt_irq(unsigned int irq)
|
---|
| 1883 | +{
|
---|
| 1884 | +}
|
---|
| 1885 | +
|
---|
| 1886 | +static void shutdown_rt_irq(unsigned int irq)
|
---|
| 1887 | +{
|
---|
| 1888 | +}
|
---|
| 1889 | +
|
---|
| 1890 | +static void enable_rt_irq(unsigned int irq)
|
---|
| 1891 | +{
|
---|
| 1892 | +}
|
---|
| 1893 | +
|
---|
| 1894 | +static void disable_rt_irq(unsigned int irq)
|
---|
| 1895 | +{
|
---|
| 1896 | +}
|
---|
| 1897 | +
|
---|
| 1898 | +static void mask_and_ack_rt(unsigned int irq)
|
---|
| 1899 | +{
|
---|
| 1900 | +}
|
---|
| 1901 | +
|
---|
| 1902 | +static void end_rt_irq(unsigned int irq)
|
---|
| 1903 | +{
|
---|
| 1904 | +}
|
---|
| 1905 | +
|
---|
| 1906 | +static struct hw_interrupt_type rt_irq_type = {
|
---|
| 1907 | + .typename = "SN HUB RT timer",
|
---|
| 1908 | + .startup = startup_rt_irq,
|
---|
| 1909 | + .shutdown = shutdown_rt_irq,
|
---|
| 1910 | + .enable = enable_rt_irq,
|
---|
| 1911 | + .disable = disable_rt_irq,
|
---|
| 1912 | + .ack = mask_and_ack_rt,
|
---|
| 1913 | + .end = end_rt_irq,
|
---|
| 1914 | +};
|
---|
| 1915 | +
|
---|
| 1916 | +static struct irqaction rt_irqaction = {
|
---|
| 1917 | + .handler = ip27_rt_timer_interrupt,
|
---|
| 1918 | + .flags = SA_INTERRUPT,
|
---|
| 1919 | + .mask = CPU_MASK_NONE,
|
---|
| 1920 | + .name = "timer"
|
---|
| 1921 | +};
|
---|
| 1922 | +
|
---|
| 1923 | +extern int allocate_irqno(void);
|
---|
| 1924 | +
|
---|
| 1925 | static void ip27_timer_setup(struct irqaction *irq)
|
---|
| 1926 | {
|
---|
| 1927 | + int irqno = allocate_irqno();
|
---|
| 1928 | +
|
---|
| 1929 | + if (irqno < 0)
|
---|
| 1930 | + panic("Can't allocate interrupt number for timer interrupt");
|
---|
| 1931 | +
|
---|
| 1932 | + irq_desc[irqno].status = IRQ_DISABLED;
|
---|
| 1933 | + irq_desc[irqno].action = NULL;
|
---|
| 1934 | + irq_desc[irqno].depth = 1;
|
---|
| 1935 | + irq_desc[irqno].handler = &rt_irq_type;
|
---|
| 1936 | +
|
---|
| 1937 | /* over-write the handler, we use our own way */
|
---|
| 1938 | irq->handler = no_action;
|
---|
| 1939 |
|
---|
| 1940 | /* setup irqaction */
|
---|
| 1941 | -// setup_irq(IP27_TIMER_IRQ, irq); /* XXX Can't do this yet. */
|
---|
| 1942 | + irq_desc[irqno].status |= IRQ_PER_CPU;
|
---|
| 1943 | +
|
---|
| 1944 | + rt_timer_irq = irqno;
|
---|
| 1945 | }
|
---|
| 1946 |
|
---|
| 1947 | void __init ip27_time_init(void)
|
---|
| 1948 | diff -Naur linux-2.6.17.4-kernel/arch/mips/sgi-ip27/Kconfig linux-2.6.17.4-mips/arch/mips/sgi-ip27/Kconfig
|
---|
| 1949 | --- linux-2.6.17.4-kernel/arch/mips/sgi-ip27/Kconfig 2006-07-06 13:02:28.000000000 -0700
|
---|
| 1950 | +++ linux-2.6.17.4-mips/arch/mips/sgi-ip27/Kconfig 2006-07-06 16:58:16.000000000 -0700
|
---|
| 1951 | @@ -35,12 +35,13 @@
|
---|
| 1952 | depends on SGI_IP27
|
---|
| 1953 | help
|
---|
| 1954 | Change the way a Linux kernel is loaded into memory on a MIPS64
|
---|
| 1955 | - machine. This is required in order to support text replication and
|
---|
| 1956 | + machine. This is required in order to support text replication on
|
---|
| 1957 | NUMA. If you need to understand it, read the source code.
|
---|
| 1958 |
|
---|
| 1959 | config REPLICATE_KTEXT
|
---|
| 1960 | bool "Kernel text replication support"
|
---|
| 1961 | depends on SGI_IP27
|
---|
| 1962 | + select MAPPED_KERNEL
|
---|
| 1963 | help
|
---|
| 1964 | Say Y here to enable replicating the kernel text across multiple
|
---|
| 1965 | nodes in a NUMA cluster. This trades memory for speed.
|
---|
| 1966 | diff -Naur linux-2.6.17.4-kernel/arch/mips/sibyte/bcm1480/irq.c linux-2.6.17.4-mips/arch/mips/sibyte/bcm1480/irq.c
|
---|
| 1967 | --- linux-2.6.17.4-kernel/arch/mips/sibyte/bcm1480/irq.c 2006-07-06 13:02:28.000000000 -0700
|
---|
| 1968 | +++ linux-2.6.17.4-mips/arch/mips/sibyte/bcm1480/irq.c 2006-07-06 16:58:16.000000000 -0700
|
---|
| 1969 | @@ -503,22 +503,23 @@
|
---|
| 1970 | #ifdef CONFIG_SIBYTE_BCM1480_PROF
|
---|
| 1971 | if (pending & CAUSEF_IP7) /* Cpu performance counter interrupt */
|
---|
| 1972 | sbprof_cpu_intr(exception_epc(regs));
|
---|
| 1973 | + else
|
---|
| 1974 | #endif
|
---|
| 1975 |
|
---|
| 1976 | if (pending & CAUSEF_IP4)
|
---|
| 1977 | bcm1480_timer_interrupt(regs);
|
---|
| 1978 |
|
---|
| 1979 | #ifdef CONFIG_SMP
|
---|
| 1980 | - if (pending & CAUSEF_IP3)
|
---|
| 1981 | + else if (pending & CAUSEF_IP3)
|
---|
| 1982 | bcm1480_mailbox_interrupt(regs);
|
---|
| 1983 | #endif
|
---|
| 1984 |
|
---|
| 1985 | #ifdef CONFIG_KGDB
|
---|
| 1986 | - if (pending & CAUSEF_IP6)
|
---|
| 1987 | + else if (pending & CAUSEF_IP6)
|
---|
| 1988 | bcm1480_kgdb_interrupt(regs); /* KGDB (uart 1) */
|
---|
| 1989 | #endif
|
---|
| 1990 |
|
---|
| 1991 | - if (pending & CAUSEF_IP2) {
|
---|
| 1992 | + else if (pending & CAUSEF_IP2) {
|
---|
| 1993 | unsigned long long mask_h, mask_l;
|
---|
| 1994 | unsigned long base;
|
---|
| 1995 |
|
---|
| 1996 | @@ -534,7 +535,7 @@
|
---|
| 1997 | mask_l = __raw_readq(
|
---|
| 1998 | IOADDR(base + R_BCM1480_IMR_INTERRUPT_STATUS_BASE_L));
|
---|
| 1999 |
|
---|
| 2000 | - if (!mask_h) {
|
---|
| 2001 | + if (mask_h) {
|
---|
| 2002 | if (mask_h ^ 1)
|
---|
| 2003 | do_IRQ(63 - dclz(mask_h), regs);
|
---|
| 2004 | else
|
---|
| 2005 | diff -Naur linux-2.6.17.4-kernel/arch/mips/sibyte/bcm1480/time.c linux-2.6.17.4-mips/arch/mips/sibyte/bcm1480/time.c
|
---|
| 2006 | --- linux-2.6.17.4-kernel/arch/mips/sibyte/bcm1480/time.c 2006-07-06 13:02:28.000000000 -0700
|
---|
| 2007 | +++ linux-2.6.17.4-mips/arch/mips/sibyte/bcm1480/time.c 2006-07-06 16:58:16.000000000 -0700
|
---|
| 2008 | @@ -110,17 +110,18 @@
|
---|
| 2009 | __raw_writeq(M_SCD_TIMER_ENABLE|M_SCD_TIMER_MODE_CONTINUOUS,
|
---|
| 2010 | IOADDR(A_SCD_TIMER_REGISTER(cpu, R_SCD_TIMER_CFG)));
|
---|
| 2011 |
|
---|
| 2012 | - /*
|
---|
| 2013 | - * CPU 0 handles the global timer interrupt job
|
---|
| 2014 | - */
|
---|
| 2015 | if (cpu == 0) {
|
---|
| 2016 | + /*
|
---|
| 2017 | + * CPU 0 handles the global timer interrupt job
|
---|
| 2018 | + */
|
---|
| 2019 | ll_timer_interrupt(irq, regs);
|
---|
| 2020 | }
|
---|
| 2021 | -
|
---|
| 2022 | - /*
|
---|
| 2023 | - * every CPU should do profiling and process accouting
|
---|
| 2024 | - */
|
---|
| 2025 | - ll_local_timer_interrupt(irq, regs);
|
---|
| 2026 | + else {
|
---|
| 2027 | + /*
|
---|
| 2028 | + * other CPUs should just do profiling and process accounting
|
---|
| 2029 | + */
|
---|
| 2030 | + ll_local_timer_interrupt(irq, regs);
|
---|
| 2031 | + }
|
---|
| 2032 | }
|
---|
| 2033 |
|
---|
| 2034 | /*
|
---|
| 2035 | diff -Naur linux-2.6.17.4-kernel/arch/mips/sibyte/Kconfig linux-2.6.17.4-mips/arch/mips/sibyte/Kconfig
|
---|
| 2036 | --- linux-2.6.17.4-kernel/arch/mips/sibyte/Kconfig 2006-07-06 13:02:28.000000000 -0700
|
---|
| 2037 | +++ linux-2.6.17.4-mips/arch/mips/sibyte/Kconfig 2006-07-06 16:58:16.000000000 -0700
|
---|
| 2038 | @@ -3,6 +3,7 @@
|
---|
| 2039 | select HW_HAS_PCI
|
---|
| 2040 | select SIBYTE_HAS_LDT
|
---|
| 2041 | select SIBYTE_SB1xxx_SOC
|
---|
| 2042 | + select SYS_SUPPORTS_SMP
|
---|
| 2043 |
|
---|
| 2044 | config SIBYTE_BCM1120
|
---|
| 2045 | bool
|
---|
| 2046 | @@ -30,11 +31,13 @@
|
---|
| 2047 | bool
|
---|
| 2048 | select HW_HAS_PCI
|
---|
| 2049 | select SIBYTE_SB1xxx_SOC
|
---|
| 2050 | + select SYS_SUPPORTS_SMP
|
---|
| 2051 |
|
---|
| 2052 | config SIBYTE_BCM1x55
|
---|
| 2053 | bool
|
---|
| 2054 | select HW_HAS_PCI
|
---|
| 2055 | select SIBYTE_SB1xxx_SOC
|
---|
| 2056 | + select SYS_SUPPORTS_SMP
|
---|
| 2057 |
|
---|
| 2058 | config SIBYTE_SB1xxx_SOC
|
---|
| 2059 | bool
|
---|
| 2060 | diff -Naur linux-2.6.17.4-kernel/arch/mips/sibyte/sb1250/irq.c linux-2.6.17.4-mips/arch/mips/sibyte/sb1250/irq.c
|
---|
| 2061 | --- linux-2.6.17.4-kernel/arch/mips/sibyte/sb1250/irq.c 2006-07-06 13:02:28.000000000 -0700
|
---|
| 2062 | +++ linux-2.6.17.4-mips/arch/mips/sibyte/sb1250/irq.c 2006-07-06 16:58:16.000000000 -0700
|
---|
| 2063 | @@ -435,13 +435,17 @@
|
---|
| 2064 | return lz;
|
---|
| 2065 | }
|
---|
| 2066 |
|
---|
| 2067 | +extern void sb1250_timer_interrupt(struct pt_regs *regs);
|
---|
| 2068 | +extern void sb1250_mailbox_interrupt(struct pt_regs *regs);
|
---|
| 2069 | +extern void sb1250_kgdb_interrupt(struct pt_regs *regs);
|
---|
| 2070 | +
|
---|
| 2071 | asmlinkage void plat_irq_dispatch(struct pt_regs *regs)
|
---|
| 2072 | {
|
---|
| 2073 | unsigned int pending;
|
---|
| 2074 |
|
---|
| 2075 | #ifdef CONFIG_SIBYTE_SB1250_PROF
|
---|
| 2076 | /* Set compare to count to silence count/compare timer interrupts */
|
---|
| 2077 | - write_c0_count(read_c0_count());
|
---|
| 2078 | + write_c0_compare(read_c0_count());
|
---|
| 2079 | #endif
|
---|
| 2080 |
|
---|
| 2081 | /*
|
---|
| 2082 | @@ -457,32 +461,32 @@
|
---|
| 2083 | pending = read_c0_cause();
|
---|
| 2084 |
|
---|
| 2085 | #ifdef CONFIG_SIBYTE_SB1250_PROF
|
---|
| 2086 | - if (pending & CAUSEF_IP7) { /* Cpu performance counter interrupt */
|
---|
| 2087 | + if (pending & CAUSEF_IP7) /* Cpu performance counter interrupt */
|
---|
| 2088 | sbprof_cpu_intr(exception_epc(regs));
|
---|
| 2089 | - }
|
---|
| 2090 | + else
|
---|
| 2091 | #endif
|
---|
| 2092 |
|
---|
| 2093 | if (pending & CAUSEF_IP4)
|
---|
| 2094 | sb1250_timer_interrupt(regs);
|
---|
| 2095 |
|
---|
| 2096 | #ifdef CONFIG_SMP
|
---|
| 2097 | - if (pending & CAUSEF_IP3)
|
---|
| 2098 | + else if (pending & CAUSEF_IP3)
|
---|
| 2099 | sb1250_mailbox_interrupt(regs);
|
---|
| 2100 | #endif
|
---|
| 2101 |
|
---|
| 2102 | #ifdef CONFIG_KGDB
|
---|
| 2103 | - if (pending & CAUSEF_IP6) /* KGDB (uart 1) */
|
---|
| 2104 | + else if (pending & CAUSEF_IP6) /* KGDB (uart 1) */
|
---|
| 2105 | sb1250_kgdb_interrupt(regs);
|
---|
| 2106 | #endif
|
---|
| 2107 |
|
---|
| 2108 | - if (pending & CAUSEF_IP2) {
|
---|
| 2109 | + else if (pending & CAUSEF_IP2) {
|
---|
| 2110 | unsigned long long mask;
|
---|
| 2111 |
|
---|
| 2112 | /*
|
---|
| 2113 | * Default...we've hit an IP[2] interrupt, which means we've
|
---|
| 2114 | * got to check the 1250 interrupt registers to figure out what
|
---|
| 2115 | * to do. Need to detect which CPU we're on, now that
|
---|
| 2116 | - ~ smp_affinity is supported.
|
---|
| 2117 | + * smp_affinity is supported.
|
---|
| 2118 | */
|
---|
| 2119 | mask = __raw_readq(IOADDR(A_IMR_REGISTER(smp_processor_id(),
|
---|
| 2120 | R_IMR_INTERRUPT_STATUS_BASE)));
|
---|
| 2121 | diff -Naur linux-2.6.17.4-kernel/arch/mips/sibyte/swarm/setup.c linux-2.6.17.4-mips/arch/mips/sibyte/swarm/setup.c
|
---|
| 2122 | --- linux-2.6.17.4-kernel/arch/mips/sibyte/swarm/setup.c 2006-07-06 13:02:28.000000000 -0700
|
---|
| 2123 | +++ linux-2.6.17.4-mips/arch/mips/sibyte/swarm/setup.c 2006-07-06 16:58:16.000000000 -0700
|
---|
| 2124 | @@ -72,8 +72,10 @@
|
---|
| 2125 |
|
---|
| 2126 | void __init swarm_time_init(void)
|
---|
| 2127 | {
|
---|
| 2128 | +#if defined(CONFIG_SIBYTE_SB1250) || defined(CONFIG_SIBYTE_BCM112X)
|
---|
| 2129 | /* Setup HPT */
|
---|
| 2130 | sb1250_hpt_setup();
|
---|
| 2131 | +#endif
|
---|
| 2132 | }
|
---|
| 2133 |
|
---|
| 2134 | void __init swarm_timer_setup(struct irqaction *irq)
|
---|
| 2135 | diff -Naur linux-2.6.17.4-kernel/Documentation/feature-removal-schedule.txt linux-2.6.17.4-mips/Documentation/feature-removal-schedule.txt
|
---|
| 2136 | --- linux-2.6.17.4-kernel/Documentation/feature-removal-schedule.txt 2006-07-06 13:02:28.000000000 -0700
|
---|
| 2137 | +++ linux-2.6.17.4-mips/Documentation/feature-removal-schedule.txt 2006-07-06 16:58:16.000000000 -0700
|
---|
| 2138 | @@ -147,16 +147,6 @@
|
---|
| 2139 |
|
---|
| 2140 | ---------------------------
|
---|
| 2141 |
|
---|
| 2142 | -What: au1x00_uart driver
|
---|
| 2143 | -When: January 2006
|
---|
| 2144 | -Why: The 8250 serial driver now has the ability to deal with the differences
|
---|
| 2145 | - between the standard 8250 family of UARTs and their slightly strange
|
---|
| 2146 | - brother on Alchemy SOCs. The loss of features is not considered an
|
---|
| 2147 | - issue.
|
---|
| 2148 | -Who: Ralf Baechle <ralf@linux-mips.org>
|
---|
| 2149 | -
|
---|
| 2150 | ----------------------------
|
---|
| 2151 | -
|
---|
| 2152 | What: eepro100 network driver
|
---|
| 2153 | When: January 2007
|
---|
| 2154 | Why: replaced by the e100 driver
|
---|
| 2155 | diff -Naur linux-2.6.17.4-kernel/drivers/char/decserial.c linux-2.6.17.4-mips/drivers/char/decserial.c
|
---|
| 2156 | --- linux-2.6.17.4-kernel/drivers/char/decserial.c 2006-07-06 13:02:28.000000000 -0700
|
---|
| 2157 | +++ linux-2.6.17.4-mips/drivers/char/decserial.c 2006-07-06 16:58:16.000000000 -0700
|
---|
| 2158 | @@ -14,87 +14,85 @@
|
---|
| 2159 | * device. Added support for PROM console in drivers/char/tty_io.c
|
---|
| 2160 | * instead. Although it may work to enable more than one
|
---|
| 2161 | * console device I strongly recommend to use only one.
|
---|
| 2162 | + *
|
---|
| 2163 | + * Copyright (C) 2004 Maciej W. Rozycki
|
---|
| 2164 | */
|
---|
| 2165 |
|
---|
| 2166 | #include <linux/config.h>
|
---|
| 2167 | +#include <linux/errno.h>
|
---|
| 2168 | #include <linux/init.h>
|
---|
| 2169 | -#include <asm/dec/machtype.h>
|
---|
| 2170 | -
|
---|
| 2171 | -#ifdef CONFIG_ZS
|
---|
| 2172 | -extern int zs_init(void);
|
---|
| 2173 | -#endif
|
---|
| 2174 |
|
---|
| 2175 | -#ifdef CONFIG_DZ
|
---|
| 2176 | -extern int dz_init(void);
|
---|
| 2177 | -#endif
|
---|
| 2178 | +#include <asm/dec/machtype.h>
|
---|
| 2179 | +#include <asm/dec/serial.h>
|
---|
| 2180 |
|
---|
| 2181 | -#ifdef CONFIG_SERIAL_CONSOLE
|
---|
| 2182 | +extern int register_zs_hook(unsigned int channel,
|
---|
| 2183 | + struct dec_serial_hook *hook);
|
---|
| 2184 | +extern int unregister_zs_hook(unsigned int channel);
|
---|
| 2185 |
|
---|
| 2186 | +int register_dec_serial_hook(unsigned int channel,
|
---|
| 2187 | + struct dec_serial_hook *hook)
|
---|
| 2188 | +{
|
---|
| 2189 | #ifdef CONFIG_ZS
|
---|
| 2190 | -extern void zs_serial_console_init(void);
|
---|
| 2191 | -#endif
|
---|
| 2192 | -
|
---|
| 2193 | -#ifdef CONFIG_DZ
|
---|
| 2194 | -extern void dz_serial_console_init(void);
|
---|
| 2195 | + if (IOASIC)
|
---|
| 2196 | + return register_zs_hook(channel, hook);
|
---|
| 2197 | #endif
|
---|
| 2198 | + return 0;
|
---|
| 2199 | +}
|
---|
| 2200 |
|
---|
| 2201 | +int unregister_dec_serial_hook(unsigned int channel)
|
---|
| 2202 | +{
|
---|
| 2203 | +#ifdef CONFIG_ZS
|
---|
| 2204 | + if (IOASIC)
|
---|
| 2205 | + return unregister_zs_hook(channel);
|
---|
| 2206 | #endif
|
---|
| 2207 | + return 0;
|
---|
| 2208 | +}
|
---|
| 2209 |
|
---|
| 2210 | -/* rs_init - starts up the serial interface -
|
---|
| 2211 | - handle normal case of starting up the serial interface */
|
---|
| 2212 |
|
---|
| 2213 | -#ifdef CONFIG_SERIAL
|
---|
| 2214 | +extern int zs_init(void);
|
---|
| 2215 | +extern int dz_init(void);
|
---|
| 2216 |
|
---|
| 2217 | +/*
|
---|
| 2218 | + * rs_init - starts up the serial interface -
|
---|
| 2219 | + * handle normal case of starting up the serial interface
|
---|
| 2220 | + */
|
---|
| 2221 | int __init rs_init(void)
|
---|
| 2222 | {
|
---|
| 2223 | -
|
---|
| 2224 | -#if defined(CONFIG_ZS) && defined(CONFIG_DZ)
|
---|
| 2225 | - if (IOASIC)
|
---|
| 2226 | - return zs_init();
|
---|
| 2227 | - else
|
---|
| 2228 | - return dz_init();
|
---|
| 2229 | -#else
|
---|
| 2230 | -
|
---|
| 2231 | #ifdef CONFIG_ZS
|
---|
| 2232 | - return zs_init();
|
---|
| 2233 | + if (IOASIC)
|
---|
| 2234 | + return zs_init();
|
---|
| 2235 | #endif
|
---|
| 2236 | -
|
---|
| 2237 | #ifdef CONFIG_DZ
|
---|
| 2238 | - return dz_init();
|
---|
| 2239 | -#endif
|
---|
| 2240 | -
|
---|
| 2241 | + if (!IOASIC)
|
---|
| 2242 | + return dz_init();
|
---|
| 2243 | #endif
|
---|
| 2244 | + return -ENXIO;
|
---|
| 2245 | }
|
---|
| 2246 |
|
---|
| 2247 | __initcall(rs_init);
|
---|
| 2248 |
|
---|
| 2249 | -#endif
|
---|
| 2250 |
|
---|
| 2251 | -#ifdef CONFIG_SERIAL_CONSOLE
|
---|
| 2252 | +#ifdef CONFIG_SERIAL_DEC_CONSOLE
|
---|
| 2253 | +
|
---|
| 2254 | +extern void zs_serial_console_init(void);
|
---|
| 2255 | +extern void dz_serial_console_init(void);
|
---|
| 2256 |
|
---|
| 2257 | -/* serial_console_init handles the special case of starting
|
---|
| 2258 | - * up the console on the serial port
|
---|
| 2259 | +/*
|
---|
| 2260 | + * dec_serial_console_init handles the special case of starting
|
---|
| 2261 | + * up the console on the serial port
|
---|
| 2262 | */
|
---|
| 2263 | -static int __init decserial_console_init(void)
|
---|
| 2264 | +static int __init dec_serial_console_init(void)
|
---|
| 2265 | {
|
---|
| 2266 | -#if defined(CONFIG_ZS) && defined(CONFIG_DZ)
|
---|
| 2267 | - if (IOASIC)
|
---|
| 2268 | - zs_serial_console_init();
|
---|
| 2269 | - else
|
---|
| 2270 | - dz_serial_console_init();
|
---|
| 2271 | -#else
|
---|
| 2272 | -
|
---|
| 2273 | #ifdef CONFIG_ZS
|
---|
| 2274 | - zs_serial_console_init();
|
---|
| 2275 | + if (IOASIC)
|
---|
| 2276 | + zs_serial_console_init();
|
---|
| 2277 | #endif
|
---|
| 2278 | -
|
---|
| 2279 | #ifdef CONFIG_DZ
|
---|
| 2280 | - dz_serial_console_init();
|
---|
| 2281 | -#endif
|
---|
| 2282 | -
|
---|
| 2283 | + if (!IOASIC)
|
---|
| 2284 | + dz_serial_console_init();
|
---|
| 2285 | #endif
|
---|
| 2286 | return 0;
|
---|
| 2287 | }
|
---|
| 2288 | -console_initcall(decserial_console_init);
|
---|
| 2289 | +console_initcall(dec_serial_console_init);
|
---|
| 2290 |
|
---|
| 2291 | #endif
|
---|
| 2292 | diff -Naur linux-2.6.17.4-kernel/drivers/char/Kconfig linux-2.6.17.4-mips/drivers/char/Kconfig
|
---|
| 2293 | --- linux-2.6.17.4-kernel/drivers/char/Kconfig 2006-07-06 13:02:28.000000000 -0700
|
---|
| 2294 | +++ linux-2.6.17.4-mips/drivers/char/Kconfig 2006-07-06 16:58:16.000000000 -0700
|
---|
| 2295 | @@ -340,23 +340,68 @@
|
---|
| 2296 | To compile this driver as a module, choose M here: the
|
---|
| 2297 | module will be called istallion.
|
---|
| 2298 |
|
---|
| 2299 | -config AU1000_UART
|
---|
| 2300 | - bool "Enable Au1000 UART Support"
|
---|
| 2301 | - depends on SERIAL_NONSTANDARD && MIPS
|
---|
| 2302 | - help
|
---|
| 2303 | - If you have an Alchemy AU1000 processor (MIPS based) and you want
|
---|
| 2304 | - to use serial ports, say Y. Otherwise, say N.
|
---|
| 2305 | -
|
---|
| 2306 | -config AU1000_SERIAL_CONSOLE
|
---|
| 2307 | - bool "Enable Au1000 serial console"
|
---|
| 2308 | - depends on AU1000_UART
|
---|
| 2309 | +config AU1X00_GPIO
|
---|
| 2310 | + tristate "Alchemy Au1000 GPIO device support"
|
---|
| 2311 | + depends on MIPS && SOC_AU1X00
|
---|
| 2312 | +
|
---|
| 2313 | +config TS_AU1X00_ADS7846
|
---|
| 2314 | + tristate "Au1000/ADS7846 touchscreen support"
|
---|
| 2315 | + depends on MIPS && SOC_AU1X00
|
---|
| 2316 | +
|
---|
| 2317 | +config AU1X00_USB_TTY
|
---|
| 2318 | + tristate "Au1000 USB TTY Device support"
|
---|
| 2319 | + depends on MIPS && MIPS_AU1000 && AU1000_USB_DEVICE=y && AU1000_USB_DEVICE
|
---|
| 2320 | +
|
---|
| 2321 | +config AU1X00_USB_RAW
|
---|
| 2322 | + tristate "Au1000 USB Raw Device support"
|
---|
| 2323 | + depends on MIPS && MIPS_AU1000 && AU1000_USB_DEVICE=y && AU1000_USB_TTY!=y && AU1X00_USB_DEVICE
|
---|
| 2324 | +
|
---|
| 2325 | +config SIBYTE_SB1250_DUART
|
---|
| 2326 | + bool "Support for BCM1xxx onchip DUART"
|
---|
| 2327 | + depends on MIPS && SIBYTE_SB1xxx_SOC=y
|
---|
| 2328 | +
|
---|
| 2329 | +config SIBYTE_SB1250_DUART_CONSOLE
|
---|
| 2330 | + bool "Console on BCM1xxx DUART"
|
---|
| 2331 | + depends on SIBYTE_SB1250_DUART
|
---|
| 2332 | +
|
---|
| 2333 | +config SERIAL_DEC
|
---|
| 2334 | + bool "DECstation serial support"
|
---|
| 2335 | + depends on MACH_DECSTATION
|
---|
| 2336 | + default y
|
---|
| 2337 | help
|
---|
| 2338 | - If you have an Alchemy AU1000 processor (MIPS based) and you want
|
---|
| 2339 | - to use a console on a serial port, say Y. Otherwise, say N.
|
---|
| 2340 | + This selects whether you want to be asked about drivers for
|
---|
| 2341 | + DECstation serial ports.
|
---|
| 2342 | +
|
---|
| 2343 | + Note that the answer to this question won't directly affect the
|
---|
| 2344 | + kernel: saying N will just cause the configurator to skip all
|
---|
| 2345 | + the questions about DECstation serial ports.
|
---|
| 2346 | +
|
---|
| 2347 | + If unsure, say Y.
|
---|
| 2348 | +
|
---|
| 2349 | +config SERIAL_DEC_CONSOLE
|
---|
| 2350 | + bool "Support for console on a DECstation serial port"
|
---|
| 2351 | + depends on SERIAL_DEC
|
---|
| 2352 | + default y
|
---|
| 2353 | + help
|
---|
| 2354 | + If you say Y here, it will be possible to use a serial port as the
|
---|
| 2355 | + system console (the system console is the device which receives all
|
---|
| 2356 | + kernel messages and warnings and which allows logins in single user
|
---|
| 2357 | + mode). Note that the firmware uses ttyS0 as the serial console on
|
---|
| 2358 | + the Maxine and ttyS2 on the others.
|
---|
| 2359 | +
|
---|
| 2360 | + If unsure, say Y.
|
---|
| 2361 | +
|
---|
| 2362 | +config ZS
|
---|
| 2363 | + bool "Z85C30 Serial Support"
|
---|
| 2364 | + depends on SERIAL_DEC
|
---|
| 2365 | + default y
|
---|
| 2366 | + help
|
---|
| 2367 | + Documentation on the Zilog 85C350 serial communications controller
|
---|
| 2368 | + is downloadable at <http://www.zilog.com/pdfs/serial/z85c30.pdf>.
|
---|
| 2369 |
|
---|
| 2370 | config QTRONIX_KEYBOARD
|
---|
| 2371 | bool "Enable Qtronix 990P Keyboard Support"
|
---|
| 2372 | - depends on IT8712
|
---|
| 2373 | + depends on MIPS && (MIPS_ITE8172 || MIPS_IVR)
|
---|
| 2374 | help
|
---|
| 2375 | Images of Qtronix keyboards are at
|
---|
| 2376 | <http://www.qtronix.com/keyboard.html>.
|
---|
| 2377 | @@ -368,7 +413,7 @@
|
---|
| 2378 |
|
---|
| 2379 | config IT8172_SCR0
|
---|
| 2380 | bool "Enable Smart Card Reader 0 Support "
|
---|
| 2381 | - depends on IT8712
|
---|
| 2382 | + depends on MIPS && (MIPS_ITE8172 || MIPS_IVR)
|
---|
| 2383 | help
|
---|
| 2384 | Say Y here to support smart-card reader 0 (SCR0) on the Integrated
|
---|
| 2385 | Technology Express, Inc. ITE8172 SBC. Vendor page at
|
---|
| 2386 | @@ -377,13 +422,17 @@
|
---|
| 2387 |
|
---|
| 2388 | config IT8172_SCR1
|
---|
| 2389 | bool "Enable Smart Card Reader 1 Support "
|
---|
| 2390 | - depends on IT8712
|
---|
| 2391 | + depends on MIPS && (MIPS_ITE8172 || MIPS_IVR)
|
---|
| 2392 | help
|
---|
| 2393 | Say Y here to support smart-card reader 1 (SCR1) on the Integrated
|
---|
| 2394 | Technology Express, Inc. ITE8172 SBC. Vendor page at
|
---|
| 2395 | <http://www.ite.com.tw/ia/brief_it8172bsp.htm>; picture of the
|
---|
| 2396 | board at <http://www.mvista.com/partners/semiconductor/ite.html>.
|
---|
| 2397 |
|
---|
| 2398 | +config ITE_GPIO
|
---|
| 2399 | + tristate "ITE GPIO"
|
---|
| 2400 | + depends on MIPS && MIPS_ITE8172
|
---|
| 2401 | +
|
---|
| 2402 | config A2232
|
---|
| 2403 | tristate "Commodore A2232 serial support (EXPERIMENTAL)"
|
---|
| 2404 | depends on EXPERIMENTAL && ZORRO && BROKEN_ON_SMP
|
---|
| 2405 | diff -Naur linux-2.6.17.4-kernel/drivers/char/Makefile linux-2.6.17.4-mips/drivers/char/Makefile
|
---|
| 2406 | --- linux-2.6.17.4-kernel/drivers/char/Makefile 2006-07-06 13:02:28.000000000 -0700
|
---|
| 2407 | +++ linux-2.6.17.4-mips/drivers/char/Makefile 2006-07-06 16:58:16.000000000 -0700
|
---|
| 2408 | @@ -31,6 +31,7 @@
|
---|
| 2409 | obj-$(CONFIG_A2232) += ser_a2232.o generic_serial.o
|
---|
| 2410 | obj-$(CONFIG_ATARI_DSP56K) += dsp56k.o
|
---|
| 2411 | obj-$(CONFIG_MOXA_SMARTIO) += mxser.o
|
---|
| 2412 | +obj-$(CONFIG_SIBYTE_SB1250_DUART) += sb1250_duart.o
|
---|
| 2413 | obj-$(CONFIG_COMPUTONE) += ip2/
|
---|
| 2414 | obj-$(CONFIG_RISCOM8) += riscom8.o
|
---|
| 2415 | obj-$(CONFIG_ISI) += isicom.o
|
---|
| 2416 | @@ -51,6 +52,7 @@
|
---|
| 2417 | obj-$(CONFIG_VIOTAPE) += viotape.o
|
---|
| 2418 | obj-$(CONFIG_HVCS) += hvcs.o
|
---|
| 2419 | obj-$(CONFIG_SGI_MBCS) += mbcs.o
|
---|
| 2420 | +obj-$(CONFIG_SERIAL_DEC) += decserial.o
|
---|
| 2421 |
|
---|
| 2422 | obj-$(CONFIG_PRINTER) += lp.o
|
---|
| 2423 | obj-$(CONFIG_TIPAR) += tipar.o
|
---|
| 2424 | @@ -78,6 +80,10 @@
|
---|
| 2425 | obj-$(CONFIG_HW_RANDOM) += hw_random.o
|
---|
| 2426 | obj-$(CONFIG_FTAPE) += ftape/
|
---|
| 2427 | obj-$(CONFIG_COBALT_LCD) += lcd.o
|
---|
| 2428 | +obj-$(CONFIG_ITE_GPIO) += ite_gpio.o
|
---|
| 2429 | +obj-$(CONFIG_AU1000_GPIO) += au1000_gpio.o
|
---|
| 2430 | +obj-$(CONFIG_AU1000_USB_TTY) += au1000_usbtty.o
|
---|
| 2431 | +obj-$(CONFIG_AU1000_USB_RAW) += au1000_usbraw.o
|
---|
| 2432 | obj-$(CONFIG_PPDEV) += ppdev.o
|
---|
| 2433 | obj-$(CONFIG_NWBUTTON) += nwbutton.o
|
---|
| 2434 | obj-$(CONFIG_NWFLASH) += nwflash.o
|
---|
| 2435 | diff -Naur linux-2.6.17.4-kernel/drivers/char/qtronix.c linux-2.6.17.4-mips/drivers/char/qtronix.c
|
---|
| 2436 | --- linux-2.6.17.4-kernel/drivers/char/qtronix.c 2006-07-06 13:02:28.000000000 -0700
|
---|
| 2437 | +++ linux-2.6.17.4-mips/drivers/char/qtronix.c 2006-07-06 16:58:16.000000000 -0700
|
---|
| 2438 | @@ -535,8 +535,7 @@
|
---|
| 2439 | i--;
|
---|
| 2440 | }
|
---|
| 2441 | if (count-i) {
|
---|
| 2442 | - struct inode *inode = file->f_dentry->d_inode;
|
---|
| 2443 | - inode->i_atime = current_fs_time(inode->i_sb);
|
---|
| 2444 | + file->f_dentry->d_inode->i_atime = get_seconds();
|
---|
| 2445 | return count-i;
|
---|
| 2446 | }
|
---|
| 2447 | if (signal_pending(current))
|
---|
| 2448 | diff -Naur linux-2.6.17.4-kernel/drivers/char/rtc.c linux-2.6.17.4-mips/drivers/char/rtc.c
|
---|
| 2449 | --- linux-2.6.17.4-kernel/drivers/char/rtc.c 2006-07-06 13:02:28.000000000 -0700
|
---|
| 2450 | +++ linux-2.6.17.4-mips/drivers/char/rtc.c 2006-07-06 16:58:16.000000000 -0700
|
---|
| 2451 | @@ -35,23 +35,22 @@
|
---|
| 2452 | * 1.09a Pete Zaitcev: Sun SPARC
|
---|
| 2453 | * 1.09b Jeff Garzik: Modularize, init cleanup
|
---|
| 2454 | * 1.09c Jeff Garzik: SMP cleanup
|
---|
| 2455 | - * 1.10 Paul Barton-Davis: add support for async I/O
|
---|
| 2456 | + * 1.10 Paul Barton-Davis: add support for async I/O
|
---|
| 2457 | * 1.10a Andrea Arcangeli: Alpha updates
|
---|
| 2458 | * 1.10b Andrew Morton: SMP lock fix
|
---|
| 2459 | * 1.10c Cesar Barros: SMP locking fixes and cleanup
|
---|
| 2460 | * 1.10d Paul Gortmaker: delete paranoia check in rtc_exit
|
---|
| 2461 | * 1.10e Maciej W. Rozycki: Handle DECstation's year weirdness.
|
---|
| 2462 | - * 1.11 Takashi Iwai: Kernel access functions
|
---|
| 2463 | + * 1.11 Takashi Iwai: Kernel access functions
|
---|
| 2464 | * rtc_register/rtc_unregister/rtc_control
|
---|
| 2465 | * 1.11a Daniele Bellucci: Audit create_proc_read_entry in rtc_init
|
---|
| 2466 | - * 1.12 Venkatesh Pallipadi: Hooks for emulating rtc on HPET base-timer
|
---|
| 2467 | + * 1.12 Venkatesh Pallipadi: Hooks for emulating rtc on HPET base-timer
|
---|
| 2468 | * CONFIG_HPET_EMULATE_RTC
|
---|
| 2469 | + * 1.12a Maciej W. Rozycki: Handle memory-mapped chips properly.
|
---|
| 2470 | * 1.12ac Alan Cox: Allow read access to the day of week register
|
---|
| 2471 | */
|
---|
| 2472 |
|
---|
| 2473 | -#define RTC_VERSION "1.12ac"
|
---|
| 2474 | -
|
---|
| 2475 | -#define RTC_IO_EXTENT 0x8
|
---|
| 2476 | +#define RTC_VERSION "1.12a"
|
---|
| 2477 |
|
---|
| 2478 | /*
|
---|
| 2479 | * Note that *all* calls to CMOS_READ and CMOS_WRITE are done with
|
---|
| 2480 | @@ -338,7 +337,15 @@
|
---|
| 2481 | if (rtc_has_irq == 0)
|
---|
| 2482 | return -EIO;
|
---|
| 2483 |
|
---|
| 2484 | - if (count < sizeof(unsigned))
|
---|
| 2485 | + /*
|
---|
| 2486 | + * Historically this function used to assume that sizeof(unsigned long)
|
---|
| 2487 | + * is the same in userspace and kernelspace. This lead to problems
|
---|
| 2488 | + * for configurations with multiple ABIs such a the MIPS o32 and 64
|
---|
| 2489 | + * ABIs supported on the same kernel. So now we support read of both
|
---|
| 2490 | + * 4 and 8 bytes and assume that's the sizeof(unsigned long) in the
|
---|
| 2491 | + * userspace ABI.
|
---|
| 2492 | + */
|
---|
| 2493 | + if (count != sizeof(unsigned int) && count != sizeof(unsigned long))
|
---|
| 2494 | return -EINVAL;
|
---|
| 2495 |
|
---|
| 2496 | add_wait_queue(&rtc_wait, &wait);
|
---|
| 2497 | @@ -369,10 +376,12 @@
|
---|
| 2498 | schedule();
|
---|
| 2499 | } while (1);
|
---|
| 2500 |
|
---|
| 2501 | - if (count < sizeof(unsigned long))
|
---|
| 2502 | - retval = put_user(data, (unsigned int __user *)buf) ?: sizeof(int);
|
---|
| 2503 | + if (count == sizeof(unsigned int))
|
---|
| 2504 | + retval = put_user(data, (unsigned int __user *)buf) ?: sizeof(int);
|
---|
| 2505 | else
|
---|
| 2506 | retval = put_user(data, (unsigned long __user *)buf) ?: sizeof(long);
|
---|
| 2507 | + if (!retval)
|
---|
| 2508 | + retval = count;
|
---|
| 2509 | out:
|
---|
| 2510 | current->state = TASK_RUNNING;
|
---|
| 2511 | remove_wait_queue(&rtc_wait, &wait);
|
---|
| 2512 | @@ -924,6 +933,9 @@
|
---|
| 2513 | struct sparc_isa_device *isa_dev;
|
---|
| 2514 | #endif
|
---|
| 2515 | #endif
|
---|
| 2516 | +#ifndef __sparc__
|
---|
| 2517 | + void *r;
|
---|
| 2518 | +#endif
|
---|
| 2519 |
|
---|
| 2520 | #ifdef __sparc__
|
---|
| 2521 | for_each_ebus(ebus) {
|
---|
| 2522 | @@ -969,8 +981,13 @@
|
---|
| 2523 | }
|
---|
| 2524 | no_irq:
|
---|
| 2525 | #else
|
---|
| 2526 | - if (!request_region(RTC_PORT(0), RTC_IO_EXTENT, "rtc")) {
|
---|
| 2527 | - printk(KERN_ERR "rtc: I/O port %d is not free.\n", RTC_PORT (0));
|
---|
| 2528 | + if (RTC_IOMAPPED)
|
---|
| 2529 | + r = request_region(RTC_PORT(0), RTC_IO_EXTENT, "rtc");
|
---|
| 2530 | + else
|
---|
| 2531 | + r = request_mem_region(RTC_PORT(0), RTC_IO_EXTENT, "rtc");
|
---|
| 2532 | + if (!r) {
|
---|
| 2533 | + printk(KERN_ERR "rtc: I/O resource %lx is not free.\n",
|
---|
| 2534 | + (long)(RTC_PORT(0)));
|
---|
| 2535 | return -EIO;
|
---|
| 2536 | }
|
---|
| 2537 |
|
---|
| 2538 | @@ -984,7 +1001,10 @@
|
---|
| 2539 | if(request_irq(RTC_IRQ, rtc_int_handler_ptr, SA_INTERRUPT, "rtc", NULL)) {
|
---|
| 2540 | /* Yeah right, seeing as irq 8 doesn't even hit the bus. */
|
---|
| 2541 | printk(KERN_ERR "rtc: IRQ %d is not free.\n", RTC_IRQ);
|
---|
| 2542 | - release_region(RTC_PORT(0), RTC_IO_EXTENT);
|
---|
| 2543 | + if (RTC_IOMAPPED)
|
---|
| 2544 | + release_region(RTC_PORT(0), RTC_IO_EXTENT);
|
---|
| 2545 | + else
|
---|
| 2546 | + release_mem_region(RTC_PORT(0), RTC_IO_EXTENT);
|
---|
| 2547 | return -EIO;
|
---|
| 2548 | }
|
---|
| 2549 | hpet_rtc_timer_init();
|
---|
| 2550 | @@ -1084,7 +1104,10 @@
|
---|
| 2551 | if (rtc_has_irq)
|
---|
| 2552 | free_irq (rtc_irq, &rtc_port);
|
---|
| 2553 | #else
|
---|
| 2554 | - release_region (RTC_PORT (0), RTC_IO_EXTENT);
|
---|
| 2555 | + if (RTC_IOMAPPED)
|
---|
| 2556 | + release_region(RTC_PORT(0), RTC_IO_EXTENT);
|
---|
| 2557 | + else
|
---|
| 2558 | + release_mem_region(RTC_PORT(0), RTC_IO_EXTENT);
|
---|
| 2559 | #ifdef RTC_IRQ
|
---|
| 2560 | if (rtc_has_irq)
|
---|
| 2561 | free_irq (RTC_IRQ, NULL);
|
---|
| 2562 | diff -Naur linux-2.6.17.4-kernel/drivers/ide/mips/Makefile linux-2.6.17.4-mips/drivers/ide/mips/Makefile
|
---|
| 2563 | --- linux-2.6.17.4-kernel/drivers/ide/mips/Makefile 2006-07-06 13:02:28.000000000 -0700
|
---|
| 2564 | +++ linux-2.6.17.4-mips/drivers/ide/mips/Makefile 2006-07-06 16:58:16.000000000 -0700
|
---|
| 2565 | @@ -1,4 +1,4 @@
|
---|
| 2566 | obj-$(CONFIG_BLK_DEV_IDE_SWARM) += swarm.o
|
---|
| 2567 | obj-$(CONFIG_BLK_DEV_IDE_AU1XXX) += au1xxx-ide.o
|
---|
| 2568 |
|
---|
| 2569 | -EXTRA_CFLAGS := -Idrivers/ide
|
---|
| 2570 | +CFLAGS_au1xxx-ide.o := -Idrivers/ide
|
---|
| 2571 | diff -Naur linux-2.6.17.4-kernel/drivers/mtd/devices/docprobe.c linux-2.6.17.4-mips/drivers/mtd/devices/docprobe.c
|
---|
| 2572 | --- linux-2.6.17.4-kernel/drivers/mtd/devices/docprobe.c 2006-07-06 13:02:28.000000000 -0700
|
---|
| 2573 | +++ linux-2.6.17.4-mips/drivers/mtd/devices/docprobe.c 2006-07-06 16:58:16.000000000 -0700
|
---|
| 2574 | @@ -84,10 +84,10 @@
|
---|
| 2575 | 0xe4000000,
|
---|
| 2576 | #elif defined(CONFIG_MOMENCO_OCELOT)
|
---|
| 2577 | 0x2f000000,
|
---|
| 2578 | - 0xff000000,
|
---|
| 2579 | + 0xff000000,
|
---|
| 2580 | #elif defined(CONFIG_MOMENCO_OCELOT_G) || defined (CONFIG_MOMENCO_OCELOT_C)
|
---|
| 2581 | - 0xff000000,
|
---|
| 2582 | -##else
|
---|
| 2583 | + 0xff000000,
|
---|
| 2584 | +#else
|
---|
| 2585 | #warning Unknown architecture for DiskOnChip. No default probe locations defined
|
---|
| 2586 | #endif
|
---|
| 2587 | 0xffffffff };
|
---|
| 2588 | diff -Naur linux-2.6.17.4-kernel/drivers/mtd/devices/Kconfig linux-2.6.17.4-mips/drivers/mtd/devices/Kconfig
|
---|
| 2589 | --- linux-2.6.17.4-kernel/drivers/mtd/devices/Kconfig 2006-07-06 13:02:28.000000000 -0700
|
---|
| 2590 | +++ linux-2.6.17.4-mips/drivers/mtd/devices/Kconfig 2006-07-06 16:58:16.000000000 -0700
|
---|
| 2591 | @@ -47,6 +47,11 @@
|
---|
| 2592 | accelerator. Say Y here if you have a DECstation 5000/2x0 or a
|
---|
| 2593 | DECsystem 5900 equipped with such a module.
|
---|
| 2594 |
|
---|
| 2595 | + If you want to compile this driver as a module ( = code which can be
|
---|
| 2596 | + inserted in and removed from the running kernel whenever you want),
|
---|
| 2597 | + say M here and read <file:Documentation/modules.txt>. The module will
|
---|
| 2598 | + be called ms02-nv.o.
|
---|
| 2599 | +
|
---|
| 2600 | config MTD_DATAFLASH
|
---|
| 2601 | tristate "Support for AT45xxx DataFlash"
|
---|
| 2602 | depends on MTD && SPI_MASTER && EXPERIMENTAL
|
---|
| 2603 | diff -Naur linux-2.6.17.4-kernel/drivers/mtd/maps/Kconfig linux-2.6.17.4-mips/drivers/mtd/maps/Kconfig
|
---|
| 2604 | --- linux-2.6.17.4-kernel/drivers/mtd/maps/Kconfig 2006-07-06 13:02:28.000000000 -0700
|
---|
| 2605 | +++ linux-2.6.17.4-mips/drivers/mtd/maps/Kconfig 2006-07-06 16:58:16.000000000 -0700
|
---|
| 2606 | @@ -200,8 +200,8 @@
|
---|
| 2607 | Support for the flash chip on Tsunami TIG bus.
|
---|
| 2608 |
|
---|
| 2609 | config MTD_LASAT
|
---|
| 2610 | - tristate "Flash chips on LASAT board"
|
---|
| 2611 | - depends on LASAT
|
---|
| 2612 | + tristate "LASAT flash device"
|
---|
| 2613 | + depends on LASAT && MTD_CFI
|
---|
| 2614 | help
|
---|
| 2615 | Support for the flash chips on the Lasat 100 and 200 boards.
|
---|
| 2616 |
|
---|
| 2617 | @@ -299,6 +299,18 @@
|
---|
| 2618 | Mapping for the Flaga digital module. If you don't have one, ignore
|
---|
| 2619 | this setting.
|
---|
| 2620 |
|
---|
| 2621 | +config MTD_XXS1500
|
---|
| 2622 | + tristate "MyCable XXS1500 Flash device"
|
---|
| 2623 | + depends on MIPS && MIPS_XXS1500
|
---|
| 2624 | + help
|
---|
| 2625 | + Flash memory access on MyCable XXS1500 Board
|
---|
| 2626 | +
|
---|
| 2627 | +config MTD_MTX1
|
---|
| 2628 | + tristate "4-G Systems MTX-1 Flash device"
|
---|
| 2629 | + depends on MIPS && MIPS_MTX1
|
---|
| 2630 | + help
|
---|
| 2631 | + Flash memory access on 4-G Systems MTX-1 Board
|
---|
| 2632 | +
|
---|
| 2633 | config MTD_BEECH
|
---|
| 2634 | tristate "CFI Flash device mapped on IBM 405LP Beech"
|
---|
| 2635 | depends on MTD_CFI && BEECH
|
---|
| 2636 | diff -Naur linux-2.6.17.4-kernel/drivers/mtd/maps/lasat.c linux-2.6.17.4-mips/drivers/mtd/maps/lasat.c
|
---|
| 2637 | --- linux-2.6.17.4-kernel/drivers/mtd/maps/lasat.c 2006-07-06 13:02:28.000000000 -0700
|
---|
| 2638 | +++ linux-2.6.17.4-mips/drivers/mtd/maps/lasat.c 2006-07-06 16:58:16.000000000 -0700
|
---|
| 2639 | @@ -7,7 +7,7 @@
|
---|
| 2640 | * modify it under the terms of the GNU General Public License version
|
---|
| 2641 | * 2 as published by the Free Software Foundation.
|
---|
| 2642 | *
|
---|
| 2643 | - * $Id: lasat.c,v 1.9 2004/11/04 13:24:15 gleixner Exp $
|
---|
| 2644 | + * $Id: lasat.c,v 1.7 2004/07/12 21:59:44 dwmw2 Exp $
|
---|
| 2645 | *
|
---|
| 2646 | */
|
---|
| 2647 |
|
---|
| 2648 | @@ -50,7 +50,7 @@
|
---|
| 2649 | ENABLE_VPP((&lasat_map));
|
---|
| 2650 |
|
---|
| 2651 | lasat_map.phys = lasat_flash_partition_start(LASAT_MTD_BOOTLOADER);
|
---|
| 2652 | - lasat_map.virt = ioremap_nocache(
|
---|
| 2653 | + lasat_map.virt = (unsigned long)ioremap_nocache(
|
---|
| 2654 | lasat_map.phys, lasat_board_info.li_flash_size);
|
---|
| 2655 | lasat_map.size = lasat_board_info.li_flash_size;
|
---|
| 2656 |
|
---|
| 2657 | diff -Naur linux-2.6.17.4-kernel/drivers/net/declance.c linux-2.6.17.4-mips/drivers/net/declance.c
|
---|
| 2658 | --- linux-2.6.17.4-kernel/drivers/net/declance.c 2006-07-06 13:02:28.000000000 -0700
|
---|
| 2659 | +++ linux-2.6.17.4-mips/drivers/net/declance.c 2006-07-06 16:58:16.000000000 -0700
|
---|
| 2660 | @@ -704,8 +704,8 @@
|
---|
| 2661 | return IRQ_HANDLED;
|
---|
| 2662 | }
|
---|
| 2663 |
|
---|
| 2664 | -static irqreturn_t
|
---|
| 2665 | -lance_interrupt(const int irq, void *dev_id, struct pt_regs *regs)
|
---|
| 2666 | +static irqreturn_t lance_interrupt(const int irq, void *dev_id,
|
---|
| 2667 | + struct pt_regs *regs)
|
---|
| 2668 | {
|
---|
| 2669 | struct net_device *dev = (struct net_device *) dev_id;
|
---|
| 2670 | struct lance_private *lp = netdev_priv(dev);
|
---|
| 2671 | @@ -1255,7 +1255,7 @@
|
---|
| 2672 | return 0;
|
---|
| 2673 |
|
---|
| 2674 | err_out_free_dev:
|
---|
| 2675 | - kfree(dev);
|
---|
| 2676 | + free_netdev(dev);
|
---|
| 2677 |
|
---|
| 2678 | err_out:
|
---|
| 2679 | return ret;
|
---|
| 2680 | @@ -1301,6 +1301,7 @@
|
---|
| 2681 | while (root_lance_dev) {
|
---|
| 2682 | struct net_device *dev = root_lance_dev;
|
---|
| 2683 | struct lance_private *lp = netdev_priv(dev);
|
---|
| 2684 | +
|
---|
| 2685 | unregister_netdev(dev);
|
---|
| 2686 | #ifdef CONFIG_TC
|
---|
| 2687 | if (lp->slot >= 0)
|
---|
| 2688 | diff -Naur linux-2.6.17.4-kernel/drivers/net/gt64240eth.h linux-2.6.17.4-mips/drivers/net/gt64240eth.h
|
---|
| 2689 | --- linux-2.6.17.4-kernel/drivers/net/gt64240eth.h 2006-07-06 13:02:28.000000000 -0700
|
---|
| 2690 | +++ linux-2.6.17.4-mips/drivers/net/gt64240eth.h 2006-07-06 16:58:16.000000000 -0700
|
---|
| 2691 | @@ -9,6 +9,7 @@
|
---|
| 2692 | * Copyright 2000 MontaVista Software Inc.
|
---|
| 2693 | * Author: MontaVista Software, Inc.
|
---|
| 2694 | * stevel@mvista.com or support@mvista.com
|
---|
| 2695 | + * Copyright 2004, 05 Ralf Baechle (ralf@linux-mips.org)
|
---|
| 2696 | *
|
---|
| 2697 | * This program is free software; you can distribute it and/or modify it
|
---|
| 2698 | * under the terms of the GNU General Public License (Version 2) as
|
---|
| 2699 | @@ -31,6 +32,7 @@
|
---|
| 2700 | #ifndef _GT64240ETH_H
|
---|
| 2701 | #define _GT64240ETH_H
|
---|
| 2702 |
|
---|
| 2703 | +#include <linux/config.h>
|
---|
| 2704 | #include <asm/gt64240.h>
|
---|
| 2705 |
|
---|
| 2706 | #define ETHERNET_PORTS_DIFFERENCE_OFFSETS 0x400
|
---|
| 2707 | @@ -108,10 +110,10 @@
|
---|
| 2708 | #define REV_GT64240A 0x10
|
---|
| 2709 |
|
---|
| 2710 | #define GT64240ETH_READ(gp, offset) \
|
---|
| 2711 | - GT_READ((gp)->port_offset + (offset))
|
---|
| 2712 | + MV_READ((gp)->port_offset + (offset))
|
---|
| 2713 |
|
---|
| 2714 | #define GT64240ETH_WRITE(gp, offset, data) \
|
---|
| 2715 | - GT_WRITE((gp)->port_offset + (offset), (data))
|
---|
| 2716 | + MV_WRITE((gp)->port_offset + (offset), (data))
|
---|
| 2717 |
|
---|
| 2718 | #define GT64240ETH_SETBIT(gp, offset, bits) \
|
---|
| 2719 | GT64240ETH_WRITE((gp), (offset), \
|
---|
| 2720 | @@ -121,8 +123,8 @@
|
---|
| 2721 | GT64240ETH_WRITE((gp), (offset), \
|
---|
| 2722 | GT64240ETH_READ((gp), (offset)) & ~(bits))
|
---|
| 2723 |
|
---|
| 2724 | -#define GT64240_READ(ofs) GT_READ(ofs)
|
---|
| 2725 | -#define GT64240_WRITE(ofs, data) GT_WRITE((ofs), (data))
|
---|
| 2726 | +#define GT64240_READ(ofs) MV_READ(ofs)
|
---|
| 2727 | +#define GT64240_WRITE(ofs, data) MV_WRITE((ofs), (data))
|
---|
| 2728 |
|
---|
| 2729 | /* Bit definitions of the SMI Reg */
|
---|
| 2730 | enum {
|
---|
| 2731 | diff -Naur linux-2.6.17.4-kernel/drivers/net/Kconfig linux-2.6.17.4-mips/drivers/net/Kconfig
|
---|
| 2732 | --- linux-2.6.17.4-kernel/drivers/net/Kconfig 2006-07-06 13:02:28.000000000 -0700
|
---|
| 2733 | +++ linux-2.6.17.4-mips/drivers/net/Kconfig 2006-07-06 16:58:16.000000000 -0700
|
---|
| 2734 | @@ -438,6 +438,14 @@
|
---|
| 2735 | This is the driver for the onboard card of MIPS Magnum 4000,
|
---|
| 2736 | Acer PICA, Olivetti M700-10 and a few other identical OEM systems.
|
---|
| 2737 |
|
---|
| 2738 | +config GALILEO_64240_ETH
|
---|
| 2739 | + tristate "Galileo GT64240 Ethernet support"
|
---|
| 2740 | + depends on NET_ETHERNET && MOMENCO_OCELOT_G
|
---|
| 2741 | + select MII
|
---|
| 2742 | + help
|
---|
| 2743 | + This is the driver for the ethernet interfaces integrated into
|
---|
| 2744 | + the Galileo (now Marvell) GT64240 chipset.
|
---|
| 2745 | +
|
---|
| 2746 | config MIPS_GT96100ETH
|
---|
| 2747 | bool "MIPS GT96100 Ethernet support"
|
---|
| 2748 | depends on NET_ETHERNET && MIPS_GT96100
|
---|
| 2749 | @@ -452,10 +460,6 @@
|
---|
| 2750 | If you have an Alchemy Semi AU1X00 based system
|
---|
| 2751 | say Y. Otherwise, say N.
|
---|
| 2752 |
|
---|
| 2753 | -config NET_SB1250_MAC
|
---|
| 2754 | - tristate "SB1250 Ethernet support"
|
---|
| 2755 | - depends on NET_ETHERNET && SIBYTE_SB1xxx_SOC
|
---|
| 2756 | -
|
---|
| 2757 | config SGI_IOC3_ETH
|
---|
| 2758 | bool "SGI IOC3 Ethernet"
|
---|
| 2759 | depends on NET_ETHERNET && PCI && SGI_IP27
|
---|
| 2760 | @@ -494,6 +498,14 @@
|
---|
| 2761 | emulated by the MIPS Simulator.
|
---|
| 2762 | If you are not using a MIPSsim or are unsure, say N.
|
---|
| 2763 |
|
---|
| 2764 | +config MIPS_SIM_NET
|
---|
| 2765 | + tristate "MIPS simulator Network device (EXPERIMENTAL)"
|
---|
| 2766 | + depends on NETDEVICES && MIPS_SIM && EXPERIMENTAL
|
---|
| 2767 | + help
|
---|
| 2768 | + The MIPSNET device is a simple Ethernet network device which is
|
---|
| 2769 | + emulated by the MIPS Simulator.
|
---|
| 2770 | + If you are not using a MIPSsim or are unsure, say N.
|
---|
| 2771 | +
|
---|
| 2772 | config SGI_O2MACE_ETH
|
---|
| 2773 | tristate "SGI O2 MACE Fast Ethernet support"
|
---|
| 2774 | depends on NET_ETHERNET && SGI_IP32=y
|
---|
| 2775 | @@ -1993,6 +2005,10 @@
|
---|
| 2776 |
|
---|
| 2777 | If in doubt, say N.
|
---|
| 2778 |
|
---|
| 2779 | +config NET_SB1250_MAC
|
---|
| 2780 | + tristate "SB1250 Ethernet support"
|
---|
| 2781 | + depends on SIBYTE_SB1xxx_SOC
|
---|
| 2782 | +
|
---|
| 2783 | config R8169_VLAN
|
---|
| 2784 | bool "VLAN support"
|
---|
| 2785 | depends on R8169 && VLAN_8021Q
|
---|
| 2786 | @@ -2195,8 +2211,8 @@
|
---|
| 2787 | select MII
|
---|
| 2788 | help
|
---|
| 2789 | This driver supports the gigabit Ethernet on the Marvell MV643XX
|
---|
| 2790 | - chipset which is used in the Momenco Ocelot C and Jaguar ATX and
|
---|
| 2791 | - Pegasos II, amongst other PPC and MIPS boards.
|
---|
| 2792 | + chipset which is used in the Momenco Ocelot C Ocelot, Jaguar ATX
|
---|
| 2793 | + and Pegasos II, amongst other PPC and MIPS boards.
|
---|
| 2794 |
|
---|
| 2795 | config MV643XX_ETH_0
|
---|
| 2796 | bool "MV-643XX Port 0"
|
---|
| 2797 | @@ -2219,6 +2235,20 @@
|
---|
| 2798 | This enables support for Port 2 of the Marvell MV643XX Gigabit
|
---|
| 2799 | Ethernet.
|
---|
| 2800 |
|
---|
| 2801 | +config BIG_SUR_FE
|
---|
| 2802 | + bool "PMC-Sierra TITAN Fast Ethernet Support"
|
---|
| 2803 | + depends on NET_ETHERNET && PMC_BIG_SUR
|
---|
| 2804 | + help
|
---|
| 2805 | + This enables support for the the integrated ethernet of
|
---|
| 2806 | + PMC-Sierra's Big Sur SoC.
|
---|
| 2807 | +
|
---|
| 2808 | +config TITAN_GE
|
---|
| 2809 | + bool "PMC-Sierra TITAN Gigabit Ethernet Support"
|
---|
| 2810 | + depends on PMC_YOSEMITE
|
---|
| 2811 | + help
|
---|
| 2812 | + This enables support for the the integrated ethernet of
|
---|
| 2813 | + PMC-Sierra's Titan SoC.
|
---|
| 2814 | +
|
---|
| 2815 | endmenu
|
---|
| 2816 |
|
---|
| 2817 | #
|
---|
| 2818 | diff -Naur linux-2.6.17.4-kernel/drivers/net/Makefile linux-2.6.17.4-mips/drivers/net/Makefile
|
---|
| 2819 | --- linux-2.6.17.4-kernel/drivers/net/Makefile 2006-07-06 13:02:28.000000000 -0700
|
---|
| 2820 | +++ linux-2.6.17.4-mips/drivers/net/Makefile 2006-07-06 16:58:16.000000000 -0700
|
---|
| 2821 | @@ -111,6 +111,11 @@
|
---|
| 2822 |
|
---|
| 2823 | obj-$(CONFIG_MV643XX_ETH) += mv643xx_eth.o
|
---|
| 2824 |
|
---|
| 2825 | +obj-$(CONFIG_GALILEO_64240_ETH) += gt64240eth.o
|
---|
| 2826 | +obj-$(CONFIG_MV64340_ETH) += mv64340_eth.o
|
---|
| 2827 | +obj-$(CONFIG_BIG_SUR_FE) += big_sur_ge.o
|
---|
| 2828 | +obj-$(CONFIG_TITAN_GE) += titan_mdio.o titan_ge.o
|
---|
| 2829 | +
|
---|
| 2830 | obj-$(CONFIG_PPP) += ppp_generic.o slhc.o
|
---|
| 2831 | obj-$(CONFIG_PPP_ASYNC) += ppp_async.o
|
---|
| 2832 | obj-$(CONFIG_PPP_SYNC_TTY) += ppp_synctty.o
|
---|
| 2833 | diff -Naur linux-2.6.17.4-kernel/drivers/net/sb1250-mac.c linux-2.6.17.4-mips/drivers/net/sb1250-mac.c
|
---|
| 2834 | --- linux-2.6.17.4-kernel/drivers/net/sb1250-mac.c 2006-07-06 13:02:28.000000000 -0700
|
---|
| 2835 | +++ linux-2.6.17.4-mips/drivers/net/sb1250-mac.c 2006-07-06 16:58:16.000000000 -0700
|
---|
| 2836 | @@ -156,6 +156,10 @@
|
---|
| 2837 |
|
---|
| 2838 | #define NUMCACHEBLKS(x) (((x)+SMP_CACHE_BYTES-1)/SMP_CACHE_BYTES)
|
---|
| 2839 |
|
---|
| 2840 | +#define SBMAC_READCSR(t) __raw_readq((unsigned long)t)
|
---|
| 2841 | +#define SBMAC_WRITECSR(t,v) __raw_writeq(v, (unsigned long)t)
|
---|
| 2842 | +
|
---|
| 2843 | +
|
---|
| 2844 | #define SBMAC_MAX_TXDESCR 32
|
---|
| 2845 | #define SBMAC_MAX_RXDESCR 32
|
---|
| 2846 |
|
---|
| 2847 | @@ -2416,6 +2420,11 @@
|
---|
| 2848 | sc->sbm_dev->name);
|
---|
| 2849 | }
|
---|
| 2850 |
|
---|
| 2851 | + if (periph_rev >= 2) {
|
---|
| 2852 | + printk(KERN_INFO "%s: enabling TCP rcv checksum\n",
|
---|
| 2853 | + sc->sbm_dev->name);
|
---|
| 2854 | + }
|
---|
| 2855 | +
|
---|
| 2856 | /*
|
---|
| 2857 | * Display Ethernet address (this is called during the config
|
---|
| 2858 | * process so we need to finish off the config message that
|
---|
| 2859 | diff -Naur linux-2.6.17.4-kernel/drivers/scsi/dec_esp.c linux-2.6.17.4-mips/drivers/scsi/dec_esp.c
|
---|
| 2860 | --- linux-2.6.17.4-kernel/drivers/scsi/dec_esp.c 2006-07-06 13:02:28.000000000 -0700
|
---|
| 2861 | +++ linux-2.6.17.4-mips/drivers/scsi/dec_esp.c 2006-07-06 16:58:16.000000000 -0700
|
---|
| 2862 | @@ -55,7 +55,7 @@
|
---|
| 2863 |
|
---|
| 2864 | static int dma_bytes_sent(struct NCR_ESP *esp, int fifo_count);
|
---|
| 2865 | static void dma_drain(struct NCR_ESP *esp);
|
---|
| 2866 | -static int dma_can_transfer(struct NCR_ESP *esp, struct scsi_cmnd *sp);
|
---|
| 2867 | +static int dma_can_transfer(struct NCR_ESP *esp, struct scsi_cmnd * sp);
|
---|
| 2868 | static void dma_dump_state(struct NCR_ESP *esp);
|
---|
| 2869 | static void dma_init_read(struct NCR_ESP *esp, u32 vaddress, int length);
|
---|
| 2870 | static void dma_init_write(struct NCR_ESP *esp, u32 vaddress, int length);
|
---|
| 2871 | @@ -230,7 +230,7 @@
|
---|
| 2872 | mem_start = get_tc_base_addr(slot);
|
---|
| 2873 |
|
---|
| 2874 | /* Store base addr into esp struct */
|
---|
| 2875 | - esp->slot = CPHYSADDR(mem_start);
|
---|
| 2876 | + esp->slot = mem_start;
|
---|
| 2877 |
|
---|
| 2878 | esp->dregs = 0;
|
---|
| 2879 | esp->eregs = (void *)CKSEG1ADDR(mem_start +
|
---|
| 2880 | diff -Naur linux-2.6.17.4-kernel/drivers/scsi/NCR53C9x.h linux-2.6.17.4-mips/drivers/scsi/NCR53C9x.h
|
---|
| 2881 | --- linux-2.6.17.4-kernel/drivers/scsi/NCR53C9x.h 2006-07-06 13:02:28.000000000 -0700
|
---|
| 2882 | +++ linux-2.6.17.4-mips/drivers/scsi/NCR53C9x.h 2006-07-06 16:58:16.000000000 -0700
|
---|
| 2883 | @@ -145,12 +145,7 @@
|
---|
| 2884 |
|
---|
| 2885 | #ifndef MULTIPLE_PAD_SIZES
|
---|
| 2886 |
|
---|
| 2887 | -#ifdef CONFIG_CPU_HAS_WB
|
---|
| 2888 | -#include <asm/wbflush.h>
|
---|
| 2889 | -#define esp_write(__reg, __val) do{(__reg) = (__val); wbflush();} while(0)
|
---|
| 2890 | -#else
|
---|
| 2891 | -#define esp_write(__reg, __val) ((__reg) = (__val))
|
---|
| 2892 | -#endif
|
---|
| 2893 | +#define esp_write(__reg, __val) do{(__reg) = (__val); iob();} while(0)
|
---|
| 2894 | #define esp_read(__reg) (__reg)
|
---|
| 2895 |
|
---|
| 2896 | struct ESP_regs {
|
---|
| 2897 | diff -Naur linux-2.6.17.4-kernel/drivers/scsi/sgiwd93.c linux-2.6.17.4-mips/drivers/scsi/sgiwd93.c
|
---|
| 2898 | --- linux-2.6.17.4-kernel/drivers/scsi/sgiwd93.c 2006-07-06 13:02:28.000000000 -0700
|
---|
| 2899 | +++ linux-2.6.17.4-mips/drivers/scsi/sgiwd93.c 2006-07-06 16:58:16.000000000 -0700
|
---|
| 2900 | @@ -14,6 +14,7 @@
|
---|
| 2901 | #include <linux/interrupt.h>
|
---|
| 2902 | #include <linux/types.h>
|
---|
| 2903 | #include <linux/mm.h>
|
---|
| 2904 | +#include <linux/module.h>
|
---|
| 2905 | #include <linux/blkdev.h>
|
---|
| 2906 | #include <linux/delay.h>
|
---|
| 2907 | #include <linux/dma-mapping.h>
|
---|
| 2908 | @@ -197,6 +198,7 @@
|
---|
| 2909 | udelay(50);
|
---|
| 2910 | hregs->ctrl = 0;
|
---|
| 2911 | }
|
---|
| 2912 | +EXPORT_SYMBOL_GPL(sgiwd93_reset);
|
---|
| 2913 |
|
---|
| 2914 | static inline void init_hpc_chain(struct hpc_data *hd)
|
---|
| 2915 | {
|
---|
| 2916 | diff -Naur linux-2.6.17.4-kernel/drivers/serial/ip22zilog.c linux-2.6.17.4-mips/drivers/serial/ip22zilog.c
|
---|
| 2917 | --- linux-2.6.17.4-kernel/drivers/serial/ip22zilog.c 2006-07-06 13:02:28.000000000 -0700
|
---|
| 2918 | +++ linux-2.6.17.4-mips/drivers/serial/ip22zilog.c 2006-07-06 16:58:16.000000000 -0700
|
---|
| 2919 | @@ -866,6 +866,7 @@
|
---|
| 2920 | up->cflag = termios->c_cflag;
|
---|
| 2921 |
|
---|
| 2922 | ip22zilog_maybe_update_regs(up, ZILOG_CHANNEL_FROM_PORT(port));
|
---|
| 2923 | + uart_update_timeout(port, termios->c_cflag, baud);
|
---|
| 2924 |
|
---|
| 2925 | spin_unlock_irqrestore(&up->port.lock, flags);
|
---|
| 2926 | }
|
---|
| 2927 | @@ -1027,6 +1028,8 @@
|
---|
| 2928 | }
|
---|
| 2929 |
|
---|
| 2930 | con->cflag = cflag | CS8; /* 8N1 */
|
---|
| 2931 | +
|
---|
| 2932 | + uart_update_timeout(&ip22zilog_port_table[con->index].port, cflag, baud);
|
---|
| 2933 | }
|
---|
| 2934 |
|
---|
| 2935 | static int __init ip22zilog_console_setup(struct console *con, char *options)
|
---|
| 2936 | diff -Naur linux-2.6.17.4-kernel/drivers/serial/Kconfig linux-2.6.17.4-mips/drivers/serial/Kconfig
|
---|
| 2937 | --- linux-2.6.17.4-kernel/drivers/serial/Kconfig 2006-07-06 13:02:28.000000000 -0700
|
---|
| 2938 | +++ linux-2.6.17.4-mips/drivers/serial/Kconfig 2006-07-06 16:58:16.000000000 -0700
|
---|
| 2939 | @@ -647,6 +647,25 @@
|
---|
| 2940 | depends on SERIAL_SH_SCI=y
|
---|
| 2941 | select SERIAL_CORE_CONSOLE
|
---|
| 2942 |
|
---|
| 2943 | +config SERIAL_IP3106
|
---|
| 2944 | + bool "Enable IP3106 UART Support (Philips PNX 8xx0 SoCs)"
|
---|
| 2945 | + depends on MIPS && (SOC_PNX8550 || SOC_PNX8330)
|
---|
| 2946 | + select SERIAL_CORE
|
---|
| 2947 | + help
|
---|
| 2948 | + If you have a Philips SoC with an IP 3106 UART in it, such as
|
---|
| 2949 | + the PNX8550 or PNX8330 (MIPS based) and you want to use
|
---|
| 2950 | + serial ports, say Y. Otherwise, say N.
|
---|
| 2951 | +
|
---|
| 2952 | +config SERIAL_IP3106_CONSOLE
|
---|
| 2953 | + bool "Enable PNX8XX0 serial console"
|
---|
| 2954 | + depends on SERIAL_IP3106
|
---|
| 2955 | + select SERIAL_CORE_CONSOLE
|
---|
| 2956 | + help
|
---|
| 2957 | + If you have a Philips SoC with an IP 3106 UART in it, such as
|
---|
| 2958 | + the PNX8550 or PNX8330 (MIPS based) and you want to use
|
---|
| 2959 | + a serial console, say Y.
|
---|
| 2960 | + Otherwise, say N.
|
---|
| 2961 | +
|
---|
| 2962 | config SERIAL_CORE
|
---|
| 2963 | tristate
|
---|
| 2964 |
|
---|
| 2965 | diff -Naur linux-2.6.17.4-kernel/drivers/serial/Makefile linux-2.6.17.4-mips/drivers/serial/Makefile
|
---|
| 2966 | --- linux-2.6.17.4-kernel/drivers/serial/Makefile 2006-07-06 13:02:28.000000000 -0700
|
---|
| 2967 | +++ linux-2.6.17.4-mips/drivers/serial/Makefile 2006-07-06 16:58:16.000000000 -0700
|
---|
| 2968 | @@ -39,6 +39,7 @@
|
---|
| 2969 | obj-$(CONFIG_V850E_UART) += v850e_uart.o
|
---|
| 2970 | obj-$(CONFIG_SERIAL_PMACZILOG) += pmac_zilog.o
|
---|
| 2971 | obj-$(CONFIG_SERIAL_LH7A40X) += serial_lh7a40x.o
|
---|
| 2972 | +obj-$(CONFIG_SERIAL_IP3106) += ip3106_uart.o
|
---|
| 2973 | obj-$(CONFIG_SERIAL_DZ) += dz.o
|
---|
| 2974 | obj-$(CONFIG_SERIAL_SH_SCI) += sh-sci.o
|
---|
| 2975 | obj-$(CONFIG_SERIAL_SGI_L1_CONSOLE) += sn_console.o
|
---|
| 2976 | diff -Naur linux-2.6.17.4-kernel/drivers/usb/gadget/net2280.c linux-2.6.17.4-mips/drivers/usb/gadget/net2280.c
|
---|
| 2977 | --- linux-2.6.17.4-kernel/drivers/usb/gadget/net2280.c 2006-07-06 13:02:28.000000000 -0700
|
---|
| 2978 | +++ linux-2.6.17.4-mips/drivers/usb/gadget/net2280.c 2006-07-06 16:58:16.000000000 -0700
|
---|
| 2979 | @@ -468,7 +468,8 @@
|
---|
| 2980 | #elif defined(CONFIG_PPC) && !defined(CONFIG_NOT_COHERENT_CACHE)
|
---|
| 2981 | #define USE_KMALLOC
|
---|
| 2982 |
|
---|
| 2983 | -#elif defined(CONFIG_MIPS) && !defined(CONFIG_DMA_NONCOHERENT)
|
---|
| 2984 | +#elif defined(CONFIG_MIPS) && \
|
---|
| 2985 | + (defined(CONFIG_DMA_COHERENT) || defined(CONFIG_DMA_IP27))
|
---|
| 2986 | #define USE_KMALLOC
|
---|
| 2987 |
|
---|
| 2988 | /* FIXME there are other cases, including an x86-64 one ... */
|
---|
| 2989 | diff -Naur linux-2.6.17.4-kernel/drivers/usb/host/ohci-hcd.c linux-2.6.17.4-mips/drivers/usb/host/ohci-hcd.c
|
---|
| 2990 | --- linux-2.6.17.4-kernel/drivers/usb/host/ohci-hcd.c 2006-07-06 13:02:28.000000000 -0700
|
---|
| 2991 | +++ linux-2.6.17.4-mips/drivers/usb/host/ohci-hcd.c 2006-07-06 16:58:16.000000000 -0700
|
---|
| 2992 | @@ -906,6 +906,10 @@
|
---|
| 2993 | #include "ohci-au1xxx.c"
|
---|
| 2994 | #endif
|
---|
| 2995 |
|
---|
| 2996 | +#ifdef CONFIG_PNX8550
|
---|
| 2997 | +#include "ohci-pnx8550.c"
|
---|
| 2998 | +#endif
|
---|
| 2999 | +
|
---|
| 3000 | #ifdef CONFIG_USB_OHCI_HCD_PPC_SOC
|
---|
| 3001 | #include "ohci-ppc-soc.c"
|
---|
| 3002 | #endif
|
---|
| 3003 | diff -Naur linux-2.6.17.4-kernel/drivers/video/au1100fb.c linux-2.6.17.4-mips/drivers/video/au1100fb.c
|
---|
| 3004 | --- linux-2.6.17.4-kernel/drivers/video/au1100fb.c 2006-07-06 13:02:28.000000000 -0700
|
---|
| 3005 | +++ linux-2.6.17.4-mips/drivers/video/au1100fb.c 2006-07-06 16:58:16.000000000 -0700
|
---|
| 3006 | @@ -38,6 +38,7 @@
|
---|
| 3007 | * with this program; if not, write to the Free Software Foundation, Inc.,
|
---|
| 3008 | * 675 Mass Ave, Cambridge, MA 02139, USA.
|
---|
| 3009 | */
|
---|
| 3010 | +
|
---|
| 3011 | #include <linux/config.h>
|
---|
| 3012 | #include <linux/module.h>
|
---|
| 3013 | #include <linux/kernel.h>
|
---|
| 3014 | diff -Naur linux-2.6.17.4-kernel/drivers/video/Kconfig linux-2.6.17.4-mips/drivers/video/Kconfig
|
---|
| 3015 | --- linux-2.6.17.4-kernel/drivers/video/Kconfig 2006-07-06 13:02:28.000000000 -0700
|
---|
| 3016 | +++ linux-2.6.17.4-mips/drivers/video/Kconfig 2006-07-06 16:58:16.000000000 -0700
|
---|
| 3017 | @@ -1142,6 +1142,17 @@
|
---|
| 3018 | Please read the <file:Documentation/fb/README-sstfb.txt> for supported
|
---|
| 3019 | options and other important info support.
|
---|
| 3020 |
|
---|
| 3021 | +config FB_SMIVGX
|
---|
| 3022 | + tristate "Silicon Motion VoyagerGX support"
|
---|
| 3023 | + depends on FB && PCI && (MIPS || EXPERIMENTAL)
|
---|
| 3024 | + select FB_CFB_FILLRECT
|
---|
| 3025 | + select FB_CFB_COPYAREA
|
---|
| 3026 | + select FB_CFB_IMAGEBLIT
|
---|
| 3027 | + ---help---
|
---|
| 3028 | + This drivers supports SMI VoyagerGX 501 based PCI boards
|
---|
| 3029 | + The default settings drive both a CRT and LCD. The CRT
|
---|
| 3030 | + can be turned off by passing in the no_crt option
|
---|
| 3031 | +
|
---|
| 3032 | config FB_CYBLA
|
---|
| 3033 | tristate "Cyberblade/i1 support"
|
---|
| 3034 | depends on FB && PCI && X86_32 && !64BIT
|
---|
| 3035 | @@ -1206,7 +1217,25 @@
|
---|
| 3036 |
|
---|
| 3037 | config FB_AU1100
|
---|
| 3038 | bool "Au1100 LCD Driver"
|
---|
| 3039 | - depends on (FB = y) && EXPERIMENTAL && PCI && MIPS && MIPS_PB1100=y
|
---|
| 3040 | + depends on FB && MIPS && SOC_AU1100
|
---|
| 3041 | + select FB_CFB_FILLRECT
|
---|
| 3042 | + select FB_CFB_COPYAREA
|
---|
| 3043 | + select FB_CFB_IMAGEBLIT
|
---|
| 3044 | + help
|
---|
| 3045 | + This is the framebuffer driver for the AMD Au1100 SOC. It can drive
|
---|
| 3046 | + various panels and CRTs by passing in kernel cmd line option
|
---|
| 3047 | + au1100fb:panel=<name>.
|
---|
| 3048 | +
|
---|
| 3049 | +config FB_AU1200
|
---|
| 3050 | + bool "Au1200 LCD Driver"
|
---|
| 3051 | + depends on FB && MIPS && SOC_AU1200
|
---|
| 3052 | + select FB_CFB_FILLRECT
|
---|
| 3053 | + select FB_CFB_COPYAREA
|
---|
| 3054 | + select FB_CFB_IMAGEBLIT
|
---|
| 3055 | + help
|
---|
| 3056 | + This is the framebuffer driver for the AMD Au1200 SOC. It can drive
|
---|
| 3057 | + various panels and CRTs by passing in kernel cmd line option
|
---|
| 3058 | + au1200fb:panel=<name>.
|
---|
| 3059 |
|
---|
| 3060 | config FB_AU1200
|
---|
| 3061 | bool "Au1200 LCD Driver"
|
---|
| 3062 | @@ -1322,8 +1351,8 @@
|
---|
| 3063 | select FB_CFB_IMAGEBLIT
|
---|
| 3064 | help
|
---|
| 3065 | Support for the PMAGB-B TURBOchannel framebuffer card used mainly
|
---|
| 3066 | - in the MIPS-based DECstation series. The card is currently only
|
---|
| 3067 | - supported in 1280x1024x8 mode.
|
---|
| 3068 | + in the MIPS-based DECstation series. The card is currently only
|
---|
| 3069 | + supported in 1280x1024x8 mode.
|
---|
| 3070 |
|
---|
| 3071 | config FB_MAXINE
|
---|
| 3072 | bool "Maxine (Personal DECstation) onboard framebuffer support"
|
---|
| 3073 | diff -Naur linux-2.6.17.4-kernel/drivers/video/Makefile linux-2.6.17.4-mips/drivers/video/Makefile
|
---|
| 3074 | --- linux-2.6.17.4-kernel/drivers/video/Makefile 2006-07-06 13:02:28.000000000 -0700
|
---|
| 3075 | +++ linux-2.6.17.4-mips/drivers/video/Makefile 2006-07-06 16:58:16.000000000 -0700
|
---|
| 3076 | @@ -93,6 +93,7 @@
|
---|
| 3077 | obj-$(CONFIG_FB_TX3912) += tx3912fb.o
|
---|
| 3078 | obj-$(CONFIG_FB_S1D13XXX) += s1d13xxxfb.o
|
---|
| 3079 | obj-$(CONFIG_FB_IMX) += imxfb.o
|
---|
| 3080 | +obj-$(CONFIG_FB_SMIVGX) += smivgxfb.o
|
---|
| 3081 | obj-$(CONFIG_FB_S3C2410) += s3c2410fb.o
|
---|
| 3082 |
|
---|
| 3083 | # Platform or fallback drivers go here
|
---|
| 3084 | diff -Naur linux-2.6.17.4-kernel/include/asm-mips/asmmacro-32.h linux-2.6.17.4-mips/include/asm-mips/asmmacro-32.h
|
---|
| 3085 | --- linux-2.6.17.4-kernel/include/asm-mips/asmmacro-32.h 2006-07-06 13:02:28.000000000 -0700
|
---|
| 3086 | +++ linux-2.6.17.4-mips/include/asm-mips/asmmacro-32.h 2006-07-06 16:58:16.000000000 -0700
|
---|
| 3087 | @@ -12,7 +12,7 @@
|
---|
| 3088 | #include <asm/fpregdef.h>
|
---|
| 3089 | #include <asm/mipsregs.h>
|
---|
| 3090 |
|
---|
| 3091 | - .macro fpu_save_double thread status tmp1=t0 tmp2
|
---|
| 3092 | + .macro fpu_save_double thread status tmp1=t0
|
---|
| 3093 | cfc1 \tmp1, fcr31
|
---|
| 3094 | sdc1 $f0, THREAD_FPR0(\thread)
|
---|
| 3095 | sdc1 $f2, THREAD_FPR2(\thread)
|
---|
| 3096 | @@ -70,7 +70,7 @@
|
---|
| 3097 | sw \tmp, THREAD_FCR31(\thread)
|
---|
| 3098 | .endm
|
---|
| 3099 |
|
---|
| 3100 | - .macro fpu_restore_double thread tmp=t0
|
---|
| 3101 | + .macro fpu_restore_double thread status tmp=t0
|
---|
| 3102 | lw \tmp, THREAD_FCR31(\thread)
|
---|
| 3103 | ldc1 $f0, THREAD_FPR0(\thread)
|
---|
| 3104 | ldc1 $f2, THREAD_FPR2(\thread)
|
---|
| 3105 | diff -Naur linux-2.6.17.4-kernel/include/asm-mips/asmmacro-64.h linux-2.6.17.4-mips/include/asm-mips/asmmacro-64.h
|
---|
| 3106 | --- linux-2.6.17.4-kernel/include/asm-mips/asmmacro-64.h 2006-07-06 13:02:28.000000000 -0700
|
---|
| 3107 | +++ linux-2.6.17.4-mips/include/asm-mips/asmmacro-64.h 2006-07-06 16:58:16.000000000 -0700
|
---|
| 3108 | @@ -53,12 +53,12 @@
|
---|
| 3109 | sdc1 $f31, THREAD_FPR31(\thread)
|
---|
| 3110 | .endm
|
---|
| 3111 |
|
---|
| 3112 | - .macro fpu_save_double thread status tmp1 tmp2
|
---|
| 3113 | - sll \tmp2, \tmp1, 5
|
---|
| 3114 | - bgez \tmp2, 2f
|
---|
| 3115 | + .macro fpu_save_double thread status tmp
|
---|
| 3116 | + sll \tmp, \status, 5
|
---|
| 3117 | + bgez \tmp, 2f
|
---|
| 3118 | fpu_save_16odd \thread
|
---|
| 3119 | 2:
|
---|
| 3120 | - fpu_save_16even \thread \tmp1 # clobbers t1
|
---|
| 3121 | + fpu_save_16even \thread \tmp
|
---|
| 3122 | .endm
|
---|
| 3123 |
|
---|
| 3124 | .macro fpu_restore_16even thread tmp=t0
|
---|
| 3125 | @@ -101,13 +101,12 @@
|
---|
| 3126 | ldc1 $f31, THREAD_FPR31(\thread)
|
---|
| 3127 | .endm
|
---|
| 3128 |
|
---|
| 3129 | - .macro fpu_restore_double thread tmp
|
---|
| 3130 | - mfc0 t0, CP0_STATUS
|
---|
| 3131 | - sll t1, t0, 5
|
---|
| 3132 | - bgez t1, 1f # 16 register mode?
|
---|
| 3133 | + .macro fpu_restore_double thread status tmp
|
---|
| 3134 | + sll \tmp, \status, 5
|
---|
| 3135 | + bgez \tmp, 1f # 16 register mode?
|
---|
| 3136 |
|
---|
| 3137 | - fpu_restore_16odd a0
|
---|
| 3138 | -1: fpu_restore_16even a0, t0 # clobbers t0
|
---|
| 3139 | + fpu_restore_16odd \thread
|
---|
| 3140 | +1: fpu_restore_16even \thread \tmp
|
---|
| 3141 | .endm
|
---|
| 3142 |
|
---|
| 3143 | .macro cpu_save_nonscratch thread
|
---|
| 3144 | diff -Naur linux-2.6.17.4-kernel/include/asm-mips/asmmacro.h linux-2.6.17.4-mips/include/asm-mips/asmmacro.h
|
---|
| 3145 | --- linux-2.6.17.4-kernel/include/asm-mips/asmmacro.h 2006-07-06 13:02:28.000000000 -0700
|
---|
| 3146 | +++ linux-2.6.17.4-mips/include/asm-mips/asmmacro.h 2006-07-06 16:58:16.000000000 -0700
|
---|
| 3147 | @@ -27,14 +27,14 @@
|
---|
| 3148 | ori \reg, \reg, TCSTATUS_IXMT
|
---|
| 3149 | xori \reg, \reg, TCSTATUS_IXMT
|
---|
| 3150 | mtc0 \reg, CP0_TCSTATUS
|
---|
| 3151 | - ehb
|
---|
| 3152 | + _ehb
|
---|
| 3153 | .endm
|
---|
| 3154 |
|
---|
| 3155 | .macro local_irq_disable reg=t0
|
---|
| 3156 | mfc0 \reg, CP0_TCSTATUS
|
---|
| 3157 | ori \reg, \reg, TCSTATUS_IXMT
|
---|
| 3158 | mtc0 \reg, CP0_TCSTATUS
|
---|
| 3159 | - ehb
|
---|
| 3160 | + _ehb
|
---|
| 3161 | .endm
|
---|
| 3162 | #else
|
---|
| 3163 | .macro local_irq_enable reg=t0
|
---|
| 3164 | diff -Naur linux-2.6.17.4-kernel/include/asm-mips/cpu-features.h linux-2.6.17.4-mips/include/asm-mips/cpu-features.h
|
---|
| 3165 | --- linux-2.6.17.4-kernel/include/asm-mips/cpu-features.h 2006-07-06 13:02:28.000000000 -0700
|
---|
| 3166 | +++ linux-2.6.17.4-mips/include/asm-mips/cpu-features.h 2006-07-06 16:58:16.000000000 -0700
|
---|
| 3167 | @@ -144,12 +144,8 @@
|
---|
| 3168 | #define cpu_has_dsp (cpu_data[0].ases & MIPS_ASE_DSP)
|
---|
| 3169 | #endif
|
---|
| 3170 |
|
---|
| 3171 | -#ifdef CONFIG_MIPS_MT
|
---|
| 3172 | #ifndef cpu_has_mipsmt
|
---|
| 3173 | -# define cpu_has_mipsmt (cpu_data[0].ases & MIPS_ASE_MIPSMT)
|
---|
| 3174 | -#endif
|
---|
| 3175 | -#else
|
---|
| 3176 | -# define cpu_has_mipsmt 0
|
---|
| 3177 | +#define cpu_has_mipsmt (cpu_data[0].ases & MIPS_ASE_MIPSMT)
|
---|
| 3178 | #endif
|
---|
| 3179 |
|
---|
| 3180 | #ifdef CONFIG_32BIT
|
---|
| 3181 | @@ -188,19 +184,15 @@
|
---|
| 3182 | # endif
|
---|
| 3183 | #endif
|
---|
| 3184 |
|
---|
| 3185 | -#ifdef CONFIG_CPU_MIPSR2
|
---|
| 3186 | -# if defined(CONFIG_CPU_MIPSR2_IRQ_VI) && !defined(cpu_has_vint)
|
---|
| 3187 | -# define cpu_has_vint (cpu_data[0].options & MIPS_CPU_VINT)
|
---|
| 3188 | -# else
|
---|
| 3189 | -# define cpu_has_vint 0
|
---|
| 3190 | -# endif
|
---|
| 3191 | -# if defined(CONFIG_CPU_MIPSR2_IRQ_EI) && !defined(cpu_has_veic)
|
---|
| 3192 | -# define cpu_has_veic (cpu_data[0].options & MIPS_CPU_VEIC)
|
---|
| 3193 | -# else
|
---|
| 3194 | -# define cpu_has_veic 0
|
---|
| 3195 | -# endif
|
---|
| 3196 | -#else
|
---|
| 3197 | +#if defined(CONFIG_CPU_MIPSR2_IRQ_VI) && !defined(cpu_has_vint)
|
---|
| 3198 | +# define cpu_has_vint (cpu_data[0].options & MIPS_CPU_VINT)
|
---|
| 3199 | +#elif !defined(cpu_has_vint)
|
---|
| 3200 | # define cpu_has_vint 0
|
---|
| 3201 | +#endif
|
---|
| 3202 | +
|
---|
| 3203 | +#if defined(CONFIG_CPU_MIPSR2_IRQ_EI) && !defined(cpu_has_veic)
|
---|
| 3204 | +# define cpu_has_veic (cpu_data[0].options & MIPS_CPU_VEIC)
|
---|
| 3205 | +#elif !defined(cpu_has_veic)
|
---|
| 3206 | # define cpu_has_veic 0
|
---|
| 3207 | #endif
|
---|
| 3208 |
|
---|
| 3209 | diff -Naur linux-2.6.17.4-kernel/include/asm-mips/futex.h linux-2.6.17.4-mips/include/asm-mips/futex.h
|
---|
| 3210 | --- linux-2.6.17.4-kernel/include/asm-mips/futex.h 2006-07-06 13:02:28.000000000 -0700
|
---|
| 3211 | +++ linux-2.6.17.4-mips/include/asm-mips/futex.h 2006-07-06 16:58:16.000000000 -0700
|
---|
| 3212 | @@ -22,51 +22,53 @@
|
---|
| 3213 | " .set push \n" \
|
---|
| 3214 | " .set noat \n" \
|
---|
| 3215 | " .set mips3 \n" \
|
---|
| 3216 | - "1: ll %1, (%3) # __futex_atomic_op \n" \
|
---|
| 3217 | + "1: ll %1, %4 # __futex_atomic_op \n" \
|
---|
| 3218 | " .set mips0 \n" \
|
---|
| 3219 | " " insn " \n" \
|
---|
| 3220 | " .set mips3 \n" \
|
---|
| 3221 | - "2: sc $1, (%3) \n" \
|
---|
| 3222 | + "2: sc $1, %2 \n" \
|
---|
| 3223 | " beqzl $1, 1b \n" \
|
---|
| 3224 | __FUTEX_SMP_SYNC \
|
---|
| 3225 | "3: \n" \
|
---|
| 3226 | " .set pop \n" \
|
---|
| 3227 | " .set mips0 \n" \
|
---|
| 3228 | " .section .fixup,\"ax\" \n" \
|
---|
| 3229 | - "4: li %0, %5 \n" \
|
---|
| 3230 | + "4: li %0, %6 \n" \
|
---|
| 3231 | " j 2b \n" \
|
---|
| 3232 | " .previous \n" \
|
---|
| 3233 | " .section __ex_table,\"a\" \n" \
|
---|
| 3234 | " "__UA_ADDR "\t1b, 4b \n" \
|
---|
| 3235 | " "__UA_ADDR "\t2b, 4b \n" \
|
---|
| 3236 | " .previous \n" \
|
---|
| 3237 | - : "=r" (ret), "=r" (oldval) \
|
---|
| 3238 | - : "0" (0), "r" (uaddr), "Jr" (oparg), "i" (-EFAULT)); \
|
---|
| 3239 | + : "=r" (ret), "=&r" (oldval), "=R" (*uaddr) \
|
---|
| 3240 | + : "0" (0), "R" (*uaddr), "Jr" (oparg), "i" (-EFAULT) \
|
---|
| 3241 | + : "memory"); \
|
---|
| 3242 | } else if (cpu_has_llsc) { \
|
---|
| 3243 | __asm__ __volatile__( \
|
---|
| 3244 | " .set push \n" \
|
---|
| 3245 | " .set noat \n" \
|
---|
| 3246 | " .set mips3 \n" \
|
---|
| 3247 | - "1: ll %1, (%3) # __futex_atomic_op \n" \
|
---|
| 3248 | + "1: ll %1, %4 # __futex_atomic_op \n" \
|
---|
| 3249 | " .set mips0 \n" \
|
---|
| 3250 | " " insn " \n" \
|
---|
| 3251 | " .set mips3 \n" \
|
---|
| 3252 | - "2: sc $1, (%3) \n" \
|
---|
| 3253 | + "2: sc $1, %2 \n" \
|
---|
| 3254 | " beqz $1, 1b \n" \
|
---|
| 3255 | __FUTEX_SMP_SYNC \
|
---|
| 3256 | "3: \n" \
|
---|
| 3257 | " .set pop \n" \
|
---|
| 3258 | " .set mips0 \n" \
|
---|
| 3259 | " .section .fixup,\"ax\" \n" \
|
---|
| 3260 | - "4: li %0, %5 \n" \
|
---|
| 3261 | + "4: li %0, %6 \n" \
|
---|
| 3262 | " j 2b \n" \
|
---|
| 3263 | " .previous \n" \
|
---|
| 3264 | " .section __ex_table,\"a\" \n" \
|
---|
| 3265 | " "__UA_ADDR "\t1b, 4b \n" \
|
---|
| 3266 | " "__UA_ADDR "\t2b, 4b \n" \
|
---|
| 3267 | " .previous \n" \
|
---|
| 3268 | - : "=r" (ret), "=r" (oldval) \
|
---|
| 3269 | - : "0" (0), "r" (uaddr), "Jr" (oparg), "i" (-EFAULT)); \
|
---|
| 3270 | + : "=r" (ret), "=&r" (oldval), "=R" (*uaddr) \
|
---|
| 3271 | + : "0" (0), "R" (*uaddr), "Jr" (oparg), "i" (-EFAULT) \
|
---|
| 3272 | + : "memory"); \
|
---|
| 3273 | } else \
|
---|
| 3274 | ret = -ENOSYS; \
|
---|
| 3275 | }
|
---|
| 3276 | @@ -89,23 +91,23 @@
|
---|
| 3277 |
|
---|
| 3278 | switch (op) {
|
---|
| 3279 | case FUTEX_OP_SET:
|
---|
| 3280 | - __futex_atomic_op("move $1, %z4", ret, oldval, uaddr, oparg);
|
---|
| 3281 | + __futex_atomic_op("move $1, %z5", ret, oldval, uaddr, oparg);
|
---|
| 3282 | break;
|
---|
| 3283 |
|
---|
| 3284 | case FUTEX_OP_ADD:
|
---|
| 3285 | - __futex_atomic_op("addu $1, %1, %z4",
|
---|
| 3286 | + __futex_atomic_op("addu $1, %1, %z5",
|
---|
| 3287 | ret, oldval, uaddr, oparg);
|
---|
| 3288 | break;
|
---|
| 3289 | case FUTEX_OP_OR:
|
---|
| 3290 | - __futex_atomic_op("or $1, %1, %z4",
|
---|
| 3291 | + __futex_atomic_op("or $1, %1, %z5",
|
---|
| 3292 | ret, oldval, uaddr, oparg);
|
---|
| 3293 | break;
|
---|
| 3294 | case FUTEX_OP_ANDN:
|
---|
| 3295 | - __futex_atomic_op("and $1, %1, %z4",
|
---|
| 3296 | + __futex_atomic_op("and $1, %1, %z5",
|
---|
| 3297 | ret, oldval, uaddr, ~oparg);
|
---|
| 3298 | break;
|
---|
| 3299 | case FUTEX_OP_XOR:
|
---|
| 3300 | - __futex_atomic_op("xor $1, %1, %z4",
|
---|
| 3301 | + __futex_atomic_op("xor $1, %1, %z5",
|
---|
| 3302 | ret, oldval, uaddr, oparg);
|
---|
| 3303 | break;
|
---|
| 3304 | default:
|
---|
| 3305 | diff -Naur linux-2.6.17.4-kernel/include/asm-mips/hazards.h linux-2.6.17.4-mips/include/asm-mips/hazards.h
|
---|
| 3306 | --- linux-2.6.17.4-kernel/include/asm-mips/hazards.h 2006-07-06 13:02:28.000000000 -0700
|
---|
| 3307 | +++ linux-2.6.17.4-mips/include/asm-mips/hazards.h 2006-07-06 16:58:16.000000000 -0700
|
---|
| 3308 | @@ -70,10 +70,10 @@
|
---|
| 3309 | * Use a macro for ehb unless explicit support for MIPSR2 is enabled
|
---|
| 3310 | */
|
---|
| 3311 |
|
---|
| 3312 | -#define irq_enable_hazard
|
---|
| 3313 | +#define irq_enable_hazard \
|
---|
| 3314 | _ehb
|
---|
| 3315 |
|
---|
| 3316 | -#define irq_disable_hazard
|
---|
| 3317 | +#define irq_disable_hazard \
|
---|
| 3318 | _ehb
|
---|
| 3319 |
|
---|
| 3320 | #elif defined(CONFIG_CPU_R10000) || defined(CONFIG_CPU_RM9000)
|
---|
| 3321 | diff -Naur linux-2.6.17.4-kernel/include/asm-mips/io.h linux-2.6.17.4-mips/include/asm-mips/io.h
|
---|
| 3322 | --- linux-2.6.17.4-kernel/include/asm-mips/io.h 2006-07-06 13:02:28.000000000 -0700
|
---|
| 3323 | +++ linux-2.6.17.4-mips/include/asm-mips/io.h 2006-07-06 16:58:16.000000000 -0700
|
---|
| 3324 | @@ -519,34 +519,6 @@
|
---|
| 3325 | }
|
---|
| 3326 |
|
---|
| 3327 | /*
|
---|
| 3328 | - * Memory Mapped I/O
|
---|
| 3329 | - */
|
---|
| 3330 | -#define ioread8(addr) readb(addr)
|
---|
| 3331 | -#define ioread16(addr) readw(addr)
|
---|
| 3332 | -#define ioread32(addr) readl(addr)
|
---|
| 3333 | -
|
---|
| 3334 | -#define iowrite8(b,addr) writeb(b,addr)
|
---|
| 3335 | -#define iowrite16(w,addr) writew(w,addr)
|
---|
| 3336 | -#define iowrite32(l,addr) writel(l,addr)
|
---|
| 3337 | -
|
---|
| 3338 | -#define ioread8_rep(a,b,c) readsb(a,b,c)
|
---|
| 3339 | -#define ioread16_rep(a,b,c) readsw(a,b,c)
|
---|
| 3340 | -#define ioread32_rep(a,b,c) readsl(a,b,c)
|
---|
| 3341 | -
|
---|
| 3342 | -#define iowrite8_rep(a,b,c) writesb(a,b,c)
|
---|
| 3343 | -#define iowrite16_rep(a,b,c) writesw(a,b,c)
|
---|
| 3344 | -#define iowrite32_rep(a,b,c) writesl(a,b,c)
|
---|
| 3345 | -
|
---|
| 3346 | -/* Create a virtual mapping cookie for an IO port range */
|
---|
| 3347 | -extern void __iomem *ioport_map(unsigned long port, unsigned int nr);
|
---|
| 3348 | -extern void ioport_unmap(void __iomem *);
|
---|
| 3349 | -
|
---|
| 3350 | -/* Create a virtual mapping cookie for a PCI BAR (memory or IO) */
|
---|
| 3351 | -struct pci_dev;
|
---|
| 3352 | -extern void __iomem *pci_iomap(struct pci_dev *dev, int bar, unsigned long max);
|
---|
| 3353 | -extern void pci_iounmap(struct pci_dev *dev, void __iomem *);
|
---|
| 3354 | -
|
---|
| 3355 | -/*
|
---|
| 3356 | * ISA space is 'always mapped' on currently supported MIPS systems, no need
|
---|
| 3357 | * to explicitly ioremap() it. The fact that the ISA IO space is mapped
|
---|
| 3358 | * to PAGE_OFFSET is pure coincidence - it does not mean ISA values
|
---|
| 3359 | diff -Naur linux-2.6.17.4-kernel/include/asm-mips/irq.h linux-2.6.17.4-mips/include/asm-mips/irq.h
|
---|
| 3360 | --- linux-2.6.17.4-kernel/include/asm-mips/irq.h 2006-07-06 13:02:28.000000000 -0700
|
---|
| 3361 | +++ linux-2.6.17.4-mips/include/asm-mips/irq.h 2006-07-06 16:58:16.000000000 -0700
|
---|
| 3362 | @@ -77,4 +77,8 @@
|
---|
| 3363 | unsigned long hwmask);
|
---|
| 3364 | #endif /* CONFIG_MIPS_MT_SMTC */
|
---|
| 3365 |
|
---|
| 3366 | +#ifdef CONFIG_SMP
|
---|
| 3367 | +#define ARCH_HAS_IRQ_PER_CPU
|
---|
| 3368 | +#endif
|
---|
| 3369 | +
|
---|
| 3370 | #endif /* _ASM_IRQ_H */
|
---|
| 3371 | diff -Naur linux-2.6.17.4-kernel/include/asm-mips/mach-au1x00/au1xxx_ide.h linux-2.6.17.4-mips/include/asm-mips/mach-au1x00/au1xxx_ide.h
|
---|
| 3372 | --- linux-2.6.17.4-kernel/include/asm-mips/mach-au1x00/au1xxx_ide.h 2006-07-06 13:02:28.000000000 -0700
|
---|
| 3373 | +++ linux-2.6.17.4-mips/include/asm-mips/mach-au1x00/au1xxx_ide.h 2006-07-06 16:58:16.000000000 -0700
|
---|
| 3374 | @@ -84,6 +84,7 @@
|
---|
| 3375 | } _auide_hwif;
|
---|
| 3376 |
|
---|
| 3377 | #ifdef CONFIG_BLK_DEV_IDE_AU1XXX_MDMA2_DBDMA
|
---|
| 3378 | +
|
---|
| 3379 | /* HD white list */
|
---|
| 3380 | static const struct drive_list_entry dma_white_list [] = {
|
---|
| 3381 | /*
|
---|
| 3382 | diff -Naur linux-2.6.17.4-kernel/include/asm-mips/mach-mips/irq.h linux-2.6.17.4-mips/include/asm-mips/mach-mips/irq.h
|
---|
| 3383 | --- linux-2.6.17.4-kernel/include/asm-mips/mach-mips/irq.h 2006-07-06 13:02:28.000000000 -0700
|
---|
| 3384 | +++ linux-2.6.17.4-mips/include/asm-mips/mach-mips/irq.h 2006-07-06 16:58:16.000000000 -0700
|
---|
| 3385 | @@ -5,10 +5,4 @@
|
---|
| 3386 |
|
---|
| 3387 | #define NR_IRQS 256
|
---|
| 3388 |
|
---|
| 3389 | -#ifdef CONFIG_SMP
|
---|
| 3390 | -
|
---|
| 3391 | -#define ARCH_HAS_IRQ_PER_CPU
|
---|
| 3392 | -
|
---|
| 3393 | -#endif
|
---|
| 3394 | -
|
---|
| 3395 | #endif /* __ASM_MACH_MIPS_IRQ_H */
|
---|
| 3396 | diff -Naur linux-2.6.17.4-kernel/include/asm-mips/mipsregs.h linux-2.6.17.4-mips/include/asm-mips/mipsregs.h
|
---|
| 3397 | --- linux-2.6.17.4-kernel/include/asm-mips/mipsregs.h 2006-07-06 13:02:28.000000000 -0700
|
---|
| 3398 | +++ linux-2.6.17.4-mips/include/asm-mips/mipsregs.h 2006-07-06 16:58:16.000000000 -0700
|
---|
| 3399 | @@ -1462,7 +1462,8 @@
|
---|
| 3400 | static inline void __ehb(void)
|
---|
| 3401 | {
|
---|
| 3402 | __asm__ __volatile__(
|
---|
| 3403 | - " ehb \n");
|
---|
| 3404 | + " .set mips32r2 \n"
|
---|
| 3405 | + " ehb \n" " .set mips0 \n");
|
---|
| 3406 | }
|
---|
| 3407 |
|
---|
| 3408 | /*
|
---|
| 3409 | diff -Naur linux-2.6.17.4-kernel/include/asm-mips/smp.h linux-2.6.17.4-mips/include/asm-mips/smp.h
|
---|
| 3410 | --- linux-2.6.17.4-kernel/include/asm-mips/smp.h 2006-07-06 13:02:28.000000000 -0700
|
---|
| 3411 | +++ linux-2.6.17.4-mips/include/asm-mips/smp.h 2006-07-06 16:58:16.000000000 -0700
|
---|
| 3412 | @@ -114,4 +114,33 @@
|
---|
| 3413 |
|
---|
| 3414 | #endif /* CONFIG_SMP */
|
---|
| 3415 |
|
---|
| 3416 | +int smp_call_function(void(*func)(void *info), void *info, int retry, int wait);
|
---|
| 3417 | +
|
---|
| 3418 | +/*
|
---|
| 3419 | + * Special Variant of smp_call_function for use by cache functions:
|
---|
| 3420 | + *
|
---|
| 3421 | + * o No return value
|
---|
| 3422 | + * o collapses to normal function call on UP kernels
|
---|
| 3423 | + * o collapses to normal function call on systems with a single shared
|
---|
| 3424 | + * primary cache.
|
---|
| 3425 | + * o Both CONFIG_MIPS_MT_SMP and CONFIG_MIPS_MT_SMTC currently imply there
|
---|
| 3426 | + * is only one physical core.
|
---|
| 3427 | + */
|
---|
| 3428 | +static inline void __on_other_cores(void (*func) (void *info), void *info)
|
---|
| 3429 | +{
|
---|
| 3430 | +#if !defined(CONFIG_MIPS_MT_SMP) && !defined(CONFIG_MIPS_MT_SMTC)
|
---|
| 3431 | + smp_call_function(func, info, 1, 1);
|
---|
| 3432 | +#endif
|
---|
| 3433 | +}
|
---|
| 3434 | +
|
---|
| 3435 | +static inline void __on_each_core(void (*func) (void *info), void *info)
|
---|
| 3436 | +{
|
---|
| 3437 | + preempt_disable();
|
---|
| 3438 | +
|
---|
| 3439 | + __on_other_cores(func, info);
|
---|
| 3440 | + func(info);
|
---|
| 3441 | +
|
---|
| 3442 | + preempt_enable();
|
---|
| 3443 | +}
|
---|
| 3444 | +
|
---|
| 3445 | #endif /* __ASM_SMP_H */
|
---|
| 3446 | diff -Naur linux-2.6.17.4-kernel/include/asm-mips/stackframe.h linux-2.6.17.4-mips/include/asm-mips/stackframe.h
|
---|
| 3447 | --- linux-2.6.17.4-kernel/include/asm-mips/stackframe.h 2006-07-06 13:02:28.000000000 -0700
|
---|
| 3448 | +++ linux-2.6.17.4-mips/include/asm-mips/stackframe.h 2006-07-06 16:58:16.000000000 -0700
|
---|
| 3449 | @@ -305,7 +305,7 @@
|
---|
| 3450 | mfc0 v0, CP0_TCSTATUS
|
---|
| 3451 | ori v0, TCSTATUS_IXMT
|
---|
| 3452 | mtc0 v0, CP0_TCSTATUS
|
---|
| 3453 | - ehb
|
---|
| 3454 | + _ehb
|
---|
| 3455 | DMT 5 # dmt a1
|
---|
| 3456 | jal mips_ihb
|
---|
| 3457 | #endif /* CONFIG_MIPS_MT_SMTC */
|
---|
| 3458 | @@ -326,14 +326,14 @@
|
---|
| 3459 | * restore TCStatus.IXMT.
|
---|
| 3460 | */
|
---|
| 3461 | LONG_L v1, PT_TCSTATUS(sp)
|
---|
| 3462 | - ehb
|
---|
| 3463 | + _ehb
|
---|
| 3464 | mfc0 v0, CP0_TCSTATUS
|
---|
| 3465 | andi v1, TCSTATUS_IXMT
|
---|
| 3466 | /* We know that TCStatua.IXMT should be set from above */
|
---|
| 3467 | xori v0, v0, TCSTATUS_IXMT
|
---|
| 3468 | or v0, v0, v1
|
---|
| 3469 | mtc0 v0, CP0_TCSTATUS
|
---|
| 3470 | - ehb
|
---|
| 3471 | + _ehb
|
---|
| 3472 | andi a1, a1, VPECONTROL_TE
|
---|
| 3473 | beqz a1, 1f
|
---|
| 3474 | emt
|
---|
| 3475 | @@ -412,7 +412,7 @@
|
---|
| 3476 | /* Clear TKSU, leave IXMT */
|
---|
| 3477 | xori t0, 0x00001800
|
---|
| 3478 | mtc0 t0, CP0_TCSTATUS
|
---|
| 3479 | - ehb
|
---|
| 3480 | + _ehb
|
---|
| 3481 | /* We need to leave the global IE bit set, but clear EXL...*/
|
---|
| 3482 | mfc0 t0, CP0_STATUS
|
---|
| 3483 | ori t0, ST0_EXL | ST0_ERL
|
---|
| 3484 | @@ -439,7 +439,7 @@
|
---|
| 3485 | * and enable interrupts only for the
|
---|
| 3486 | * current TC, using the TCStatus register.
|
---|
| 3487 | */
|
---|
| 3488 | - ehb
|
---|
| 3489 | + _ehb
|
---|
| 3490 | mfc0 t0,CP0_TCSTATUS
|
---|
| 3491 | /* Fortunately CU 0 is in the same place in both registers */
|
---|
| 3492 | /* Set TCU0, TKSU (for later inversion) and IXMT */
|
---|
| 3493 | @@ -448,7 +448,7 @@
|
---|
| 3494 | /* Clear TKSU *and* IXMT */
|
---|
| 3495 | xori t0, 0x00001c00
|
---|
| 3496 | mtc0 t0, CP0_TCSTATUS
|
---|
| 3497 | - ehb
|
---|
| 3498 | + _ehb
|
---|
| 3499 | /* We need to leave the global IE bit set, but clear EXL...*/
|
---|
| 3500 | mfc0 t0, CP0_STATUS
|
---|
| 3501 | ori t0, ST0_EXL
|
---|
| 3502 | @@ -480,7 +480,7 @@
|
---|
| 3503 | andi v1, v0, TCSTATUS_IXMT
|
---|
| 3504 | ori v0, TCSTATUS_IXMT
|
---|
| 3505 | mtc0 v0, CP0_TCSTATUS
|
---|
| 3506 | - ehb
|
---|
| 3507 | + _ehb
|
---|
| 3508 | DMT 2 # dmt v0
|
---|
| 3509 | /*
|
---|
| 3510 | * We don't know a priori if ra is "live"
|
---|
| 3511 | @@ -496,7 +496,7 @@
|
---|
| 3512 | xori t0, 0x1e
|
---|
| 3513 | mtc0 t0, CP0_STATUS
|
---|
| 3514 | #ifdef CONFIG_MIPS_MT_SMTC
|
---|
| 3515 | - ehb
|
---|
| 3516 | + _ehb
|
---|
| 3517 | andi v0, v0, VPECONTROL_TE
|
---|
| 3518 | beqz v0, 2f
|
---|
| 3519 | nop /* delay slot */
|
---|
| 3520 | diff -Naur linux-2.6.17.4-kernel/include/asm-mips/unistd.h linux-2.6.17.4-mips/include/asm-mips/unistd.h
|
---|
| 3521 | --- linux-2.6.17.4-kernel/include/asm-mips/unistd.h 2006-07-06 13:02:28.000000000 -0700
|
---|
| 3522 | +++ linux-2.6.17.4-mips/include/asm-mips/unistd.h 2006-07-06 16:58:16.000000000 -0700
|
---|
| 3523 | @@ -326,16 +326,17 @@
|
---|
| 3524 | #define __NR_unshare (__NR_Linux + 303)
|
---|
| 3525 | #define __NR_splice (__NR_Linux + 304)
|
---|
| 3526 | #define __NR_sync_file_range (__NR_Linux + 305)
|
---|
| 3527 | +#define __NR_tee (__NR_Linux + 306)
|
---|
| 3528 |
|
---|
| 3529 | /*
|
---|
| 3530 | * Offset of the last Linux o32 flavoured syscall
|
---|
| 3531 | */
|
---|
| 3532 | -#define __NR_Linux_syscalls 305
|
---|
| 3533 | +#define __NR_Linux_syscalls 306
|
---|
| 3534 |
|
---|
| 3535 | #endif /* _MIPS_SIM == _MIPS_SIM_ABI32 */
|
---|
| 3536 |
|
---|
| 3537 | #define __NR_O32_Linux 4000
|
---|
| 3538 | -#define __NR_O32_Linux_syscalls 305
|
---|
| 3539 | +#define __NR_O32_Linux_syscalls 306
|
---|
| 3540 |
|
---|
| 3541 | #if _MIPS_SIM == _MIPS_SIM_ABI64
|
---|
| 3542 |
|
---|
| 3543 | @@ -608,16 +609,17 @@
|
---|
| 3544 | #define __NR_unshare (__NR_Linux + 262)
|
---|
| 3545 | #define __NR_splice (__NR_Linux + 263)
|
---|
| 3546 | #define __NR_sync_file_range (__NR_Linux + 264)
|
---|
| 3547 | +#define __NR_tee (__NR_Linux + 265)
|
---|
| 3548 |
|
---|
| 3549 | /*
|
---|
| 3550 | * Offset of the last Linux 64-bit flavoured syscall
|
---|
| 3551 | */
|
---|
| 3552 | -#define __NR_Linux_syscalls 264
|
---|
| 3553 | +#define __NR_Linux_syscalls 265
|
---|
| 3554 |
|
---|
| 3555 | #endif /* _MIPS_SIM == _MIPS_SIM_ABI64 */
|
---|
| 3556 |
|
---|
| 3557 | #define __NR_64_Linux 5000
|
---|
| 3558 | -#define __NR_64_Linux_syscalls 264
|
---|
| 3559 | +#define __NR_64_Linux_syscalls 265
|
---|
| 3560 |
|
---|
| 3561 | #if _MIPS_SIM == _MIPS_SIM_NABI32
|
---|
| 3562 |
|
---|
| 3563 | @@ -894,16 +896,17 @@
|
---|
| 3564 | #define __NR_unshare (__NR_Linux + 266)
|
---|
| 3565 | #define __NR_splice (__NR_Linux + 267)
|
---|
| 3566 | #define __NR_sync_file_range (__NR_Linux + 268)
|
---|
| 3567 | +#define __NR_tee (__NR_Linux + 269)
|
---|
| 3568 |
|
---|
| 3569 | /*
|
---|
| 3570 | * Offset of the last N32 flavoured syscall
|
---|
| 3571 | */
|
---|
| 3572 | -#define __NR_Linux_syscalls 268
|
---|
| 3573 | +#define __NR_Linux_syscalls 269
|
---|
| 3574 |
|
---|
| 3575 | #endif /* _MIPS_SIM == _MIPS_SIM_NABI32 */
|
---|
| 3576 |
|
---|
| 3577 | #define __NR_N32_Linux 6000
|
---|
| 3578 | -#define __NR_N32_Linux_syscalls 268
|
---|
| 3579 | +#define __NR_N32_Linux_syscalls 269
|
---|
| 3580 |
|
---|
| 3581 | #ifndef __ASSEMBLY__
|
---|
| 3582 |
|
---|
| 3583 | diff -Naur linux-2.6.17.4-kernel/include/linux/elf.h linux-2.6.17.4-mips/include/linux/elf.h
|
---|
| 3584 | --- linux-2.6.17.4-kernel/include/linux/elf.h 2006-07-06 13:02:28.000000000 -0700
|
---|
| 3585 | +++ linux-2.6.17.4-mips/include/linux/elf.h 2006-07-06 16:58:16.000000000 -0700
|
---|
| 3586 | @@ -67,7 +67,7 @@
|
---|
| 3587 |
|
---|
| 3588 | #define EM_MIPS 8 /* MIPS R3000 (officially, big-endian only) */
|
---|
| 3589 |
|
---|
| 3590 | -#define EM_MIPS_RS4_BE 10 /* MIPS R4000 big-endian */
|
---|
| 3591 | +#define EM_MIPS_RS3_LE 10 /* MIPS R3000 little-endian */
|
---|
| 3592 |
|
---|
| 3593 | #define EM_PARISC 15 /* HPPA */
|
---|
| 3594 |
|
---|
| 3595 | diff -Naur linux-2.6.17.4-kernel/include/linux/mc146818rtc.h linux-2.6.17.4-mips/include/linux/mc146818rtc.h
|
---|
| 3596 | --- linux-2.6.17.4-kernel/include/linux/mc146818rtc.h 2006-07-06 13:02:28.000000000 -0700
|
---|
| 3597 | +++ linux-2.6.17.4-mips/include/linux/mc146818rtc.h 2006-07-06 16:58:16.000000000 -0700
|
---|
| 3598 | @@ -89,4 +89,12 @@
|
---|
| 3599 | # define RTC_VRT 0x80 /* valid RAM and time */
|
---|
| 3600 | /**********************************************************************/
|
---|
| 3601 |
|
---|
| 3602 | +#ifndef RTC_IO_EXTENT
|
---|
| 3603 | +#define RTC_IO_EXTENT 0x8
|
---|
| 3604 | +#endif
|
---|
| 3605 | +
|
---|
| 3606 | +#ifndef RTC_IOMAPPED
|
---|
| 3607 | +#define RTC_IOMAPPED 1 /* Default to I/O mapping. */
|
---|
| 3608 | +#endif
|
---|
| 3609 | +
|
---|
| 3610 | #endif /* _MC146818RTC_H */
|
---|
| 3611 | diff -Naur linux-2.6.17.4-kernel/include/linux/pci_ids.h linux-2.6.17.4-mips/include/linux/pci_ids.h
|
---|
| 3612 | --- linux-2.6.17.4-kernel/include/linux/pci_ids.h 2006-07-06 13:02:28.000000000 -0700
|
---|
| 3613 | +++ linux-2.6.17.4-mips/include/linux/pci_ids.h 2006-07-06 16:58:16.000000000 -0700
|
---|
| 3614 | @@ -1569,6 +1569,9 @@
|
---|
| 3615 | #define PCI_VENDOR_ID_SATSAGEM 0x1267
|
---|
| 3616 | #define PCI_DEVICE_ID_SATSAGEM_NICCY 0x1016
|
---|
| 3617 |
|
---|
| 3618 | +#define PCI_VENDOR_ID_SILICON_MOTION 0x126f
|
---|
| 3619 | +#define PCI_DEVICE_ID_SM501_VOYAGER_GX_REV_AA 0x0501
|
---|
| 3620 | +#define PCI_DEVICE_ID_SM501_VOYAGER_GX_REV_B 0x0510
|
---|
| 3621 |
|
---|
| 3622 | #define PCI_VENDOR_ID_ENSONIQ 0x1274
|
---|
| 3623 | #define PCI_DEVICE_ID_ENSONIQ_CT5880 0x5880
|
---|
| 3624 | diff -Naur linux-2.6.17.4-kernel/include/linux/serial.h linux-2.6.17.4-mips/include/linux/serial.h
|
---|
| 3625 | --- linux-2.6.17.4-kernel/include/linux/serial.h 2006-07-06 13:02:28.000000000 -0700
|
---|
| 3626 | +++ linux-2.6.17.4-mips/include/linux/serial.h 2006-07-06 16:58:16.000000000 -0700
|
---|
| 3627 | @@ -76,7 +76,8 @@
|
---|
| 3628 | #define PORT_16654 11
|
---|
| 3629 | #define PORT_16850 12
|
---|
| 3630 | #define PORT_RSA 13 /* RSA-DV II/S card */
|
---|
| 3631 | -#define PORT_MAX 13
|
---|
| 3632 | +#define PORT_SB1250 14
|
---|
| 3633 | +#define PORT_MAX 14
|
---|
| 3634 |
|
---|
| 3635 | #define SERIAL_IO_PORT 0
|
---|
| 3636 | #define SERIAL_IO_HUB6 1
|
---|
| 3637 | diff -Naur linux-2.6.17.4-kernel/include/linux/serial_ip3106.h linux-2.6.17.4-mips/include/linux/serial_ip3106.h
|
---|
| 3638 | --- linux-2.6.17.4-kernel/include/linux/serial_ip3106.h 2006-07-06 13:02:28.000000000 -0700
|
---|
| 3639 | +++ linux-2.6.17.4-mips/include/linux/serial_ip3106.h 2006-07-06 16:58:16.000000000 -0700
|
---|
| 3640 | @@ -78,4 +78,16 @@
|
---|
| 3641 | #define IP3106_UART_FIFO_RXFIFO 0x00001F00
|
---|
| 3642 | #define IP3106_UART_FIFO_RBRTHR 0x000000FF
|
---|
| 3643 |
|
---|
| 3644 | +#define ip3106_lcr(base,port) *(volatile u32 *)(base+(port*0x1000) + 0x000)
|
---|
| 3645 | +#define ip3106_mcr(base, port) *(volatile u32 *)(base+(port*0x1000) + 0x004)
|
---|
| 3646 | +#define ip3106_baud(base, port) *(volatile u32 *)(base+(port*0x1000) + 0x008)
|
---|
| 3647 | +#define ip3106_cfg(base, port) *(volatile u32 *)(base+(port*0x1000) + 0x00C)
|
---|
| 3648 | +#define ip3106_fifo(base, port) *(volatile u32 *)(base+(port*0x1000) + 0x028)
|
---|
| 3649 | +#define ip3106_istat(base, port) *(volatile u32 *)(base+(port*0x1000) + 0xFE0)
|
---|
| 3650 | +#define ip3106_ien(base, port) *(volatile u32 *)(base+(port*0x1000) + 0xFE4)
|
---|
| 3651 | +#define ip3106_iclr(base, port) *(volatile u32 *)(base+(port*0x1000) + 0xFE8)
|
---|
| 3652 | +#define ip3106_iset(base, port) *(volatile u32 *)(base+(port*0x1000) + 0xFEC)
|
---|
| 3653 | +#define ip3106_pd(base, port) *(volatile u32 *)(base+(port*0x1000) + 0xFF4)
|
---|
| 3654 | +#define ip3106_mid(base, port) *(volatile u32 *)(base+(port*0x1000) + 0xFFC)
|
---|
| 3655 | +
|
---|
| 3656 | #endif
|
---|
| 3657 | diff -Naur linux-2.6.17.4-kernel/sound/oss/au1550_ac97.c linux-2.6.17.4-mips/sound/oss/au1550_ac97.c
|
---|
| 3658 | --- linux-2.6.17.4-kernel/sound/oss/au1550_ac97.c 2006-07-06 13:02:28.000000000 -0700
|
---|
| 3659 | +++ linux-2.6.17.4-mips/sound/oss/au1550_ac97.c 2006-07-06 16:58:16.000000000 -0700
|
---|
| 3660 | @@ -60,6 +60,7 @@
|
---|
| 3661 | #include <asm/mach-au1x00/au1000.h>
|
---|
| 3662 | #include <asm/mach-au1x00/au1xxx_psc.h>
|
---|
| 3663 | #include <asm/mach-au1x00/au1xxx_dbdma.h>
|
---|
| 3664 | +#include <asm/mach-pb1x00/pb1550.h>
|
---|
| 3665 |
|
---|
| 3666 | #undef OSS_DOCUMENTED_MIXER_SEMANTICS
|
---|
| 3667 |
|
---|
| 3668 | diff -Naur linux-2.6.17.4-kernel/sound/oss/Kconfig linux-2.6.17.4-mips/sound/oss/Kconfig
|
---|
| 3669 | --- linux-2.6.17.4-kernel/sound/oss/Kconfig 2006-07-06 13:02:28.000000000 -0700
|
---|
| 3670 | +++ linux-2.6.17.4-mips/sound/oss/Kconfig 2006-07-06 16:58:16.000000000 -0700
|
---|
| 3671 | @@ -117,6 +117,10 @@
|
---|
| 3672 | tristate "Au1550 AC97 Sound"
|
---|
| 3673 | depends on SOUND_PRIME && SOC_AU1550
|
---|
| 3674 |
|
---|
| 3675 | +config SOUND_AU1550_I2S
|
---|
| 3676 | + tristate "Au1550 I2S Sound"
|
---|
| 3677 | + depends on SOUND_PRIME && SOC_AU1550
|
---|
| 3678 | +
|
---|
| 3679 | config SOUND_TRIDENT
|
---|
| 3680 | tristate "Trident 4DWave DX/NX, SiS 7018 or ALi 5451 PCI Audio Core"
|
---|
| 3681 | depends on SOUND_PRIME && PCI
|
---|
| 3682 | diff -Naur linux-2.6.17.4-kernel/sound/oss/Makefile linux-2.6.17.4-mips/sound/oss/Makefile
|
---|
| 3683 | --- linux-2.6.17.4-kernel/sound/oss/Makefile 2006-07-06 13:02:28.000000000 -0700
|
---|
| 3684 | +++ linux-2.6.17.4-mips/sound/oss/Makefile 2006-07-06 16:58:16.000000000 -0700
|
---|
| 3685 | @@ -66,6 +66,7 @@
|
---|
| 3686 | obj-$(CONFIG_SOUND_VRC5477) += nec_vrc5477.o ac97_codec.o
|
---|
| 3687 | obj-$(CONFIG_SOUND_AU1000) += au1000.o ac97_codec.o
|
---|
| 3688 | obj-$(CONFIG_SOUND_AU1550_AC97) += au1550_ac97.o ac97_codec.o
|
---|
| 3689 | +obj-$(CONFIG_SOUND_AU1550_I2S) += au1550_i2s.o
|
---|
| 3690 | obj-$(CONFIG_SOUND_ESSSOLO1) += esssolo1.o
|
---|
| 3691 | obj-$(CONFIG_SOUND_FUSION) += cs46xx.o ac97_codec.o
|
---|
| 3692 | obj-$(CONFIG_SOUND_MAESTRO) += maestro.o
|
---|
| 3693 |
|
---|
| 3694 |
|
---|