Some SM(S)C fixes and the PC87306 now handles its own keyboard controller.

This commit is contained in:
OBattler
2025-08-03 18:26:20 +02:00
parent 9dd1e0936a
commit ead6a8f8d0
10 changed files with 99 additions and 74 deletions

View File

@@ -63,7 +63,7 @@ machine_at_acerv62x_init(const machine_t *model)
pci_register_slot(0x0D, PCI_CARD_NORMAL, 2, 3, 4, 1);
device_add(&i440fx_device);
device_add(&piix3_device);
device_add_params(&fdc37c93x_device, (void *) (FDC37C935 | FDC37C93X_APM));
device_add_params(&fdc37c93x_device, (void *) (FDC37XXX5 | FDC37C93X_APM));
device_add(&sst_flash_29ee020_device);
spd_register(SPD_TYPE_SDRAM, 0x7, 128);
@@ -208,7 +208,7 @@ machine_at_spitfire_init(const machine_t *model)
pci_register_slot(0x01, PCI_CARD_AGPBRIDGE, 1, 2, 3, 4);
device_add(&i440lx_device);
device_add(&piix4e_device);
device_add_params(&fdc37c93x_device, (void *) (FDC37C935 | FDC37C93X_NORMAL | FDC37C93X_NO_NVR));
device_add_params(&fdc37c93x_device, (void *) (FDC37XXX5 | FDC37C93X_NORMAL | FDC37C93X_NO_NVR));
device_add(&intel_flash_bxt_device);
spd_register(SPD_TYPE_SDRAM, 0xF, 256);
device_add(&lm78_device); /* no reporting in BIOS */
@@ -244,7 +244,7 @@ machine_at_ma30d_init(const machine_t *model)
device_add(&i440lx_device);
device_add(&piix4e_device);
device_add(&nec_mate_unk_device);
device_add_params(&fdc37c67x_device, (void *) (FDC37C932 | FDC37C93X_370));
device_add_params(&fdc37c67x_device, (void *) (FDC37XXX2 | FDC37XXXX_370));
device_add(&intel_flash_bxt_device);
spd_register(SPD_TYPE_SDRAM, 0x7, 256);
@@ -797,7 +797,7 @@ machine_at_vei8_init(const machine_t *model)
pci_register_slot(0x01, PCI_CARD_AGPBRIDGE, 1, 2, 3, 4);
device_add(&i440zx_device);
device_add(&piix4e_device);
device_add_params(&fdc37m60x_device, (void *) (FDC37C932 | FDC37C93X_370));
device_add_params(&fdc37m60x_device, (void *) (FDC37XXX2 | FDC37XXXX_370));
device_add(ics9xxx_get(ICS9250_08));
device_add(&sst_flash_39sf020_device);
spd_register(SPD_TYPE_SDRAM, 0x3, 512);

View File

@@ -407,10 +407,9 @@ machine_at_zappa_init(const machine_t *model)
pci_register_slot(0x0E, PCI_CARD_NORMAL, 3, 4, 1, 2);
pci_register_slot(0x0F, PCI_CARD_NORMAL, 2, 3, 4, 1);
pci_register_slot(0x07, PCI_CARD_SOUTHBRIDGE, 0, 0, 0, 0);
device_add(&kbc_ps2_intel_ami_pci_device);
device_add(&i430fx_device);
device_add(&piix_device);
device_add(&pc87306_device);
device_add_params(&pc87306_device, (void *) PC8730X_AMI_MEGAKEY);
device_add(&intel_flash_bxt_ami_device);
return ret;

View File

