Esempio n. 1
0
/****
 * Search substring within OEM Strings
 * Returns the number of the matching string, 0 otherwise
 */
int smbios_find_oem_substring(const char *substr)
{
    return 1;
	int i;
	uintptr_t addr;
	const char *oem_string;

	if (smbios_eps == 0xffff)
		return 0;

	if (smbios_eps == 0) {
        printf("SMBIOS: init...\n");
		if (!smbios_init())
			return 0;
    }

    printf("SMBIOS: find...\n");
	if (smbios_FindStructure(0xb, &addr)) { /* OEM Strings Type 11 */
		/* Search all OEM strings */
		for (i=1; i <= *((u_int8_t *)(addr + 0x4)); i++) {
            printf("SMBIOS: searching...\n");
			oem_string = smbios_get_string(addr, i);
			if ( !strncmp(oem_string, substr, strlen(substr)))
				return i;
		}
	} else
		printf("SMBIOS: No OEM String Information\n");

	return 0;
}
Esempio n. 2
0
int smbios_check_system(smbios_system_id *list)
{
    return 1;
	int i;

	if (smbios_eps == 0xffff)
		return 0;

	if (smbios_eps == 0)
		if (!smbios_init())
			return 0;
	
	for (i=0; list[i].maker; i++) {
		if ( !strcmp(list[i].maker, smbios_values.system_maker))
			if ( !strcmp(list[i].version,
					smbios_values.system_version)) {

				printf("SMBIOS: %s %s found\n",
					smbios_values.system_maker,
					smbios_values.system_version);
				return 1;	
			}
	}	
	
	return 0;
}
Esempio n. 3
0
static void
init_bios_tables(void)
{
    if (CONFIG_COREBOOT) {
        coreboot_copy_biostable();
        return;
    }
    if (usingXen()) {
        xen_copy_biostables();
        return;
    }

    create_pirtable();

    mptable_init();

    smbios_init();

    acpi_bios_init();
}
Esempio n. 4
0
void
bsp_init()
{
    serial_init();
    console_bold();
    console_puts("Starting nubbin " VERSION);
    console_reset();

    kdata_init();

    memory_map_init_finish();

    acpi_init();

    smbios_init();

    cpu_bsp_init();

    hello_user();

    /* Bounces to cpu_trampoline() on return */
}