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 |
|