void sb_Late_Post(void) { AMDSBCFG sb_early_cfg; u8 data; printk(BIOS_INFO, "SB900 - Early.c - sb_Late_Post - Start.\n"); sb900_cimx_config(&sb_early_cfg); //sb_early_cfg.StdHeader.Func = SB_POWERON_INIT; //AmdSbDispatcher(&sb_early_cfg); //TODO //AMD_IMAGE_HEADER was missing, when using AmdSbDispatcher, // VerifyImage() will fail, LocateImage() take minitues to find the image. sbLatePost(&sb_early_cfg); //Set ACPI SCI IRQ to 0x9. data = CONFIG_ACPI_SCI_IRQ; outb(0x10, 0xC00); outb(data, 0xC01); outb(0x90, 0xC00); outb(data, 0xC01); if (data > 0x7) { data = inb(0x4D1); data |= (1 << (CONFIG_ACPI_SCI_IRQ - 8)); outb(data, 0x4D1); } else { data = inb(0x4D0); data |= (1 << (CONFIG_ACPI_SCI_IRQ)); outb(data, 0x4D0); } printk(BIOS_INFO, "SB900 - Early.c - sb_Late_Post - End.\n"); }
void sb_Late_Post(void) { printk(BIOS_SPEW, "sb700 %s Start\n", __func__); /* TODO: The sb700 cimx dispatcher not work yet, calling cimx API directly */ //sb_config->StdHeader.Func = SB_LATE_POST_INIT; //AmdSbDispatcher(sb_config); sbLatePost(sb_config); printk(BIOS_SPEW, "sb700 %s End\n", __func__); }