Lines Matching refs:table_data

233 spcr_setup(GArray *table_data, BIOSLinker *linker, RISCVVirtState *s)  in spcr_setup()  argument
265 build_spcr(table_data, linker, &serial, 4, s->oem_id, s->oem_table_id, in spcr_setup()
279 static void build_rhct(GArray *table_data, in build_rhct() argument
296 acpi_table_begin(&table, table_data); in build_rhct()
298 build_append_int_noprefix(table_data, 0x0, 4); /* Reserved */ in build_rhct()
301 build_append_int_noprefix(table_data, in build_rhct()
315 build_append_int_noprefix(table_data, num_rhct_nodes, 4); in build_rhct()
318 build_append_int_noprefix(table_data, RHCT_NODE_ARRAY_OFFSET, 4); in build_rhct()
321 isa_offset = table_data->len - table.table_offset; in build_rhct()
322 build_append_int_noprefix(table_data, 0, 2); /* Type 0 */ in build_rhct()
328 build_append_int_noprefix(table_data, aligned_len, 2); /* Length */ in build_rhct()
329 build_append_int_noprefix(table_data, 0x1, 2); /* Revision */ in build_rhct()
332 build_append_int_noprefix(table_data, strlen(isa) + 1, 2); in build_rhct()
333 g_array_append_vals(table_data, isa, strlen(isa) + 1); /* ISA string */ in build_rhct()
336 build_append_int_noprefix(table_data, 0x0, 1); /* Optional Padding */ in build_rhct()
341 cmo_offset = table_data->len - table.table_offset; in build_rhct()
342 build_append_int_noprefix(table_data, 1, 2); /* Type */ in build_rhct()
343 build_append_int_noprefix(table_data, 10, 2); /* Length */ in build_rhct()
344 build_append_int_noprefix(table_data, 0x1, 2); /* Revision */ in build_rhct()
345 build_append_int_noprefix(table_data, 0, 1); /* Reserved */ in build_rhct()
349 build_append_int_noprefix(table_data, in build_rhct()
353 build_append_int_noprefix(table_data, 0, 1); in build_rhct()
357 build_append_int_noprefix(table_data, 0, 1); in build_rhct()
361 build_append_int_noprefix(table_data, in build_rhct()
365 build_append_int_noprefix(table_data, 0, 1); in build_rhct()
371 mmu_offset = table_data->len - table.table_offset; in build_rhct()
372 build_append_int_noprefix(table_data, 2, 2); /* Type */ in build_rhct()
373 build_append_int_noprefix(table_data, 8, 2); /* Length */ in build_rhct()
374 build_append_int_noprefix(table_data, 0x1, 2); /* Revision */ in build_rhct()
375 build_append_int_noprefix(table_data, 0, 1); /* Reserved */ in build_rhct()
378 build_append_int_noprefix(table_data, 2, 1); /* Sv57 */ in build_rhct()
380 build_append_int_noprefix(table_data, 1, 1); /* Sv48 */ in build_rhct()
382 build_append_int_noprefix(table_data, 0, 1); /* Sv39 */ in build_rhct()
392 build_append_int_noprefix(table_data, 0xFFFF, 2); /* Type */ in build_rhct()
405 build_append_int_noprefix(table_data, len, 2); in build_rhct()
406 build_append_int_noprefix(table_data, 0x1, 2); /* Revision */ in build_rhct()
408 build_append_int_noprefix(table_data, num_offsets, 2); in build_rhct()
409 build_append_int_noprefix(table_data, i, 4); /* ACPI Processor UID */ in build_rhct()
411 build_append_int_noprefix(table_data, isa_offset, 4); in build_rhct()
413 build_append_int_noprefix(table_data, cmo_offset, 4); in build_rhct()
417 build_append_int_noprefix(table_data, mmu_offset, 4); in build_rhct()
425 static void build_fadt_rev6(GArray *table_data, in build_fadt_rev6() argument
437 build_fadt(table_data, linker, &fadt, s->oem_id, s->oem_table_id); in build_fadt_rev6()
441 static void build_dsdt(GArray *table_data, in build_dsdt() argument
453 acpi_table_begin(&table, table_data); in build_dsdt()
504 g_array_append_vals(table_data, dsdt->buf->data, dsdt->buf->len); in build_dsdt()
517 static void build_madt(GArray *table_data, in build_madt() argument
543 acpi_table_begin(&table, table_data); in build_madt()
545 build_append_int_noprefix(table_data, 0, 4); in build_madt()
546 build_append_int_noprefix(table_data, 0, 4); /* MADT Flags */ in build_madt()
550 riscv_acpi_madt_add_rintc(i, arch_ids, table_data, s); in build_madt()
556 build_append_int_noprefix(table_data, 0x19, 1); /* Type */ in build_madt()
557 build_append_int_noprefix(table_data, 16, 1); /* Length */ in build_madt()
558 build_append_int_noprefix(table_data, 1, 1); /* Version */ in build_madt()
559 build_append_int_noprefix(table_data, 0, 1); /* Reserved */ in build_madt()
560 build_append_int_noprefix(table_data, 0, 4); /* Flags */ in build_madt()
562 build_append_int_noprefix(table_data, VIRT_IRQCHIP_NUM_MSIS, 2); in build_madt()
564 build_append_int_noprefix(table_data, VIRT_IRQCHIP_NUM_MSIS, 2); in build_madt()
566 build_append_int_noprefix(table_data, guest_index_bits, 1); in build_madt()
568 build_append_int_noprefix(table_data, hart_index_bits, 1); in build_madt()
570 build_append_int_noprefix(table_data, group_index_bits, 1); in build_madt()
572 build_append_int_noprefix(table_data, IMSIC_MMIO_GROUP_MIN_SHIFT, 1); in build_madt()
581 build_append_int_noprefix(table_data, 0x1A, 1); /* Type */ in build_madt()
582 build_append_int_noprefix(table_data, 36, 1); /* Length */ in build_madt()
583 build_append_int_noprefix(table_data, 1, 1); /* Version */ in build_madt()
584 build_append_int_noprefix(table_data, socket, 1); /* APLIC ID */ in build_madt()
585 build_append_int_noprefix(table_data, 0, 4); /* Flags */ in build_madt()
586 build_append_int_noprefix(table_data, 0, 8); /* Hardware ID */ in build_madt()
589 build_append_int_noprefix(table_data, in build_madt()
593 build_append_int_noprefix(table_data, 0, 2); in build_madt()
596 build_append_int_noprefix(table_data, VIRT_IRQCHIP_NUM_SOURCES, 2); in build_madt()
598 build_append_int_noprefix(table_data, gsi_base, 4); in build_madt()
600 build_append_int_noprefix(table_data, aplic_addr, 8); in build_madt()
602 build_append_int_noprefix(table_data, in build_madt()
611 build_append_int_noprefix(table_data, 0x1B, 1); /* Type */ in build_madt()
612 build_append_int_noprefix(table_data, 36, 1); /* Length */ in build_madt()
613 build_append_int_noprefix(table_data, 1, 1); /* Version */ in build_madt()
614 build_append_int_noprefix(table_data, socket, 1); /* PLIC ID */ in build_madt()
615 build_append_int_noprefix(table_data, 0, 8); /* Hardware ID */ in build_madt()
617 build_append_int_noprefix(table_data, in build_madt()
619 build_append_int_noprefix(table_data, 0, 2); /* Max Priority */ in build_madt()
620 build_append_int_noprefix(table_data, 0, 4); /* Flags */ in build_madt()
622 build_append_int_noprefix(table_data, s->memmap[VIRT_PLIC].size, 4); in build_madt()
624 build_append_int_noprefix(table_data, aplic_addr, 8); in build_madt()
626 build_append_int_noprefix(table_data, gsi_base, 4); in build_madt()
642 static void build_rimt_id_mapping(GArray *table_data, uint32_t source_id_base, in build_rimt_id_mapping() argument
646 build_append_int_noprefix(table_data, source_id_base, 4); in build_rimt_id_mapping()
648 build_append_int_noprefix(table_data, num_ids, 4); in build_rimt_id_mapping()
650 build_append_int_noprefix(table_data, source_id_base, 4); in build_rimt_id_mapping()
652 build_append_int_noprefix(table_data, dest_id_base, 4); in build_rimt_id_mapping()
654 build_append_int_noprefix(table_data, 0, 4); in build_rimt_id_mapping()
699 static void build_rimt(GArray *table_data, BIOSLinker *linker, in build_rimt() argument
711 acpi_table_begin(&table, table_data); in build_rimt()
722 build_append_int_noprefix(table_data, nb_nodes, 4); in build_rimt()
725 build_append_int_noprefix(table_data, RIMT_NODE_OFFSET, 4); in build_rimt()
726 build_append_int_noprefix(table_data, 0, 4); /* Reserved */ in build_rimt()
728 iommu_offset = table_data->len - table.table_offset; in build_rimt()
730 build_append_int_noprefix(table_data, 0, 1); /* Type - IOMMU*/ in build_rimt()
731 build_append_int_noprefix(table_data, 1, 1); /* Revision */ in build_rimt()
733 build_append_int_noprefix(table_data, node_size, 2); /* Length */ in build_rimt()
734 build_append_int_noprefix(table_data, 0, 2); /* Reserved */ in build_rimt()
735 build_append_int_noprefix(table_data, id++, 2); /* ID */ in build_rimt()
738 build_append_int_noprefix(table_data, 'R', 1); in build_rimt()
739 build_append_int_noprefix(table_data, 'S', 1); in build_rimt()
740 build_append_int_noprefix(table_data, 'C', 1); in build_rimt()
741 build_append_int_noprefix(table_data, 'V', 1); in build_rimt()
742 build_append_int_noprefix(table_data, '0', 1); in build_rimt()
743 build_append_int_noprefix(table_data, '0', 1); in build_rimt()
744 build_append_int_noprefix(table_data, '0', 1); in build_rimt()
745 build_append_int_noprefix(table_data, '4', 1); in build_rimt()
747 build_append_int_noprefix(table_data, in build_rimt()
749 build_append_int_noprefix(table_data, 0, 4); /* Flags */ in build_rimt()
752 build_append_int_noprefix(table_data, '0', 1); in build_rimt()
753 build_append_int_noprefix(table_data, '0', 1); in build_rimt()
754 build_append_int_noprefix(table_data, '1', 1); in build_rimt()
755 build_append_int_noprefix(table_data, '0', 1); in build_rimt()
756 build_append_int_noprefix(table_data, '0', 1); in build_rimt()
757 build_append_int_noprefix(table_data, '0', 1); in build_rimt()
758 build_append_int_noprefix(table_data, '1', 1); in build_rimt()
759 build_append_int_noprefix(table_data, '4', 1); in build_rimt()
761 build_append_int_noprefix(table_data, 0, 8); /* Base Address */ in build_rimt()
762 build_append_int_noprefix(table_data, 1, 4); /* Flags */ in build_rimt()
765 build_append_int_noprefix(table_data, 0, 4); /* Proximity Domain */ in build_rimt()
766 build_append_int_noprefix(table_data, 0, 2); /* PCI Segment number */ in build_rimt()
769 build_append_int_noprefix(table_data, 0, 2); in build_rimt()
771 build_append_int_noprefix(table_data, s->pci_iommu_bdf, 2); in build_rimt()
774 build_append_int_noprefix(table_data, 0, 2); in build_rimt()
776 build_append_int_noprefix(table_data, RISCV_INTERRUPT_WIRE_OFFSSET, 2); in build_rimt()
779 build_append_int_noprefix(table_data, 1, 1); /* Type */ in build_rimt()
780 build_append_int_noprefix(table_data, 1, 1); /* Revision */ in build_rimt()
783 build_append_int_noprefix(table_data, node_size, 2); /* Length */ in build_rimt()
784 build_append_int_noprefix(table_data, 0, 2); /* Reserved */ in build_rimt()
785 build_append_int_noprefix(table_data, id++, 2); /* ID */ in build_rimt()
786 build_append_int_noprefix(table_data, 0, 4); /* Flags */ in build_rimt()
787 build_append_int_noprefix(table_data, 0, 2); /* Reserved */ in build_rimt()
789 build_append_int_noprefix(table_data, 0, 2); in build_rimt()
791 build_append_int_noprefix(table_data, ROOT_COMPLEX_ENTRY_SIZE, 2); in build_rimt()
793 build_append_int_noprefix(table_data, rc_mapping_count, 2); in build_rimt()
807 build_rimt_id_mapping(table_data, range->source_id_base, in build_rimt()
821 build_srat(GArray *table_data, BIOSLinker *linker, RISCVVirtState *vms) in build_srat() argument
831 acpi_table_begin(&table, table_data); in build_srat()
832 build_append_int_noprefix(table_data, 1, 4); /* Reserved */ in build_srat()
833 build_append_int_noprefix(table_data, 0, 8); /* Reserved */ in build_srat()
840 build_append_int_noprefix(table_data, 7, 1); /* Type */ in build_srat()
841 build_append_int_noprefix(table_data, 20, 1); /* Length */ in build_srat()
842 build_append_int_noprefix(table_data, 0, 2); /* Reserved */ in build_srat()
843 build_append_int_noprefix(table_data, nodeid, 4); /* Proximity Domain */ in build_srat()
844 build_append_int_noprefix(table_data, i, 4); /* ACPI Processor UID */ in build_srat()
846 build_append_int_noprefix(table_data, 1 /* Flags: Enabled */, 4); in build_srat()
847 build_append_int_noprefix(table_data, 0, 4); /* Clock Domain */ in build_srat()
853 build_srat_memory(table_data, mem_base, in build_srat()
867 GArray *tables_blob = tables->table_data; in virt_acpi_build()
982 acpi_ram_update(build_state->table_mr, tables.table_data); in virt_acpi_build_update()
1017 build_state, tables.table_data, in virt_acpi_setup()