|
@@ -398,6 +398,23 @@ __uml_setup("mem=", uml_mem_setup,
|
|
|
" Example: mem=64M\n\n"
|
|
|
);
|
|
|
|
|
|
+extern int __init parse_iomem(char *str, int *add);
|
|
|
+
|
|
|
+__uml_setup("iomem=", parse_iomem,
|
|
|
+"iomem=<name>,<file>\n"
|
|
|
+" Configure <file> as an IO memory region named <name>.\n\n"
|
|
|
+);
|
|
|
+
|
|
|
+/*
|
|
|
+ * This list is constructed in parse_iomem and addresses filled in in
|
|
|
+ * setup_iomem, both of which run during early boot. Afterwards, it's
|
|
|
+ * unchanged.
|
|
|
+ */
|
|
|
+struct iomem_region *iomem_regions = NULL;
|
|
|
+
|
|
|
+/* Initialized in parse_iomem */
|
|
|
+int iomem_size = 0;
|
|
|
+
|
|
|
unsigned long find_iomem(char *driver, unsigned long *len_out)
|
|
|
{
|
|
|
struct iomem_region *region = iomem_regions;
|