mirror of
				https://github.com/torvalds/linux.git
				synced 2025-11-04 02:30:34 +02:00 
			
		
		
		
	ACPI: acpi_table_parse() now returns success/fail, not count
Returning count for tables that are supposed to be unique was useless and confusing. Signed-off-by: Len Brown <len.brown@intel.com>
This commit is contained in:
		
							parent
							
								
									7cda93e008
								
							
						
					
					
						commit
						7f8f97c3cc
					
				
					 5 changed files with 21 additions and 11 deletions
				
			
		| 
						 | 
				
			
			@ -865,10 +865,9 @@ static inline int acpi_parse_madt_ioapic_entries(void)
 | 
			
		|||
static void __init acpi_process_madt(void)
 | 
			
		||||
{
 | 
			
		||||
#ifdef CONFIG_X86_LOCAL_APIC
 | 
			
		||||
	int count, error;
 | 
			
		||||
	int error;
 | 
			
		||||
 | 
			
		||||
	count = acpi_table_parse(ACPI_SIG_MADT, acpi_parse_madt);
 | 
			
		||||
	if (count >= 1) {
 | 
			
		||||
	if (!acpi_table_parse(ACPI_SIG_MADT, acpi_parse_madt)) {
 | 
			
		||||
 | 
			
		||||
		/*
 | 
			
		||||
		 * Parse MADT LAPIC entries
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -53,7 +53,9 @@ static void nvidia_bugs(void)
 | 
			
		|||
		return;
 | 
			
		||||
 | 
			
		||||
	nvidia_hpet_detected = 0;
 | 
			
		||||
	acpi_table_parse(ACPI_SIG_HPET, nvidia_hpet_check);
 | 
			
		||||
	if (acpi_table_parse(ACPI_SIG_HPET, nvidia_hpet_check))
 | 
			
		||||
		return;
 | 
			
		||||
 | 
			
		||||
	if (nvidia_hpet_detected == 0) {
 | 
			
		||||
		acpi_skip_timer_override = 1;
 | 
			
		||||
		printk(KERN_INFO "Nvidia board "
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -170,7 +170,9 @@ void __init pci_mmcfg_init(int type)
 | 
			
		|||
	if ((pci_probe & PCI_PROBE_MMCONF) == 0)
 | 
			
		||||
		return;
 | 
			
		||||
 | 
			
		||||
	acpi_table_parse(ACPI_SIG_MCFG, acpi_parse_mcfg);
 | 
			
		||||
	if (acpi_table_parse(ACPI_SIG_MCFG, acpi_parse_mcfg))
 | 
			
		||||
		return;
 | 
			
		||||
 | 
			
		||||
	if ((pci_mmcfg_config_num == 0) ||
 | 
			
		||||
	    (pci_mmcfg_config == NULL) ||
 | 
			
		||||
	    (pci_mmcfg_config[0].address == 0))
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -220,9 +220,7 @@ int __init acpi_numa_init(void)
 | 
			
		|||
	int result;
 | 
			
		||||
 | 
			
		||||
	/* SRAT: Static Resource Affinity Table */
 | 
			
		||||
	result = acpi_table_parse(ACPI_SIG_SRAT, acpi_parse_srat);
 | 
			
		||||
 | 
			
		||||
	if (result > 0) {
 | 
			
		||||
	if (!acpi_table_parse(ACPI_SIG_SRAT, acpi_parse_srat)) {
 | 
			
		||||
		result = acpi_table_parse_srat(ACPI_SRAT_TYPE_CPU_AFFINITY,
 | 
			
		||||
					       acpi_parse_processor_affinity,
 | 
			
		||||
					       NR_CPUS);
 | 
			
		||||
| 
						 | 
				
			
			@ -230,7 +228,7 @@ int __init acpi_numa_init(void)
 | 
			
		|||
	}
 | 
			
		||||
 | 
			
		||||
	/* SLIT: System Locality Information Table */
 | 
			
		||||
	result = acpi_table_parse(ACPI_SIG_SLIT, acpi_parse_slit);
 | 
			
		||||
	acpi_table_parse(ACPI_SIG_SLIT, acpi_parse_slit);
 | 
			
		||||
 | 
			
		||||
	acpi_numa_arch_fixup();
 | 
			
		||||
	return 0;
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -226,6 +226,15 @@ acpi_table_parse_madt(enum acpi_madt_type id,
 | 
			
		|||
					    handler, max_entries);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * acpi_table_parse - find table with @id, run @handler on it
 | 
			
		||||
 *
 | 
			
		||||
 * @id: table id to find
 | 
			
		||||
 * @handler: handler to run
 | 
			
		||||
 *
 | 
			
		||||
 * Scan the ACPI System Descriptor Table (STD) for a table matching @id,
 | 
			
		||||
 * run @handler on it.  Return 0 if table found, return on if not.
 | 
			
		||||
 */
 | 
			
		||||
int __init acpi_table_parse(char *id, acpi_table_handler handler)
 | 
			
		||||
{
 | 
			
		||||
	struct acpi_table_header *table = NULL;
 | 
			
		||||
| 
						 | 
				
			
			@ -235,9 +244,9 @@ int __init acpi_table_parse(char *id, acpi_table_handler handler)
 | 
			
		|||
	acpi_get_table(id, 0, &table);
 | 
			
		||||
	if (table) {
 | 
			
		||||
		handler(table);
 | 
			
		||||
		return 1;
 | 
			
		||||
	} else
 | 
			
		||||
		return 0;
 | 
			
		||||
	} else
 | 
			
		||||
		return 1;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in a new issue