Subversion Repositories HelenOS

Rev

Rev 2101 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 2101 Rev 2462
Line 192... Line 192...
192
fs_found:
192
fs_found:
193
    printf("%p: MPS Floating Pointer Structure\n", fs);
193
    printf("%p: MPS Floating Pointer Structure\n", fs);
194
 
194
 
195
    if (fs->config_type == 0 && fs->configuration_table) {
195
    if (fs->config_type == 0 && fs->configuration_table) {
196
        if (fs->mpfib2 >> 7) {
196
        if (fs->mpfib2 >> 7) {
197
            printf("%s: PIC mode not supported\n", __FUNCTION__);
197
            printf("%s: PIC mode not supported\n", __func__);
198
            return;
198
            return;
199
        }
199
        }
200
 
200
 
201
        ct = (struct mps_ct *)PA2KA((uintptr_t)fs->configuration_table);
201
        ct = (struct mps_ct *)PA2KA((uintptr_t)fs->configuration_table);
202
        config.cpu_count = configure_via_ct();
202
        config.cpu_count = configure_via_ct();
Line 211... Line 211...
211
{
211
{
212
    uint8_t *cur;
212
    uint8_t *cur;
213
    int i, cnt;
213
    int i, cnt;
214
       
214
       
215
    if (ct->signature != CT_SIGNATURE) {
215
    if (ct->signature != CT_SIGNATURE) {
216
        printf("%s: bad ct->signature\n", __FUNCTION__);
216
        printf("%s: bad ct->signature\n", __func__);
217
        return 1;
217
        return 1;
218
    }
218
    }
219
    if (!mps_ct_check()) {
219
    if (!mps_ct_check()) {
220
        printf("%s: bad ct checksum\n", __FUNCTION__);
220
        printf("%s: bad ct checksum\n", __func__);
221
        return 1;
221
        return 1;
222
    }
222
    }
223
    if (ct->oem_table) {
223
    if (ct->oem_table) {
224
        printf("%s: ct->oem_table not supported\n", __FUNCTION__);
224
        printf("%s: ct->oem_table not supported\n", __func__);
225
        return 1;
225
        return 1;
226
    }
226
    }
227
   
227
   
228
    l_apic = (uint32_t *)(uintptr_t)ct->l_apic;
228
    l_apic = (uint32_t *)(uintptr_t)ct->l_apic;
229
 
229
 
Line 274... Line 274...
274
            default:
274
            default:
275
                /*
275
                /*
276
                 * Something is wrong. Fallback to UP mode.
276
                 * Something is wrong. Fallback to UP mode.
277
                 */
277
                 */
278
                 
278
                 
279
                printf("%s: ct badness\n", __FUNCTION__);
279
                printf("%s: ct badness\n", __func__);
280
                return 1;
280
                return 1;
281
        }
281
        }
282
    }
282
    }
283
   
283
   
284
    /*
284
    /*
Line 291... Line 291...
291
int configure_via_default(uint8_t n)
291
int configure_via_default(uint8_t n)
292
{
292
{
293
    /*
293
    /*
294
     * Not yet implemented.
294
     * Not yet implemented.
295
     */
295
     */
296
    printf("%s: not supported\n", __FUNCTION__);
296
    printf("%s: not supported\n", __func__);
297
    return 1;
297
    return 1;
298
}
298
}
299
 
299
 
300
 
300
 
301
int ct_processor_entry(struct __processor_entry *pr)
301
int ct_processor_entry(struct __processor_entry *pr)