Lines Matching +full:- +full:- +full:-

9  * the COPYING file in the top-level directory.
25 #include "hw/qdev-properties.h"
26 #include "system/block-backend.h"
29 #include "qemu/error-report.h"
32 #include "hw/qdev-clock.h"
36 .board_id = -1, /* device-tree-only board */
53 /* On 32-bit hosts, lower RAM to 1G because of the 2047 MB limit */
166 /* Quanta-Q71l hardware value */
204 /* Qualcomm DC-SCM hardware value */
222 * r2 = per-cpu go sign value in aspeed_write_smpboot()
246 arm_write_bootloader("aspeed.smpboot", as, info->smp_loader_start, in aspeed_write_smpboot()
256 /* info->smp_bootreg_addr */ in aspeed_reset_secondary()
259 cpu_set_pc(cs, info->smp_loader_start); in aspeed_reset_secondary()
293 * (0x0). Boots faster than execute-in-place.
298 AspeedSoCState *soc = bmc->soc; in aspeed_install_boot_rom()
301 memory_region_init_rom(&bmc->boot_rom, NULL, "aspeed.boot_rom", rom_size, in aspeed_install_boot_rom()
303 memory_region_add_subregion_overlap(&soc->spi_boot_container, 0, in aspeed_install_boot_rom()
304 &bmc->boot_rom, 1); in aspeed_install_boot_rom()
305 write_boot_rom(blk, sc->memmap[ASPEED_DEV_SPI_BOOT], in aspeed_install_boot_rom()
313 * using the -bios option. It loads the specified image into the vbootrom
320 AspeedSoCState *soc = bmc->soc; in aspeed_load_vbootrom()
329 ret = load_image_mr(filename, &soc->vbootrom); in aspeed_load_vbootrom()
354 qdev_realize_and_unref(dev, BUS(s->spi), &error_fatal); in aspeed_board_init_flashes()
374 * boot areas when booting from the flash device (or -kernel) in sdhci_attach_drive()
379 qdev_prop_set_uint64(card, "boot-partition-size", 1 * MiB); in sdhci_attach_drive()
380 qdev_prop_set_uint8(card, "boot-config", 0x1 << 3); in sdhci_attach_drive()
385 qdev_get_child_bus(DEVICE(sdhci), "sd-bus"), in sdhci_attach_drive()
392 AspeedSoCState *s = bmc->soc; in connect_serial_hds_to_uarts()
394 int uart_chosen = bmc->uart_chosen ? bmc->uart_chosen : amc->uart_default; in connect_serial_hds_to_uarts()
397 for (int i = 1, uart = sc->uarts_base; i < sc->uarts_num; uart++) { in connect_serial_hds_to_uarts()
415 bmc->soc = ASPEED_SOC(object_new(amc->soc_name)); in aspeed_machine_init()
416 object_property_add_child(OBJECT(machine), "soc", OBJECT(bmc->soc)); in aspeed_machine_init()
417 object_unref(OBJECT(bmc->soc)); in aspeed_machine_init()
418 sc = ASPEED_SOC_GET_CLASS(bmc->soc); in aspeed_machine_init()
424 object_property_set_uint(OBJECT(bmc->soc), "ram-size", machine->ram_size, in aspeed_machine_init()
427 for (i = 0; i < sc->macs_num; i++) { in aspeed_machine_init()
428 if ((amc->macs_mask & (1 << i)) && in aspeed_machine_init()
429 !qemu_configure_nic_device(DEVICE(&bmc->soc->ftgmac100[i]), in aspeed_machine_init()
435 object_property_set_int(OBJECT(bmc->soc), "hw-strap1", bmc->hw_strap1, in aspeed_machine_init()
437 object_property_set_int(OBJECT(bmc->soc), "hw-strap2", amc->hw_strap2, in aspeed_machine_init()
439 object_property_set_link(OBJECT(bmc->soc), "memory", in aspeed_machine_init()
441 object_property_set_link(OBJECT(bmc->soc), "dram", in aspeed_machine_init()
442 OBJECT(machine->ram), &error_abort); in aspeed_machine_init()
443 if (amc->sdhci_wp_inverted) { in aspeed_machine_init()
444 for (i = 0; i < bmc->soc->sdhci.num_slots; i++) { in aspeed_machine_init()
445 object_property_set_bool(OBJECT(&bmc->soc->sdhci.slots[i]), in aspeed_machine_init()
446 "wp-inverted", true, &error_abort); in aspeed_machine_init()
449 if (machine->kernel_filename) { in aspeed_machine_init()
451 * When booting with a -kernel command line there is no u-boot in aspeed_machine_init()
455 object_property_set_int(OBJECT(bmc->soc), "hw-prot-key", in aspeed_machine_init()
459 qdev_realize(DEVICE(bmc->soc), NULL, &error_abort); in aspeed_machine_init()
462 aspeed_board_init_flashes(&bmc->soc->fmc, in aspeed_machine_init()
463 bmc->fmc_model ? bmc->fmc_model : amc->fmc_model, in aspeed_machine_init()
464 amc->num_cs, 0); in aspeed_machine_init()
465 aspeed_board_init_flashes(&bmc->soc->spi[0], in aspeed_machine_init()
466 bmc->spi_model ? bmc->spi_model : amc->spi_model, in aspeed_machine_init()
467 1, amc->num_cs); in aspeed_machine_init()
470 if (machine->kernel_filename && sc->num_cpus > 1) { in aspeed_machine_init()
471 /* With no u-boot we must set up a boot stub for the secondary CPU */ in aspeed_machine_init()
483 aspeed_board_binfo.ram_size = machine->ram_size; in aspeed_machine_init()
484 aspeed_board_binfo.loader_start = sc->memmap[ASPEED_DEV_SDRAM]; in aspeed_machine_init()
486 if (amc->i2c_init) { in aspeed_machine_init()
487 amc->i2c_init(bmc); in aspeed_machine_init()
490 for (i = 0; i < bmc->soc->sdhci.num_slots && defaults_enabled(); i++) { in aspeed_machine_init()
491 sdhci_attach_drive(&bmc->soc->sdhci.slots[i], in aspeed_machine_init()
495 boot_emmc = sc->boot_from_emmc(bmc->soc); in aspeed_machine_init()
497 if (bmc->soc->emmc.num_slots && defaults_enabled()) { in aspeed_machine_init()
498 emmc0 = drive_get(IF_SD, 0, bmc->soc->sdhci.num_slots); in aspeed_machine_init()
499 sdhci_attach_drive(&bmc->soc->emmc.slots[0], emmc0, true, boot_emmc); in aspeed_machine_init()
502 if (!bmc->mmio_exec) { in aspeed_machine_init()
503 DeviceState *dev = ssi_get_cs(bmc->soc->fmc.spi, 0); in aspeed_machine_init()
507 uint64_t rom_size = memory_region_size(&bmc->soc->spi_boot); in aspeed_machine_init()
514 if (amc->vbootrom) { in aspeed_machine_init()
515 bios_name = machine->firmware ?: VBOOTROM_FILE_NAME; in aspeed_machine_init()
524 AspeedSoCState *soc = bmc->soc; in palmetto_bmc_i2c_init()
532 i2c_slave_create_simple(aspeed_i2c_get_bus(&soc->i2c, 0), "ds1338", 0x68); in palmetto_bmc_i2c_init()
534 smbus_eeprom_init_one(aspeed_i2c_get_bus(&soc->i2c, 0), 0x50, in palmetto_bmc_i2c_init()
538 dev = DEVICE(i2c_slave_create_simple(aspeed_i2c_get_bus(&soc->i2c, 2), in palmetto_bmc_i2c_init()
548 AspeedSoCState *soc = bmc->soc; in quanta_q71l_bmc_i2c_init()
551 * The quanta-q71l platform expects tmp75s which are compatible with in quanta_q71l_bmc_i2c_init()
554 i2c_slave_create_simple(aspeed_i2c_get_bus(&soc->i2c, 1), "tmp105", 0x4c); in quanta_q71l_bmc_i2c_init()
555 i2c_slave_create_simple(aspeed_i2c_get_bus(&soc->i2c, 1), "tmp105", 0x4e); in quanta_q71l_bmc_i2c_init()
556 i2c_slave_create_simple(aspeed_i2c_get_bus(&soc->i2c, 1), "tmp105", 0x4f); in quanta_q71l_bmc_i2c_init()
558 /* TODO: i2c-1: Add baseboard FRU eeprom@54 24c64 */ in quanta_q71l_bmc_i2c_init()
559 /* TODO: i2c-1: Add Frontpanel FRU eeprom@57 24c64 */ in quanta_q71l_bmc_i2c_init()
562 i2c_slave_create_simple(aspeed_i2c_get_bus(&soc->i2c, 2), "pca9546", 0x74); in quanta_q71l_bmc_i2c_init()
563 i2c_slave_create_simple(aspeed_i2c_get_bus(&soc->i2c, 2), "pca9548", 0x77); in quanta_q71l_bmc_i2c_init()
565 /* TODO: i2c-3: Add BIOS FRU eeprom@56 24c64 */ in quanta_q71l_bmc_i2c_init()
567 /* i2c-7 */ in quanta_q71l_bmc_i2c_init()
568 i2c_slave_create_simple(aspeed_i2c_get_bus(&soc->i2c, 7), "pca9546", 0x70); in quanta_q71l_bmc_i2c_init()
569 /* - i2c@0: pmbus@59 */ in quanta_q71l_bmc_i2c_init()
570 /* - i2c@1: pmbus@58 */ in quanta_q71l_bmc_i2c_init()
571 /* - i2c@2: pmbus@58 */ in quanta_q71l_bmc_i2c_init()
572 /* - i2c@3: pmbus@59 */ in quanta_q71l_bmc_i2c_init()
574 /* TODO: i2c-7: Add PDB FRU eeprom@52 */ in quanta_q71l_bmc_i2c_init()
575 /* TODO: i2c-8: Add BMC FRU eeprom@50 */ in quanta_q71l_bmc_i2c_init()
580 AspeedSoCState *soc = bmc->soc; in ast2500_evb_i2c_init()
583 smbus_eeprom_init_one(aspeed_i2c_get_bus(&soc->i2c, 3), 0x50, in ast2500_evb_i2c_init()
587 i2c_slave_create_simple(aspeed_i2c_get_bus(&soc->i2c, 7), in ast2500_evb_i2c_init()
593 AspeedSoCState *soc = bmc->soc; in ast2600_evb_i2c_init()
596 smbus_eeprom_init_one(aspeed_i2c_get_bus(&soc->i2c, 7), 0x50, in ast2600_evb_i2c_init()
600 i2c_slave_create_simple(aspeed_i2c_get_bus(&soc->i2c, 8), in ast2600_evb_i2c_init()
606 AspeedSoCState *soc = bmc->soc; in yosemitev2_bmc_i2c_init()
608 at24c_eeprom_init(aspeed_i2c_get_bus(&soc->i2c, 4), 0x51, 128 * KiB); in yosemitev2_bmc_i2c_init()
609 at24c_eeprom_init_rom(aspeed_i2c_get_bus(&soc->i2c, 8), 0x51, 128 * KiB, in yosemitev2_bmc_i2c_init()
612 i2c_slave_create_simple(aspeed_i2c_get_bus(&soc->i2c, 11), "tmp421", 0x1f); in yosemitev2_bmc_i2c_init()
613 i2c_slave_create_simple(aspeed_i2c_get_bus(&soc->i2c, 9), "tmp421", 0x4e); in yosemitev2_bmc_i2c_init()
614 i2c_slave_create_simple(aspeed_i2c_get_bus(&soc->i2c, 9), "tmp421", 0x4f); in yosemitev2_bmc_i2c_init()
620 AspeedSoCState *soc = bmc->soc; in romulus_bmc_i2c_init()
626 i2c_slave_create_simple(aspeed_i2c_get_bus(&soc->i2c, 11), "ds1338", 0x32); in romulus_bmc_i2c_init()
631 AspeedSoCState *soc = bmc->soc; in tiogapass_bmc_i2c_init()
633 at24c_eeprom_init(aspeed_i2c_get_bus(&soc->i2c, 4), 0x54, 128 * KiB); in tiogapass_bmc_i2c_init()
634 at24c_eeprom_init_rom(aspeed_i2c_get_bus(&soc->i2c, 6), 0x54, 128 * KiB, in tiogapass_bmc_i2c_init()
637 i2c_slave_create_simple(aspeed_i2c_get_bus(&soc->i2c, 8), "tmp421", 0x1f); in tiogapass_bmc_i2c_init()
638 i2c_slave_create_simple(aspeed_i2c_get_bus(&soc->i2c, 6), "tmp421", 0x4f); in tiogapass_bmc_i2c_init()
639 i2c_slave_create_simple(aspeed_i2c_get_bus(&soc->i2c, 6), "tmp421", 0x4e); in tiogapass_bmc_i2c_init()
644 i2c_slave_create_simple(aspeed_i2c_get_bus(&soc->i2c, bus_id), in create_pca9552()
650 AspeedSoCState *soc = bmc->soc; in sonorapass_bmc_i2c_init()
653 i2c_slave_create_simple(aspeed_i2c_get_bus(&soc->i2c, 2), "tmp105", 0x48); in sonorapass_bmc_i2c_init()
654 i2c_slave_create_simple(aspeed_i2c_get_bus(&soc->i2c, 2), "tmp105", 0x49); in sonorapass_bmc_i2c_init()
661 smbus_eeprom_init_one(aspeed_i2c_get_bus(&soc->i2c, 4), 0x54, in sonorapass_bmc_i2c_init()
669 i2c_slave_create_simple(aspeed_i2c_get_bus(&soc->i2c, 6), "tmp105", 0x48); in sonorapass_bmc_i2c_init()
670 i2c_slave_create_simple(aspeed_i2c_get_bus(&soc->i2c, 6), "tmp105", 0x49); in sonorapass_bmc_i2c_init()
675 smbus_eeprom_init_one(aspeed_i2c_get_bus(&soc->i2c, 8), 0x56, in sonorapass_bmc_i2c_init()
684 * - channel 3: in sonorapass_bmc_i2c_init()
685 * - tmm421 @ 0x4c in sonorapass_bmc_i2c_init()
686 * - tmp421 @ 0x4e in sonorapass_bmc_i2c_init()
687 * - tmp421 @ 0x4f in sonorapass_bmc_i2c_init()
700 {13, LED_COLOR_GREEN, "front-fault-4", GPIO_POLARITY_ACTIVE_LOW}, in witherspoon_bmc_i2c_init()
701 {14, LED_COLOR_GREEN, "front-power-3", GPIO_POLARITY_ACTIVE_LOW}, in witherspoon_bmc_i2c_init()
702 {15, LED_COLOR_GREEN, "front-id-5", GPIO_POLARITY_ACTIVE_LOW}, in witherspoon_bmc_i2c_init()
704 AspeedSoCState *soc = bmc->soc; in witherspoon_bmc_i2c_init()
713 aspeed_i2c_get_bus(&soc->i2c, 3), in witherspoon_bmc_i2c_init()
724 i2c_slave_create_simple(aspeed_i2c_get_bus(&soc->i2c, 3), "dps310", 0x76); in witherspoon_bmc_i2c_init()
725 i2c_slave_create_simple(aspeed_i2c_get_bus(&soc->i2c, 3), "max31785", 0x52); in witherspoon_bmc_i2c_init()
726 i2c_slave_create_simple(aspeed_i2c_get_bus(&soc->i2c, 4), "tmp423", 0x4c); in witherspoon_bmc_i2c_init()
727 i2c_slave_create_simple(aspeed_i2c_get_bus(&soc->i2c, 5), "tmp423", 0x4c); in witherspoon_bmc_i2c_init()
730 i2c_slave_create_simple(aspeed_i2c_get_bus(&soc->i2c, 9), TYPE_TMP105, in witherspoon_bmc_i2c_init()
737 i2c_slave_create_simple(aspeed_i2c_get_bus(&soc->i2c, 11), "ds1338", 0x32); in witherspoon_bmc_i2c_init()
739 smbus_eeprom_init_one(aspeed_i2c_get_bus(&soc->i2c, 11), 0x51, in witherspoon_bmc_i2c_init()
744 aspeed_i2c_get_bus(&soc->i2c, 11), in witherspoon_bmc_i2c_init()
751 AspeedSoCState *soc = bmc->soc; in g220a_bmc_i2c_init()
754 dev = DEVICE(i2c_slave_create_simple(aspeed_i2c_get_bus(&soc->i2c, 3), in g220a_bmc_i2c_init()
760 dev = DEVICE(i2c_slave_create_simple(aspeed_i2c_get_bus(&soc->i2c, 12), in g220a_bmc_i2c_init()
766 dev = DEVICE(i2c_slave_create_simple(aspeed_i2c_get_bus(&soc->i2c, 13), in g220a_bmc_i2c_init()
781 smbus_eeprom_init_one(aspeed_i2c_get_bus(&soc->i2c, 4), 0x57, in g220a_bmc_i2c_init()
787 AspeedSoCState *soc = bmc->soc; in fp5280g2_bmc_i2c_init()
791 at24c_eeprom_init(aspeed_i2c_get_bus(&soc->i2c, 1), 0x50, 32768); in fp5280g2_bmc_i2c_init()
794 i2c_slave_create_simple(aspeed_i2c_get_bus(&soc->i2c, 2), TYPE_TMP105, in fp5280g2_bmc_i2c_init()
796 i2c_slave_create_simple(aspeed_i2c_get_bus(&soc->i2c, 2), TYPE_TMP105, in fp5280g2_bmc_i2c_init()
799 i2c_mux = i2c_slave_create_simple(aspeed_i2c_get_bus(&soc->i2c, 2), in fp5280g2_bmc_i2c_init()
806 i2c_slave_create_simple(aspeed_i2c_get_bus(&soc->i2c, 4), "ds1338", 0x68); in fp5280g2_bmc_i2c_init()
814 AspeedSoCState *soc = bmc->soc; in rainier_bmc_i2c_init()
817 at24c_eeprom_init(aspeed_i2c_get_bus(&soc->i2c, 0), 0x51, 32 * KiB); in rainier_bmc_i2c_init()
822 i2c_slave_create_simple(aspeed_i2c_get_bus(&soc->i2c, 4), TYPE_TMP105, in rainier_bmc_i2c_init()
824 i2c_slave_create_simple(aspeed_i2c_get_bus(&soc->i2c, 4), TYPE_TMP105, in rainier_bmc_i2c_init()
826 i2c_slave_create_simple(aspeed_i2c_get_bus(&soc->i2c, 4), TYPE_TMP105, in rainier_bmc_i2c_init()
828 i2c_mux = i2c_slave_create_simple(aspeed_i2c_get_bus(&soc->i2c, 4), in rainier_bmc_i2c_init()
835 i2c_slave_create_simple(aspeed_i2c_get_bus(&soc->i2c, 5), TYPE_TMP105, in rainier_bmc_i2c_init()
837 i2c_slave_create_simple(aspeed_i2c_get_bus(&soc->i2c, 5), TYPE_TMP105, in rainier_bmc_i2c_init()
841 i2c_mux = i2c_slave_create_simple(aspeed_i2c_get_bus(&soc->i2c, 5), in rainier_bmc_i2c_init()
846 i2c_slave_create_simple(aspeed_i2c_get_bus(&soc->i2c, 6), TYPE_TMP105, in rainier_bmc_i2c_init()
848 i2c_slave_create_simple(aspeed_i2c_get_bus(&soc->i2c, 6), TYPE_TMP105, in rainier_bmc_i2c_init()
850 i2c_slave_create_simple(aspeed_i2c_get_bus(&soc->i2c, 6), TYPE_TMP105, in rainier_bmc_i2c_init()
852 i2c_mux = i2c_slave_create_simple(aspeed_i2c_get_bus(&soc->i2c, 6), in rainier_bmc_i2c_init()
865 i2c_slave_create_simple(aspeed_i2c_get_bus(&soc->i2c, 7), "dps310", 0x76); in rainier_bmc_i2c_init()
866 /* Bus 7: TODO si7021-a20@20 */ in rainier_bmc_i2c_init()
867 i2c_slave_create_simple(aspeed_i2c_get_bus(&soc->i2c, 7), TYPE_TMP105, in rainier_bmc_i2c_init()
869 i2c_slave_create_simple(aspeed_i2c_get_bus(&soc->i2c, 7), "max31785", 0x52); in rainier_bmc_i2c_init()
870 at24c_eeprom_init(aspeed_i2c_get_bus(&soc->i2c, 7), 0x50, 64 * KiB); in rainier_bmc_i2c_init()
871 at24c_eeprom_init(aspeed_i2c_get_bus(&soc->i2c, 7), 0x51, 64 * KiB); in rainier_bmc_i2c_init()
873 i2c_slave_create_simple(aspeed_i2c_get_bus(&soc->i2c, 8), TYPE_TMP105, in rainier_bmc_i2c_init()
875 i2c_slave_create_simple(aspeed_i2c_get_bus(&soc->i2c, 8), TYPE_TMP105, in rainier_bmc_i2c_init()
877 at24c_eeprom_init_rom(aspeed_i2c_get_bus(&soc->i2c, 8), 0x50, in rainier_bmc_i2c_init()
879 at24c_eeprom_init_rom(aspeed_i2c_get_bus(&soc->i2c, 8), 0x51, in rainier_bmc_i2c_init()
887 i2c_slave_create_simple(aspeed_i2c_get_bus(&soc->i2c, 9), "tmp423", 0x4c); in rainier_bmc_i2c_init()
888 i2c_slave_create_simple(aspeed_i2c_get_bus(&soc->i2c, 9), "tmp423", 0x4d); in rainier_bmc_i2c_init()
889 at24c_eeprom_init(aspeed_i2c_get_bus(&soc->i2c, 9), 0x50, 128 * KiB); in rainier_bmc_i2c_init()
891 i2c_slave_create_simple(aspeed_i2c_get_bus(&soc->i2c, 10), "tmp423", 0x4c); in rainier_bmc_i2c_init()
892 i2c_slave_create_simple(aspeed_i2c_get_bus(&soc->i2c, 10), "tmp423", 0x4d); in rainier_bmc_i2c_init()
893 at24c_eeprom_init(aspeed_i2c_get_bus(&soc->i2c, 10), 0x50, 128 * KiB); in rainier_bmc_i2c_init()
895 i2c_slave_create_simple(aspeed_i2c_get_bus(&soc->i2c, 11), TYPE_TMP105, in rainier_bmc_i2c_init()
897 i2c_slave_create_simple(aspeed_i2c_get_bus(&soc->i2c, 11), TYPE_TMP105, in rainier_bmc_i2c_init()
899 i2c_mux = i2c_slave_create_simple(aspeed_i2c_get_bus(&soc->i2c, 11), in rainier_bmc_i2c_init()
906 at24c_eeprom_init(aspeed_i2c_get_bus(&soc->i2c, 13), 0x50, 64 * KiB); in rainier_bmc_i2c_init()
909 at24c_eeprom_init(aspeed_i2c_get_bus(&soc->i2c, 14), 0x50, 64 * KiB); in rainier_bmc_i2c_init()
912 at24c_eeprom_init(aspeed_i2c_get_bus(&soc->i2c, 15), 0x50, 64 * KiB); in rainier_bmc_i2c_init()
931 AspeedSoCState *soc = bmc->soc; in fuji_bmc_i2c_init()
935 i2c[i] = aspeed_i2c_get_bus(&soc->i2c, i); in fuji_bmc_i2c_init()
1009 AspeedSoCState *soc = bmc->soc; in bletchley_bmc_i2c_init()
1015 i2c[i] = aspeed_i2c_get_bus(&soc->i2c, i); in bletchley_bmc_i2c_init()
1018 /* Bus 0 - 5 all have the same config. */ in bletchley_bmc_i2c_init()
1055 AspeedSoCState *soc = bmc->soc; in fby35_i2c_init()
1059 i2c[i] = aspeed_i2c_get_bus(&soc->i2c, i); in fby35_i2c_init()
1079 * TODO: There is a multi-master i2c connection to an AST1030 MiniBMC on in fby35_i2c_init()
1087 AspeedSoCState *soc = bmc->soc; in qcom_dc_scm_bmc_i2c_init()
1089 i2c_slave_create_simple(aspeed_i2c_get_bus(&soc->i2c, 15), "tmp105", 0x4d); in qcom_dc_scm_bmc_i2c_init()
1094 AspeedSoCState *soc = bmc->soc; in qcom_dc_scm_firework_i2c_init()
1097 /* Create the generic DC-SCM hardware */ in qcom_dc_scm_firework_i2c_init()
1103 cpuvr_mux = i2c_slave_create_simple(aspeed_i2c_get_bus(&soc->i2c, 7), in qcom_dc_scm_firework_i2c_init()
1111 therm_mux = i2c_slave_create_simple(aspeed_i2c_get_bus(&soc->i2c, 8), in qcom_dc_scm_firework_i2c_init()
1120 i2c_slave_create_simple(aspeed_i2c_get_bus(&soc->i2c, 9), "max31785", 0x52); in qcom_dc_scm_firework_i2c_init()
1121 i2c_slave_create_simple(aspeed_i2c_get_bus(&soc->i2c, 9), "max31785", 0x54); in qcom_dc_scm_firework_i2c_init()
1126 return ASPEED_MACHINE(obj)->mmio_exec; in aspeed_get_mmio_exec()
1131 ASPEED_MACHINE(obj)->mmio_exec = value; in aspeed_set_mmio_exec()
1138 ASPEED_MACHINE(obj)->mmio_exec = false; in aspeed_machine_instance_init()
1139 ASPEED_MACHINE(obj)->hw_strap1 = amc->hw_strap1; in aspeed_machine_instance_init()
1145 return g_strdup(bmc->fmc_model); in aspeed_get_fmc_model()
1152 g_free(bmc->fmc_model); in aspeed_set_fmc_model()
1153 bmc->fmc_model = g_strdup(value); in aspeed_set_fmc_model()
1159 return g_strdup(bmc->spi_model); in aspeed_get_spi_model()
1166 g_free(bmc->spi_model); in aspeed_set_spi_model()
1167 bmc->spi_model = g_strdup(value); in aspeed_set_spi_model()
1174 int uart_chosen = bmc->uart_chosen ? bmc->uart_chosen : amc->uart_default; in aspeed_get_bmc_console()
1183 AspeedSoCClass *sc = ASPEED_SOC_CLASS(object_class_by_name(amc->soc_name)); in aspeed_set_bmc_console()
1195 error_setg(errp, "\"uart\" should be in range [%d - %d]", in aspeed_set_bmc_console()
1199 bmc->uart_chosen = val + ASPEED_DEV_UART0; in aspeed_set_bmc_console()
1204 object_class_property_add_bool(oc, "execute-in-place", in aspeed_machine_class_props_init()
1207 object_class_property_set_description(oc, "execute-in-place", in aspeed_machine_class_props_init()
1210 object_class_property_add_str(oc, "bmc-console", aspeed_get_bmc_console, in aspeed_machine_class_props_init()
1212 object_class_property_set_description(oc, "bmc-console", in aspeed_machine_class_props_init()
1215 object_class_property_add_str(oc, "fmc-model", aspeed_get_fmc_model, in aspeed_machine_class_props_init()
1217 object_class_property_set_description(oc, "fmc-model", in aspeed_machine_class_props_init()
1219 object_class_property_add_str(oc, "spi-model", aspeed_get_spi_model, in aspeed_machine_class_props_init()
1221 object_class_property_set_description(oc, "spi-model", in aspeed_machine_class_props_init()
1228 AspeedSoCClass *sc = ASPEED_SOC_CLASS(object_class_by_name(amc->soc_name)); in aspeed_machine_class_init_cpus_defaults()
1230 mc->default_cpus = sc->num_cpus; in aspeed_machine_class_init_cpus_defaults()
1231 mc->min_cpus = sc->num_cpus; in aspeed_machine_class_init_cpus_defaults()
1232 mc->max_cpus = sc->num_cpus; in aspeed_machine_class_init_cpus_defaults()
1233 mc->valid_cpu_types = sc->valid_cpu_types; in aspeed_machine_class_init_cpus_defaults()
1240 return !!(bmc->hw_strap1 & SCU_AST2600_HW_STRAP_BOOT_SRC_EMMC); in aspeed_machine_ast2600_get_boot_from_emmc()
1249 bmc->hw_strap1 |= SCU_AST2600_HW_STRAP_BOOT_SRC_EMMC; in aspeed_machine_ast2600_set_boot_from_emmc()
1251 bmc->hw_strap1 &= ~SCU_AST2600_HW_STRAP_BOOT_SRC_EMMC; in aspeed_machine_ast2600_set_boot_from_emmc()
1257 object_class_property_add_bool(oc, "boot-emmc", in aspeed_machine_ast2600_class_emmc_init()
1260 object_class_property_set_description(oc, "boot-emmc", in aspeed_machine_ast2600_class_emmc_init()
1269 mc->init = aspeed_machine_init; in aspeed_machine_class_init()
1270 mc->no_floppy = 1; in aspeed_machine_class_init()
1271 mc->no_cdrom = 1; in aspeed_machine_class_init()
1272 mc->no_parallel = 1; in aspeed_machine_class_init()
1273 mc->default_ram_id = "ram"; in aspeed_machine_class_init()
1274 amc->macs_mask = ASPEED_MAC0_ON; in aspeed_machine_class_init()
1275 amc->uart_default = ASPEED_DEV_UART5; in aspeed_machine_class_init()
1286 mc->desc = "OpenPOWER Palmetto BMC (ARM926EJ-S)"; in aspeed_machine_palmetto_class_init()
1287 amc->soc_name = "ast2400-a1"; in aspeed_machine_palmetto_class_init()
1288 amc->hw_strap1 = PALMETTO_BMC_HW_STRAP1; in aspeed_machine_palmetto_class_init()
1289 amc->fmc_model = "n25q256a"; in aspeed_machine_palmetto_class_init()
1290 amc->spi_model = "mx25l25635f"; in aspeed_machine_palmetto_class_init()
1291 amc->num_cs = 1; in aspeed_machine_palmetto_class_init()
1292 amc->i2c_init = palmetto_bmc_i2c_init; in aspeed_machine_palmetto_class_init()
1293 mc->auto_create_sdcard = true; in aspeed_machine_palmetto_class_init()
1294 mc->default_ram_size = 256 * MiB; in aspeed_machine_palmetto_class_init()
1304 mc->desc = "Quanta-Q71l BMC (ARM926EJ-S)"; in aspeed_machine_quanta_q71l_class_init()
1305 amc->soc_name = "ast2400-a1"; in aspeed_machine_quanta_q71l_class_init()
1306 amc->hw_strap1 = QUANTA_Q71L_BMC_HW_STRAP1; in aspeed_machine_quanta_q71l_class_init()
1307 amc->fmc_model = "n25q256a"; in aspeed_machine_quanta_q71l_class_init()
1308 amc->spi_model = "mx25l25635e"; in aspeed_machine_quanta_q71l_class_init()
1309 amc->num_cs = 1; in aspeed_machine_quanta_q71l_class_init()
1310 amc->i2c_init = quanta_q71l_bmc_i2c_init; in aspeed_machine_quanta_q71l_class_init()
1311 mc->auto_create_sdcard = true; in aspeed_machine_quanta_q71l_class_init()
1312 mc->default_ram_size = 128 * MiB; in aspeed_machine_quanta_q71l_class_init()
1322 mc->desc = "Supermicro X11 BMC (ARM926EJ-S)"; in aspeed_machine_supermicrox11_bmc_class_init()
1323 amc->soc_name = "ast2400-a1"; in aspeed_machine_supermicrox11_bmc_class_init()
1324 amc->hw_strap1 = SUPERMICROX11_BMC_HW_STRAP1; in aspeed_machine_supermicrox11_bmc_class_init()
1325 amc->fmc_model = "mx25l25635e"; in aspeed_machine_supermicrox11_bmc_class_init()
1326 amc->spi_model = "mx25l25635e"; in aspeed_machine_supermicrox11_bmc_class_init()
1327 amc->num_cs = 1; in aspeed_machine_supermicrox11_bmc_class_init()
1328 amc->macs_mask = ASPEED_MAC0_ON | ASPEED_MAC1_ON; in aspeed_machine_supermicrox11_bmc_class_init()
1329 amc->i2c_init = palmetto_bmc_i2c_init; in aspeed_machine_supermicrox11_bmc_class_init()
1330 mc->auto_create_sdcard = true; in aspeed_machine_supermicrox11_bmc_class_init()
1331 mc->default_ram_size = 256 * MiB; in aspeed_machine_supermicrox11_bmc_class_init()
1341 mc->desc = "Supermicro X11 SPI BMC (ARM1176)"; in aspeed_machine_supermicro_x11spi_bmc_class_init()
1342 amc->soc_name = "ast2500-a1"; in aspeed_machine_supermicro_x11spi_bmc_class_init()
1343 amc->hw_strap1 = SUPERMICRO_X11SPI_BMC_HW_STRAP1; in aspeed_machine_supermicro_x11spi_bmc_class_init()
1344 amc->fmc_model = "mx25l25635e"; in aspeed_machine_supermicro_x11spi_bmc_class_init()
1345 amc->spi_model = "mx25l25635e"; in aspeed_machine_supermicro_x11spi_bmc_class_init()
1346 amc->num_cs = 1; in aspeed_machine_supermicro_x11spi_bmc_class_init()
1347 amc->macs_mask = ASPEED_MAC0_ON | ASPEED_MAC1_ON; in aspeed_machine_supermicro_x11spi_bmc_class_init()
1348 amc->i2c_init = palmetto_bmc_i2c_init; in aspeed_machine_supermicro_x11spi_bmc_class_init()
1349 mc->auto_create_sdcard = true; in aspeed_machine_supermicro_x11spi_bmc_class_init()
1350 mc->default_ram_size = 512 * MiB; in aspeed_machine_supermicro_x11spi_bmc_class_init()
1360 mc->desc = "Aspeed AST2500 EVB (ARM1176)"; in aspeed_machine_ast2500_evb_class_init()
1361 amc->soc_name = "ast2500-a1"; in aspeed_machine_ast2500_evb_class_init()
1362 amc->hw_strap1 = AST2500_EVB_HW_STRAP1; in aspeed_machine_ast2500_evb_class_init()
1363 amc->fmc_model = "mx25l25635e"; in aspeed_machine_ast2500_evb_class_init()
1364 amc->spi_model = "mx25l25635f"; in aspeed_machine_ast2500_evb_class_init()
1365 amc->num_cs = 1; in aspeed_machine_ast2500_evb_class_init()
1366 amc->i2c_init = ast2500_evb_i2c_init; in aspeed_machine_ast2500_evb_class_init()
1367 mc->auto_create_sdcard = true; in aspeed_machine_ast2500_evb_class_init()
1368 mc->default_ram_size = 512 * MiB; in aspeed_machine_ast2500_evb_class_init()
1378 mc->desc = "Facebook YosemiteV2 BMC (ARM1176)"; in aspeed_machine_yosemitev2_class_init()
1379 amc->soc_name = "ast2500-a1"; in aspeed_machine_yosemitev2_class_init()
1380 amc->hw_strap1 = AST2500_EVB_HW_STRAP1; in aspeed_machine_yosemitev2_class_init()
1381 amc->hw_strap2 = 0; in aspeed_machine_yosemitev2_class_init()
1382 amc->fmc_model = "n25q256a"; in aspeed_machine_yosemitev2_class_init()
1383 amc->spi_model = "mx25l25635e"; in aspeed_machine_yosemitev2_class_init()
1384 amc->num_cs = 2; in aspeed_machine_yosemitev2_class_init()
1385 amc->i2c_init = yosemitev2_bmc_i2c_init; in aspeed_machine_yosemitev2_class_init()
1386 mc->auto_create_sdcard = true; in aspeed_machine_yosemitev2_class_init()
1387 mc->default_ram_size = 512 * MiB; in aspeed_machine_yosemitev2_class_init()
1397 mc->desc = "OpenPOWER Romulus BMC (ARM1176)"; in aspeed_machine_romulus_class_init()
1398 amc->soc_name = "ast2500-a1"; in aspeed_machine_romulus_class_init()
1399 amc->hw_strap1 = ROMULUS_BMC_HW_STRAP1; in aspeed_machine_romulus_class_init()
1400 amc->fmc_model = "n25q256a"; in aspeed_machine_romulus_class_init()
1401 amc->spi_model = "mx66l1g45g"; in aspeed_machine_romulus_class_init()
1402 amc->num_cs = 2; in aspeed_machine_romulus_class_init()
1403 amc->i2c_init = romulus_bmc_i2c_init; in aspeed_machine_romulus_class_init()
1404 mc->auto_create_sdcard = true; in aspeed_machine_romulus_class_init()
1405 mc->default_ram_size = 512 * MiB; in aspeed_machine_romulus_class_init()
1415 mc->desc = "Facebook Tiogapass BMC (ARM1176)"; in aspeed_machine_tiogapass_class_init()
1416 amc->soc_name = "ast2500-a1"; in aspeed_machine_tiogapass_class_init()
1417 amc->hw_strap1 = AST2500_EVB_HW_STRAP1; in aspeed_machine_tiogapass_class_init()
1418 amc->hw_strap2 = 0; in aspeed_machine_tiogapass_class_init()
1419 amc->fmc_model = "n25q256a"; in aspeed_machine_tiogapass_class_init()
1420 amc->spi_model = "mx25l25635e"; in aspeed_machine_tiogapass_class_init()
1421 amc->num_cs = 2; in aspeed_machine_tiogapass_class_init()
1422 amc->i2c_init = tiogapass_bmc_i2c_init; in aspeed_machine_tiogapass_class_init()
1423 mc->auto_create_sdcard = true; in aspeed_machine_tiogapass_class_init()
1424 mc->default_ram_size = 1 * GiB; in aspeed_machine_tiogapass_class_init()
1434 mc->desc = "OCP SonoraPass BMC (ARM1176)"; in aspeed_machine_sonorapass_class_init()
1435 amc->soc_name = "ast2500-a1"; in aspeed_machine_sonorapass_class_init()
1436 amc->hw_strap1 = SONORAPASS_BMC_HW_STRAP1; in aspeed_machine_sonorapass_class_init()
1437 amc->fmc_model = "mx66l1g45g"; in aspeed_machine_sonorapass_class_init()
1438 amc->spi_model = "mx66l1g45g"; in aspeed_machine_sonorapass_class_init()
1439 amc->num_cs = 2; in aspeed_machine_sonorapass_class_init()
1440 amc->i2c_init = sonorapass_bmc_i2c_init; in aspeed_machine_sonorapass_class_init()
1441 mc->auto_create_sdcard = true; in aspeed_machine_sonorapass_class_init()
1442 mc->default_ram_size = 512 * MiB; in aspeed_machine_sonorapass_class_init()
1452 mc->desc = "OpenPOWER Witherspoon BMC (ARM1176)"; in aspeed_machine_witherspoon_class_init()
1453 amc->soc_name = "ast2500-a1"; in aspeed_machine_witherspoon_class_init()
1454 amc->hw_strap1 = WITHERSPOON_BMC_HW_STRAP1; in aspeed_machine_witherspoon_class_init()
1455 amc->fmc_model = "mx25l25635f"; in aspeed_machine_witherspoon_class_init()
1456 amc->spi_model = "mx66l1g45g"; in aspeed_machine_witherspoon_class_init()
1457 amc->num_cs = 2; in aspeed_machine_witherspoon_class_init()
1458 amc->i2c_init = witherspoon_bmc_i2c_init; in aspeed_machine_witherspoon_class_init()
1459 mc->auto_create_sdcard = true; in aspeed_machine_witherspoon_class_init()
1460 mc->default_ram_size = 512 * MiB; in aspeed_machine_witherspoon_class_init()
1470 mc->desc = "Aspeed AST2600 EVB (Cortex-A7)"; in aspeed_machine_ast2600_evb_class_init()
1471 amc->soc_name = "ast2600-a3"; in aspeed_machine_ast2600_evb_class_init()
1472 amc->hw_strap1 = AST2600_EVB_HW_STRAP1; in aspeed_machine_ast2600_evb_class_init()
1473 amc->hw_strap2 = AST2600_EVB_HW_STRAP2; in aspeed_machine_ast2600_evb_class_init()
1474 amc->fmc_model = "mx66u51235f"; in aspeed_machine_ast2600_evb_class_init()
1475 amc->spi_model = "mx66u51235f"; in aspeed_machine_ast2600_evb_class_init()
1476 amc->num_cs = 1; in aspeed_machine_ast2600_evb_class_init()
1477 amc->macs_mask = ASPEED_MAC0_ON | ASPEED_MAC1_ON | ASPEED_MAC2_ON | in aspeed_machine_ast2600_evb_class_init()
1479 amc->sdhci_wp_inverted = true; in aspeed_machine_ast2600_evb_class_init()
1480 amc->i2c_init = ast2600_evb_i2c_init; in aspeed_machine_ast2600_evb_class_init()
1481 mc->auto_create_sdcard = true; in aspeed_machine_ast2600_evb_class_init()
1482 mc->default_ram_size = 1 * GiB; in aspeed_machine_ast2600_evb_class_init()
1492 mc->desc = "Bytedance G220A BMC (ARM1176)"; in aspeed_machine_g220a_class_init()
1493 amc->soc_name = "ast2500-a1"; in aspeed_machine_g220a_class_init()
1494 amc->hw_strap1 = G220A_BMC_HW_STRAP1; in aspeed_machine_g220a_class_init()
1495 amc->fmc_model = "n25q512a"; in aspeed_machine_g220a_class_init()
1496 amc->spi_model = "mx25l25635e"; in aspeed_machine_g220a_class_init()
1497 amc->num_cs = 2; in aspeed_machine_g220a_class_init()
1498 amc->macs_mask = ASPEED_MAC0_ON | ASPEED_MAC1_ON; in aspeed_machine_g220a_class_init()
1499 amc->i2c_init = g220a_bmc_i2c_init; in aspeed_machine_g220a_class_init()
1500 mc->auto_create_sdcard = true; in aspeed_machine_g220a_class_init()
1501 mc->default_ram_size = 1024 * MiB; in aspeed_machine_g220a_class_init()
1511 mc->desc = "Inspur FP5280G2 BMC (ARM1176)"; in aspeed_machine_fp5280g2_class_init()
1512 amc->soc_name = "ast2500-a1"; in aspeed_machine_fp5280g2_class_init()
1513 amc->hw_strap1 = FP5280G2_BMC_HW_STRAP1; in aspeed_machine_fp5280g2_class_init()
1514 amc->fmc_model = "n25q512a"; in aspeed_machine_fp5280g2_class_init()
1515 amc->spi_model = "mx25l25635e"; in aspeed_machine_fp5280g2_class_init()
1516 amc->num_cs = 2; in aspeed_machine_fp5280g2_class_init()
1517 amc->macs_mask = ASPEED_MAC0_ON | ASPEED_MAC1_ON; in aspeed_machine_fp5280g2_class_init()
1518 amc->i2c_init = fp5280g2_bmc_i2c_init; in aspeed_machine_fp5280g2_class_init()
1519 mc->auto_create_sdcard = true; in aspeed_machine_fp5280g2_class_init()
1520 mc->default_ram_size = 512 * MiB; in aspeed_machine_fp5280g2_class_init()
1529 mc->desc = "IBM Rainier BMC (Cortex-A7)"; in aspeed_machine_rainier_class_init()
1530 amc->soc_name = "ast2600-a3"; in aspeed_machine_rainier_class_init()
1531 amc->hw_strap1 = RAINIER_BMC_HW_STRAP1; in aspeed_machine_rainier_class_init()
1532 amc->hw_strap2 = RAINIER_BMC_HW_STRAP2; in aspeed_machine_rainier_class_init()
1533 amc->fmc_model = "mx66l1g45g"; in aspeed_machine_rainier_class_init()
1534 amc->spi_model = "mx66l1g45g"; in aspeed_machine_rainier_class_init()
1535 amc->num_cs = 2; in aspeed_machine_rainier_class_init()
1536 amc->macs_mask = ASPEED_MAC2_ON | ASPEED_MAC3_ON; in aspeed_machine_rainier_class_init()
1537 amc->i2c_init = rainier_bmc_i2c_init; in aspeed_machine_rainier_class_init()
1538 mc->auto_create_sdcard = true; in aspeed_machine_rainier_class_init()
1539 mc->default_ram_size = 1 * GiB; in aspeed_machine_rainier_class_init()
1551 mc->desc = "Facebook Fuji BMC (Cortex-A7)"; in aspeed_machine_fuji_class_init()
1552 amc->soc_name = "ast2600-a3"; in aspeed_machine_fuji_class_init()
1553 amc->hw_strap1 = FUJI_BMC_HW_STRAP1; in aspeed_machine_fuji_class_init()
1554 amc->hw_strap2 = FUJI_BMC_HW_STRAP2; in aspeed_machine_fuji_class_init()
1555 amc->fmc_model = "mx66l1g45g"; in aspeed_machine_fuji_class_init()
1556 amc->spi_model = "mx66l1g45g"; in aspeed_machine_fuji_class_init()
1557 amc->num_cs = 2; in aspeed_machine_fuji_class_init()
1558 amc->macs_mask = ASPEED_MAC3_ON; in aspeed_machine_fuji_class_init()
1559 amc->i2c_init = fuji_bmc_i2c_init; in aspeed_machine_fuji_class_init()
1560 amc->uart_default = ASPEED_DEV_UART1; in aspeed_machine_fuji_class_init()
1561 mc->auto_create_sdcard = true; in aspeed_machine_fuji_class_init()
1562 mc->default_ram_size = FUJI_BMC_RAM_SIZE; in aspeed_machine_fuji_class_init()
1574 mc->desc = "Facebook Bletchley BMC (Cortex-A7)"; in aspeed_machine_bletchley_class_init()
1575 amc->soc_name = "ast2600-a3"; in aspeed_machine_bletchley_class_init()
1576 amc->hw_strap1 = BLETCHLEY_BMC_HW_STRAP1; in aspeed_machine_bletchley_class_init()
1577 amc->hw_strap2 = BLETCHLEY_BMC_HW_STRAP2; in aspeed_machine_bletchley_class_init()
1578 amc->fmc_model = "w25q01jvq"; in aspeed_machine_bletchley_class_init()
1579 amc->spi_model = NULL; in aspeed_machine_bletchley_class_init()
1580 amc->num_cs = 2; in aspeed_machine_bletchley_class_init()
1581 amc->macs_mask = ASPEED_MAC2_ON; in aspeed_machine_bletchley_class_init()
1582 amc->i2c_init = bletchley_bmc_i2c_init; in aspeed_machine_bletchley_class_init()
1583 mc->auto_create_sdcard = true; in aspeed_machine_bletchley_class_init()
1584 mc->default_ram_size = BLETCHLEY_BMC_RAM_SIZE; in aspeed_machine_bletchley_class_init()
1591 AspeedGPIOState *gpio = &bmc->soc->gpio; in fby35_reset()
1595 /* Board ID: 7 (Class-1, 4 slots) */ in fby35_reset()
1607 /* Slot 12v power pins, normal polarity. (True means powered-on) */ in fby35_reset()
1619 mc->desc = "Facebook fby35 BMC (Cortex-A7)"; in aspeed_machine_fby35_class_init()
1620 mc->reset = fby35_reset; in aspeed_machine_fby35_class_init()
1621 amc->fmc_model = "mx66l1g45g"; in aspeed_machine_fby35_class_init()
1622 amc->num_cs = 2; in aspeed_machine_fby35_class_init()
1623 amc->macs_mask = ASPEED_MAC3_ON; in aspeed_machine_fby35_class_init()
1624 amc->i2c_init = fby35_i2c_init; in aspeed_machine_fby35_class_init()
1625 mc->auto_create_sdcard = true; in aspeed_machine_fby35_class_init()
1627 mc->default_ram_size = FUJI_BMC_RAM_SIZE; in aspeed_machine_fby35_class_init()
1644 bmc->soc = ASPEED_SOC(object_new(amc->soc_name)); in aspeed_minibmc_machine_init()
1645 object_property_add_child(OBJECT(machine), "soc", OBJECT(bmc->soc)); in aspeed_minibmc_machine_init()
1646 object_unref(OBJECT(bmc->soc)); in aspeed_minibmc_machine_init()
1647 qdev_connect_clock_in(DEVICE(bmc->soc), "sysclk", sysclk); in aspeed_minibmc_machine_init()
1649 object_property_set_link(OBJECT(bmc->soc), "memory", in aspeed_minibmc_machine_init()
1652 qdev_realize(DEVICE(bmc->soc), NULL, &error_abort); in aspeed_minibmc_machine_init()
1655 aspeed_board_init_flashes(&bmc->soc->fmc, in aspeed_minibmc_machine_init()
1656 bmc->fmc_model ? bmc->fmc_model : amc->fmc_model, in aspeed_minibmc_machine_init()
1657 amc->num_cs, in aspeed_minibmc_machine_init()
1660 aspeed_board_init_flashes(&bmc->soc->spi[0], in aspeed_minibmc_machine_init()
1661 bmc->spi_model ? bmc->spi_model : amc->spi_model, in aspeed_minibmc_machine_init()
1662 amc->num_cs, amc->num_cs); in aspeed_minibmc_machine_init()
1664 aspeed_board_init_flashes(&bmc->soc->spi[1], in aspeed_minibmc_machine_init()
1665 bmc->spi_model ? bmc->spi_model : amc->spi_model, in aspeed_minibmc_machine_init()
1666 amc->num_cs, (amc->num_cs * 2)); in aspeed_minibmc_machine_init()
1669 if (amc->i2c_init) { in aspeed_minibmc_machine_init()
1670 amc->i2c_init(bmc); in aspeed_minibmc_machine_init()
1674 machine->kernel_filename, in aspeed_minibmc_machine_init()
1681 AspeedSoCState *soc = bmc->soc; in ast1030_evb_i2c_init()
1685 smbus_eeprom_init_one(aspeed_i2c_get_bus(&soc->i2c, 0), 0x50, eeprom_buf); in ast1030_evb_i2c_init()
1688 i2c_slave_create_simple(aspeed_i2c_get_bus(&soc->i2c, 1), "tmp105", 0x4d); in ast1030_evb_i2c_init()
1697 mc->desc = "Aspeed AST1030 MiniBMC (Cortex-M4)"; in aspeed_minibmc_machine_ast1030_evb_class_init()
1698 amc->soc_name = "ast1030-a1"; in aspeed_minibmc_machine_ast1030_evb_class_init()
1699 amc->hw_strap1 = 0; in aspeed_minibmc_machine_ast1030_evb_class_init()
1700 amc->hw_strap2 = 0; in aspeed_minibmc_machine_ast1030_evb_class_init()
1701 mc->init = aspeed_minibmc_machine_init; in aspeed_minibmc_machine_ast1030_evb_class_init()
1702 amc->i2c_init = ast1030_evb_i2c_init; in aspeed_minibmc_machine_ast1030_evb_class_init()
1703 mc->default_ram_size = 0; in aspeed_minibmc_machine_ast1030_evb_class_init()
1704 amc->fmc_model = "w25q80bl"; in aspeed_minibmc_machine_ast1030_evb_class_init()
1705 amc->spi_model = "w25q256"; in aspeed_minibmc_machine_ast1030_evb_class_init()
1706 amc->num_cs = 2; in aspeed_minibmc_machine_ast1030_evb_class_init()
1707 amc->macs_mask = 0; in aspeed_minibmc_machine_ast1030_evb_class_init()
1714 AspeedSoCState *soc = bmc->soc; in ast2700_evb_i2c_init()
1717 i2c_slave_create_simple(aspeed_i2c_get_bus(&soc->i2c, 0), in ast2700_evb_i2c_init()
1727 mc->alias = "ast2700-evb"; in aspeed_machine_ast2700a0_evb_class_init()
1728 mc->desc = "Aspeed AST2700 A0 EVB (Cortex-A35)"; in aspeed_machine_ast2700a0_evb_class_init()
1729 amc->soc_name = "ast2700-a0"; in aspeed_machine_ast2700a0_evb_class_init()
1730 amc->hw_strap1 = AST2700_EVB_HW_STRAP1; in aspeed_machine_ast2700a0_evb_class_init()
1731 amc->hw_strap2 = AST2700_EVB_HW_STRAP2; in aspeed_machine_ast2700a0_evb_class_init()
1732 amc->fmc_model = "w25q01jvq"; in aspeed_machine_ast2700a0_evb_class_init()
1733 amc->spi_model = "w25q512jv"; in aspeed_machine_ast2700a0_evb_class_init()
1734 amc->num_cs = 2; in aspeed_machine_ast2700a0_evb_class_init()
1735 amc->macs_mask = ASPEED_MAC0_ON | ASPEED_MAC1_ON | ASPEED_MAC2_ON; in aspeed_machine_ast2700a0_evb_class_init()
1736 amc->uart_default = ASPEED_DEV_UART12; in aspeed_machine_ast2700a0_evb_class_init()
1737 amc->i2c_init = ast2700_evb_i2c_init; in aspeed_machine_ast2700a0_evb_class_init()
1738 amc->vbootrom = true; in aspeed_machine_ast2700a0_evb_class_init()
1739 mc->auto_create_sdcard = true; in aspeed_machine_ast2700a0_evb_class_init()
1740 mc->default_ram_size = 1 * GiB; in aspeed_machine_ast2700a0_evb_class_init()
1750 mc->desc = "Aspeed AST2700 A1 EVB (Cortex-A35)"; in aspeed_machine_ast2700a1_evb_class_init()
1751 amc->soc_name = "ast2700-a1"; in aspeed_machine_ast2700a1_evb_class_init()
1752 amc->hw_strap1 = AST2700_EVB_HW_STRAP1; in aspeed_machine_ast2700a1_evb_class_init()
1753 amc->hw_strap2 = AST2700_EVB_HW_STRAP2; in aspeed_machine_ast2700a1_evb_class_init()
1754 amc->fmc_model = "w25q01jvq"; in aspeed_machine_ast2700a1_evb_class_init()
1755 amc->spi_model = "w25q512jv"; in aspeed_machine_ast2700a1_evb_class_init()
1756 amc->num_cs = 2; in aspeed_machine_ast2700a1_evb_class_init()
1757 amc->macs_mask = ASPEED_MAC0_ON | ASPEED_MAC1_ON | ASPEED_MAC2_ON; in aspeed_machine_ast2700a1_evb_class_init()
1758 amc->uart_default = ASPEED_DEV_UART12; in aspeed_machine_ast2700a1_evb_class_init()
1759 amc->i2c_init = ast2700_evb_i2c_init; in aspeed_machine_ast2700a1_evb_class_init()
1760 amc->vbootrom = true; in aspeed_machine_ast2700a1_evb_class_init()
1761 mc->auto_create_sdcard = true; in aspeed_machine_ast2700a1_evb_class_init()
1762 mc->default_ram_size = 1 * GiB; in aspeed_machine_ast2700a1_evb_class_init()
1773 mc->desc = "Qualcomm DC-SCM V1 BMC (Cortex A7)"; in aspeed_machine_qcom_dc_scm_v1_class_init()
1774 amc->soc_name = "ast2600-a3"; in aspeed_machine_qcom_dc_scm_v1_class_init()
1775 amc->hw_strap1 = QCOM_DC_SCM_V1_BMC_HW_STRAP1; in aspeed_machine_qcom_dc_scm_v1_class_init()
1776 amc->hw_strap2 = QCOM_DC_SCM_V1_BMC_HW_STRAP2; in aspeed_machine_qcom_dc_scm_v1_class_init()
1777 amc->fmc_model = "n25q512a"; in aspeed_machine_qcom_dc_scm_v1_class_init()
1778 amc->spi_model = "n25q512a"; in aspeed_machine_qcom_dc_scm_v1_class_init()
1779 amc->num_cs = 2; in aspeed_machine_qcom_dc_scm_v1_class_init()
1780 amc->macs_mask = ASPEED_MAC2_ON | ASPEED_MAC3_ON; in aspeed_machine_qcom_dc_scm_v1_class_init()
1781 amc->i2c_init = qcom_dc_scm_bmc_i2c_init; in aspeed_machine_qcom_dc_scm_v1_class_init()
1782 mc->auto_create_sdcard = true; in aspeed_machine_qcom_dc_scm_v1_class_init()
1783 mc->default_ram_size = 1 * GiB; in aspeed_machine_qcom_dc_scm_v1_class_init()
1793 mc->desc = "Qualcomm DC-SCM V1/Firework BMC (Cortex A7)"; in aspeed_machine_qcom_firework_class_init()
1794 amc->soc_name = "ast2600-a3"; in aspeed_machine_qcom_firework_class_init()
1795 amc->hw_strap1 = QCOM_DC_SCM_V1_BMC_HW_STRAP1; in aspeed_machine_qcom_firework_class_init()
1796 amc->hw_strap2 = QCOM_DC_SCM_V1_BMC_HW_STRAP2; in aspeed_machine_qcom_firework_class_init()
1797 amc->fmc_model = "n25q512a"; in aspeed_machine_qcom_firework_class_init()
1798 amc->spi_model = "n25q512a"; in aspeed_machine_qcom_firework_class_init()
1799 amc->num_cs = 2; in aspeed_machine_qcom_firework_class_init()
1800 amc->macs_mask = ASPEED_MAC2_ON | ASPEED_MAC3_ON; in aspeed_machine_qcom_firework_class_init()
1801 amc->i2c_init = qcom_dc_scm_firework_i2c_init; in aspeed_machine_qcom_firework_class_init()
1802 mc->auto_create_sdcard = true; in aspeed_machine_qcom_firework_class_init()
1803 mc->default_ram_size = 1 * GiB; in aspeed_machine_qcom_firework_class_init()
1809 .name = MACHINE_TYPE_NAME("palmetto-bmc"),
1813 .name = MACHINE_TYPE_NAME("supermicrox11-bmc"),
1817 .name = MACHINE_TYPE_NAME("supermicro-x11spi-bmc"),
1821 .name = MACHINE_TYPE_NAME("ast2500-evb"),
1825 .name = MACHINE_TYPE_NAME("romulus-bmc"),
1829 .name = MACHINE_TYPE_NAME("sonorapass-bmc"),
1833 .name = MACHINE_TYPE_NAME("witherspoon-bmc"),
1837 .name = MACHINE_TYPE_NAME("ast2600-evb"),
1841 .name = MACHINE_TYPE_NAME("yosemitev2-bmc"),
1845 .name = MACHINE_TYPE_NAME("tiogapass-bmc"),
1849 .name = MACHINE_TYPE_NAME("g220a-bmc"),
1853 .name = MACHINE_TYPE_NAME("qcom-dc-scm-v1-bmc"),
1857 .name = MACHINE_TYPE_NAME("qcom-firework-bmc"),
1861 .name = MACHINE_TYPE_NAME("fp5280g2-bmc"),
1865 .name = MACHINE_TYPE_NAME("quanta-q71l-bmc"),
1869 .name = MACHINE_TYPE_NAME("rainier-bmc"),
1873 .name = MACHINE_TYPE_NAME("fuji-bmc"),
1877 .name = MACHINE_TYPE_NAME("bletchley-bmc"),
1881 .name = MACHINE_TYPE_NAME("fby35-bmc"),
1882 .parent = MACHINE_TYPE_NAME("ast2600-evb"),
1885 .name = MACHINE_TYPE_NAME("ast1030-evb"),
1890 .name = MACHINE_TYPE_NAME("ast2700a0-evb"),
1894 .name = MACHINE_TYPE_NAME("ast2700a1-evb"),