Subversion Repositories HelenOS

Rev

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

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