This extends the sanity checks on the runtime segment address provided in %bx, first implemented in commit 5600955. We now allow the ROM to be placed anywhere above a000:0000 (rather than c000:0000, as before), since this is the region allowed by the PCI 3 spec. If the BIOS asks us to place the runtime image such that it would overlap with the init-time image (which is explicitly prohibited by the PCI 3 spec), then we assume that the BIOS is faulty and ignore the provided runtime segment address. Testing on a SuperMicro BIOS providing overlapping segment addresses shows that ignoring the provided runtime segment address is safe to do in these circumstances.tags/v0.9.6
|
|
||
| 190 |
|
190 |
|
| 191 |
|
191 |
|
| 192 |
|
192 |
|
| 193 |
|
|
|
|
193 |
|
|
| 194 |
|
194 |
|
| 195 |
|
|
|
|
195 |
|
|
| 196 |
|
196 |
|
| 197 |
|
|
|
|
197 |
|
|
| 198 |
|
198 |
|
| 199 |
|
199 |
|
| 200 |
|
200 |
|
|
|
||
| 205 |
|
205 |
|
| 206 |
|
206 |
|
| 207 |
|
207 |
|
| 208 |
|
|
|
|
208 |
|
|
| 209 |
|
209 |
|
| 210 |
|
210 |
|
| 211 |
|
|
|
| 212 |
|
|
|
| 213 |
|
|
|
|
211 |
|
|
|
212 |
|
|
|
213 |
|
|
|
214 |
|
|
|
215 |
|
|
|
216 |
|
|
|
217 |
|
|
|
218 |
|
|
|
219 |
|
|
|
220 |
|
|
|
221 |
|
|
|
222 |
|
|
|
223 |
|
|
|
224 |
|
|
|
225 |
|
|
| 214 |
|
226 |
|
| 215 |
|
227 |
|
| 216 |
|
228 |
|
| 217 |
|
229 |
|
| 218 |
|
|
|
|
230 |
|
|
|
231 |
|
|
| 219 |
|
232 |
|
| 220 |
|
233 |
|
| 221 |
|
|
|
|
234 |
|
|
| 222 |
|
235 |
|
| 223 |
|
236 |
|
| 224 |
|
237 |
|