lib: Add early cpio decoder

Add a simple cpio decoder without library dependencies for the purpose
of extracting components from the initramfs blob for early kernel
uses.  Intended consumers so far are microcode and ACPI override.

Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
Link: http://lkml.kernel.org/r/1349043837-22659-2-git-send-email-trenn@suse.de
Cc: Len Brown <lenb@kernel.org>
Cc: Fenghua Yu <fenghua.yu@intel.com>
Signed-off-by: Thomas Renninger <trenn@suse.de>
Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
This commit is contained in:
H. Peter Anvin 2012-10-01 00:23:52 +02:00
parent 979570e029
commit e6459606b0
3 changed files with 163 additions and 1 deletions

17
include/linux/earlycpio.h Normal file
View file

@ -0,0 +1,17 @@
#ifndef _LINUX_EARLYCPIO_H
#define _LINUX_EARLYCPIO_H
#include <linux/types.h>
#define MAX_CPIO_FILE_NAME 18
struct cpio_data {
void *data;
size_t size;
char name[MAX_CPIO_FILE_NAME];
};
struct cpio_data find_cpio_data(const char *path, void *data, size_t len,
long *offset);
#endif /* _LINUX_EARLYCPIO_H */