@@ -79,7 +79,7 @@ machine_at_acerv35n_init(const machine_t *model)
device_add(&i430hx_device);
device_add(&piix3_device);
/* The chip is not marked FR but the BIOS accesses register 06h of GPIO. */
device_add_params(&fdc37c93x_device, (void *) (FDC37C935 | FDC37C93X_FR));
device_add_params(&fdc37c93x_device, (void *) (FDC37XXX5 | FDC37C93X_FR));
device_add(&sst_flash_29ee010_device);
return ret;
@@ -170,7 +170,7 @@ machine_at_m7shi_init(const machine_t *model)
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
device_add(&i430hx_device);
device_add(&piix3_device);
device_add_params(&fdc37c93x_device, (void *) (FDC37C935 | FDC37C93X_NORMAL));
device_add_params(&fdc37c93x_device, (void *) (FDC37XXX5 | FDC37C93X_NORMAL));
device_add(&intel_flash_bxt_device);
return ret;
@@ -244,8 +244,7 @@ machine_at_tc430hx_init(const machine_t *model)
device_add(&i430hx_device);
device_add(&piix3_device);
device_add(&kbc_ps2_ami_pci_device);
device_add(&pc87306_device);
device_add_params(&pc87306_device, (void *) PC8730X_AMI_MEGAKEY);
device_add(&intel_flash_bxt_ami_device);
return ret;
@@ -283,8 +282,7 @@ machine_at_infinia7200_init(const machine_t *model)
device_add(&i430hx_device);
device_add(&piix3_device);
device_add(&kbc_ps2_ami_pci_device);
device_add(&pc87306_device);
device_add_params(&pc87306_device, (void *) PC8730X_AMI_MEGAKEY);
device_add(&intel_flash_bxt_ami_device);
return ret;
@@ -342,8 +340,7 @@ machine_at_cu430hx_common_init(const machine_t *model)
device_add(&i430hx_device);
device_add(&piix3_device);
device_add(&kbc_ps2_ami_pci_device);
device_add(&pc87306_device);
device_add_params(&pc87306_device, (void *) PC8730X_AMI_MEGAKEY);
device_add(&intel_flash_bxt_ami_device);
}
@@ -415,8 +412,7 @@ machine_at_pcv90_init(const machine_t *model)
pci_register_slot(0x07, PCI_CARD_SOUTHBRIDGE, 0, 0, 0, 0);
device_add(&i430hx_device);
device_add(&piix3_device);
device_add(&kbc_ps2_ami_pci_device);
device_add(&pc87306_device);
device_add_params(&pc87306_device, (void *) PC8730X_AMI_MEGAKEY);
device_add(&intel_flash_bxt_ami_device);
return ret;
@@ -578,7 +574,7 @@ machine_at_presario2240_init(const machine_t *model)
device_add(&i430vx_device);
device_add(&piix3_device);
device_add_params(&fdc37c93x_device, (void *) (FDC37C932 | FDC37C93X_NORMAL));
device_add_params(&fdc37c93x_device, (void *) (FDC37XXX2 | FDC37C93X_NORMAL));
device_add(&sst_flash_29ee020_device);
return ret;
@@ -608,7 +604,7 @@ machine_at_presario4500_init(const machine_t *model)
device_add(&i430vx_device);
device_add(&piix3_device);
device_add_params(&fdc37c93x_device, (void *) (FDC37C931 | FDC37C93X_APM));
device_add_params(&fdc37c93x_device, (void *) (FDC37XXX1 | FDC37C93X_APM));
device_add(&sst_flash_29ee020_device);
return ret;
@@ -641,7 +637,7 @@ machine_at_dellhannibalp_init(const machine_t *model)
pci_register_slot(0x07, PCI_CARD_SOUTHBRIDGE, 0, 0, 0, 4);
device_add(&i430vx_device);
device_add(&piix3_device);
device_add_params(&fdc37c93x_device, (void *) (FDC37C932 | FDC37C93X_FR));
device_add_params(&fdc37c93x_device, (void *) (FDC37XXX2 | FDC37C93X_FR));
device_add(&intel_flash_bxt_ami_device);
return ret;
@@ -669,7 +665,7 @@ machine_at_p55va_init(const machine_t *model)
pci_register_slot(0x07, PCI_CARD_SOUTHBRIDGE, 0, 0, 0, 0);
device_add(&i430vx_device);
device_add(&piix3_device);
device_add_params(&fdc37c93x_device, (void *) (FDC37C932 | FDC37C93X_FR));
device_add_params(&fdc37c93x_device, (void *) (FDC37XXX2 | FDC37C93X_FR));
device_add(&intel_flash_bxt_device);
return ret;
@@ -697,7 +693,7 @@ machine_at_brio80xx_init(const machine_t *model)
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
device_add(&i430vx_device);
device_add(&piix3_device);
device_add_params(&fdc37c93x_device, (void *) (FDC37C935 | FDC37C93X_NORMAL | FDC37C93X_370));
device_add_params(&fdc37c93x_device, (void *) (FDC37XXX5 | FDC37C93X_NORMAL | FDC37XXXX_370));
device_add(&sst_flash_29ee020_device);
return ret;
@@ -734,8 +730,7 @@ machine_at_pb680_init(const machine_t *model)
device_add(&i430vx_device);
device_add(&piix3_device);
device_add(&kbc_ps2_ami_pci_device);
device_add(&pc87306_device);
device_add_params(&pc87306_device, (void *) PC8730X_AMI_MEGAKEY);
device_add(&intel_flash_bxt_ami_device);
return ret;
@@ -766,7 +761,7 @@ machine_at_pb810_init(const machine_t *model)
device_add(&i430vx_device);
device_add(&piix3_device);
device_add_params(&fdc37c93x_device, (void *) (FDC37C935 | FDC37C93X_NORMAL | FDC37C93X_370));
device_add_params(&fdc37c93x_device, (void *) (FDC37XXX5 | FDC37C93X_NORMAL | FDC37XXXX_370));
device_add(&intel_flash_bxt_device);
return ret;
@@ -861,7 +856,7 @@ machine_at_gw2kte_init(const machine_t *model)
device_add(&i430vx_device);
device_add(&piix3_device);
device_add_params(&fdc37c93x_device, (void *) (FDC37C932 | FDC37C93X_FR));
device_add_params(&fdc37c93x_device, (void *) (FDC37XXX2 | FDC37C93X_FR));
device_add(&intel_flash_bxt_ami_device);
return ret;
@@ -890,7 +885,7 @@ machine_at_ma23c_init(const machine_t *model)
device_add(&i430tx_device);
device_add(&piix4_device);
device_add(&nec_mate_unk_device);
device_add_params(&fdc37c67x_device, (void *) (FDC37C932 | FDC37C93X_370));
device_add_params(&fdc37c67x_device, (void *) (FDC37XXX2 | FDC37XXXX_370));
device_add(&intel_flash_bxt_device);
spd_register(SPD_TYPE_SDRAM, 0x7, 256);
@@ -1234,7 +1229,7 @@ machine_at_tomahawk_init(const machine_t *model)
pci_register_slot(0x08, PCI_CARD_NORMAL, 3, 4, 1, 2);
device_add(&i430tx_device);
device_add(&piix4_device);
device_add_params(&fdc37c67x_device, (void *) (FDC37C932 | FDC37C93X_370));
device_add_params(&fdc37c67x_device, (void *) (FDC37XXX2 | FDC37XXXX_370));
device_add(&amd_flash_29f020a_device);
spd_register(SPD_TYPE_SDRAM, 0x3, 128);
device_add(&lm78_device); /* fans: Thermal, CPU, Chassis; temperature: unused */
@@ -1632,7 +1627,7 @@ machine_at_thunderbolt_init(const machine_t *model)
pci_register_slot(0x14, PCI_CARD_NORMAL, 3, 0, 1, 2);
device_add(&i430tx_device);
device_add(&piix4_device);
device_add_params(&fdc37c93x_device, (void *) (FDC37C935 | FDC37C93X_NORMAL | FDC37C93X_NO_NVR));
device_add_params(&fdc37c93x_device, (void *) (FDC37XXX5 | FDC37C93X_NORMAL | FDC37C93X_NO_NVR));
device_add(&intel_flash_bxt_device);
spd_register(SPD_TYPE_SDRAM, 0x3, 128);

