diff --git a/arch/um/kernel/mem.c b/arch/um/kernel/mem.c index c95855ba6ab576f7063f3bdf825efb8182a13b9a..fb11992f0b8a8da6eac9ffa17911a45618881f9e 100644 --- a/arch/um/kernel/mem.c +++ b/arch/um/kernel/mem.c @@ -367,16 +367,6 @@ struct page *pte_alloc_one(struct mm_struct *mm, unsigned long address) return pte; } -struct iomem_region *iomem_regions = NULL; -int iomem_size = 0; - -extern int parse_iomem(char *str, int *add) __init; - -__uml_setup("iomem=", parse_iomem, -"iomem=,\n" -" Configure as an IO memory region named .\n\n" -); - /* * Overrides for Emacs so that we follow Linus's tabbing style. * Emacs will notice this stuff at the end of the file and automatically diff --git a/arch/um/kernel/physmem.c b/arch/um/kernel/physmem.c index abafa64b8727ecef4e0b35f04fbcae7d7551662a..22d3cf3596699ae0a11fbb533659507f67e07c66 100644 --- a/arch/um/kernel/physmem.c +++ b/arch/um/kernel/physmem.c @@ -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=,\n" +" Configure as an IO memory region named .\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;