Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit b616cf53 authored by Samuel Holland's avatar Samuel Holland Committed by Greg Kroah-Hartman
Browse files

firmware: coreboot: Remove unused coreboot_table_find



Now that all users of the coreboot_table_find function have been updated
to hang off the coreboot table bus instead, remove it.

Signed-off-by: default avatarSamuel Holland <samuel@sholland.org>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent a43eb6b3
Loading
Loading
Loading
Loading
+0 −43
Original line number Diff line number Diff line
@@ -97,49 +97,6 @@ void coreboot_driver_unregister(struct coreboot_driver *driver)
}
EXPORT_SYMBOL(coreboot_driver_unregister);

/*
 * This function parses the coreboot table for an entry that contains the base
 * address of the given entry tag. The coreboot table consists of a header
 * directly followed by a number of small, variable-sized entries, which each
 * contain an identifying tag and their length as the first two fields.
 */
int coreboot_table_find(int tag, void *data, size_t data_size)
{
	struct coreboot_table_header header;
	struct coreboot_table_entry entry;
	void *ptr_entry;
	int i;

	if (!ptr_header)
		return -EPROBE_DEFER;

	memcpy_fromio(&header, ptr_header, sizeof(header));

	if (strncmp(header.signature, "LBIO", sizeof(header.signature))) {
		pr_warn("coreboot_table: coreboot table missing or corrupt!\n");
		return -ENODEV;
	}

	ptr_entry = (void *)ptr_header + header.header_bytes;

	for (i = 0; i < header.table_entries; i++) {
		memcpy_fromio(&entry, ptr_entry, sizeof(entry));
		if (entry.tag == tag) {
			if (data_size < entry.size)
				return -EINVAL;

			memcpy_fromio(data, ptr_entry, entry.size);

			return 0;
		}

		ptr_entry += entry.size;
	}

	return -ENOENT;
}
EXPORT_SYMBOL(coreboot_table_find);

int coreboot_table_init(struct device *dev, void __iomem *ptr)
{
	int i, ret;
+0 −3
Original line number Diff line number Diff line
@@ -69,9 +69,6 @@ int coreboot_driver_register(struct coreboot_driver *driver);
/* Unregister a driver that uses the data from a coreboot table. */
void coreboot_driver_unregister(struct coreboot_driver *driver);

/* Retrieve coreboot table entry with tag *tag* and copy it to data */
int coreboot_table_find(int tag, void *data, size_t data_size);

/* Initialize coreboot table module given a pointer to iomem */
int coreboot_table_init(struct device *dev, void __iomem *ptr);