View File

@@ -106,10 +106,9 @@ machine_at_thor_common_init(const machine_t *model, int has_video)
if (has_video && (gfxcard[0] == VID_INTERNAL))
device_add(machine_get_vid_device(machine));
device_add(&kbc_ps2_intel_ami_pci_device);
device_add(&i430fx_device);
device_add(&piix_device);
device_add(&pc87306_device);
device_add_params(&pc87306_device, (void *) PC8730X_AMI_MEGAKEY);
device_add(&intel_flash_bxt_ami_device);
}
@@ -359,10 +358,9 @@ machine_at_endeavor_init(const machine_t *model)
if (sound_card_current[0] == SOUND_INTERNAL)
machine_snd = device_add(machine_get_snd_device(machine));
device_add(&kbc_ps2_intel_ami_pci_device);
device_add(&i430fx_device);
device_add(&piix_device);
device_add(&pc87306_device);
device_add_params(&pc87306_device, (void *) PC8730X_AMI_MEGAKEY);
device_add(&intel_flash_bxt_ami_device);
return ret;
@@ -457,8 +455,7 @@ machine_at_pb640_init(const machine_t *model)
if (gfxcard[0] == VID_INTERNAL)
device_add(machine_get_vid_device(machine));
device_add(&kbc_ps2_intel_ami_pci_device);
device_add(&pc87306_device);
device_add_params(&pc87306_device, (void *) PC8730X_AMI_MEGAKEY);
device_add(&intel_flash_bxt_ami_device);
return ret;
@@ -546,7 +543,7 @@ machine_at_acerm3a_init(const machine_t *model)
pci_register_slot(0x10, PCI_CARD_VIDEO, 4, 0, 0, 0);
device_add(&i430hx_device);
device_add(&piix3_device);
device_add_params(&fdc37c93x_device, (void *) (FDC37C935 | FDC37C93X_NORMAL));
device_add_params(&fdc37c93x_device, (void *) (FDC37XXX5 | FDC37C93X_NORMAL));
device_add(&sst_flash_29ee010_device);
@@ -718,8 +715,7 @@ machine_at_p55t2s_init(const machine_t *model)
pci_register_slot(0x07, PCI_CARD_SOUTHBRIDGE, 0, 0, 0, 0);
device_add(&i430hx_device);
device_add(&piix3_device);
device_add(&kbc_ps2_ami_pci_device);
device_add(&pc87306_device);
device_add_params(&pc87306_device, (void *) PC8730X_AMI_MEGAKEY);
device_add(&intel_flash_bxt_device);
return ret;
@@ -784,7 +780,7 @@ machine_at_gw2kma_init(const machine_t *model)
device_add(&i430vx_device);
device_add(&piix3_device);
device_add_params(&fdc37c93x_device, (void *) (FDC37C932 | FDC37C93X_FR));
device_add_params(&fdc37c93x_device, (void *) (FDC37XXX2 | FDC37C93X_FR));
device_add(&intel_flash_bxt_ami_device);
return ret;
@@ -945,7 +941,7 @@ machine_at_vectra54_init(const machine_t *model)
device_add(&i430fx_device);
device_add(&piix_device);
device_add_params(&fdc37c93x_device, (void *) (FDC37C932 | FDC37C93X_NORMAL));
device_add_params(&fdc37c93x_device, (void *) (FDC37XXX2 | FDC37C93X_NORMAL));
device_add(&sst_flash_29ee010_device);
return ret;

View File

@@ -188,7 +188,7 @@ machine_at_acerv60n_init(const machine_t *model)
pci_register_slot(0x0C, PCI_CARD_NORMAL, 2, 3, 4, 1);
device_add(&i440fx_device);
device_add(&piix3_device);
device_add_params(&fdc37c93x_device, (void *) (FDC37C935 | FDC37C93X_NORMAL));
device_add_params(&fdc37c93x_device, (void *) (FDC37XXX5 | FDC37C93X_NORMAL));
device_add(&sst_flash_29ee010_device);
spd_register(SPD_TYPE_SDRAM, 0x7, 128);
@@ -421,7 +421,7 @@ machine_at_m6mi_init(const machine_t *model)
pci_register_slot(0x0F, PCI_CARD_NORMAL, 4, 1, 2, 3);
device_add(&i440fx_device);
device_add(&piix3_device);
device_add_params(&fdc37c93x_device, (void *) (FDC37C935 | FDC37C93X_NORMAL));
device_add_params(&fdc37c93x_device, (void *) (FDC37XXX5 | FDC37C93X_NORMAL));
device_add(&intel_flash_bxt_device);
return ret;