• Home
  • Raw
  • Download

Lines Matching refs:tab

32 static void *get_entry_start(struct table_info *tab)  in get_entry_start()  argument
34 if (tab->count == SFI_TABLE_MAX_ENTRIES) in get_entry_start()
36 tab->entry_start = tab->base + tab->ptr; in get_entry_start()
37 tab->table[tab->count] = tab->entry_start; in get_entry_start()
38 tab->entry_start += sizeof(struct sfi_table_header); in get_entry_start()
40 return (void *)(uintptr_t)tab->entry_start; in get_entry_start()
43 static void finish_table(struct table_info *tab, const char *sig, void *entry) in finish_table() argument
47 hdr = (struct sfi_table_header *)(uintptr_t)(tab->base + tab->ptr); in finish_table()
49 hdr->len = sizeof(*hdr) + ((ulong)entry - tab->entry_start); in finish_table()
55 tab->ptr += hdr->len; in finish_table()
56 tab->ptr = ALIGN(tab->ptr, 16); in finish_table()
57 tab->count++; in finish_table()
60 static int sfi_write_system_header(struct table_info *tab) in sfi_write_system_header() argument
62 u64 *entry = get_entry_start(tab); in sfi_write_system_header()
68 for (i = 0; i < tab->count; i++) in sfi_write_system_header()
69 *entry++ = tab->table[i]; in sfi_write_system_header()
70 finish_table(tab, SFI_SIG_SYST, entry); in sfi_write_system_header()
75 static int sfi_write_cpus(struct table_info *tab) in sfi_write_cpus() argument
77 struct sfi_cpu_table_entry *entry = get_entry_start(tab); in sfi_write_cpus()
98 finish_table(tab, SFI_SIG_CPUS, entry); in sfi_write_cpus()
103 static int sfi_write_apic(struct table_info *tab) in sfi_write_apic() argument
105 struct sfi_apic_table_entry *entry = get_entry_start(tab); in sfi_write_apic()
112 finish_table(tab, SFI_SIG_APIC, entry); in sfi_write_apic()
117 static int sfi_write_xsdt(struct table_info *tab) in sfi_write_xsdt() argument
119 struct sfi_xsdt_header *entry = get_entry_start(tab); in sfi_write_xsdt()
128 finish_table(tab, SFI_SIG_XSDT, entry); in sfi_write_xsdt()