]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - kernel/resource.c
fs/coda: remove static inline forward declarations
[linux-2.6-omap-h63xx.git] / kernel / resource.c
index 2eb553d9b517153d8d938b34d60718b948b6bac0..cee12cc47cab04c270e9193341ba43e8c57fd92b 100644 (file)
@@ -228,7 +228,7 @@ int release_resource(struct resource *old)
 
 EXPORT_SYMBOL(release_resource);
 
-#ifdef CONFIG_MEMORY_HOTPLUG
+#if defined(CONFIG_MEMORY_HOTPLUG) && !defined(CONFIG_ARCH_HAS_WALK_MEMORY)
 /*
  * Finds the lowest memory reosurce exists within [res->start.res->end)
  * the caller must specify res->start, res->end, res->flags.
@@ -486,6 +486,24 @@ int adjust_resource(struct resource *res, resource_size_t start, resource_size_t
 
 EXPORT_SYMBOL(adjust_resource);
 
+/**
+ * resource_alignment - calculate resource's alignment
+ * @res: resource pointer
+ *
+ * Returns alignment on success, 0 (invalid alignment) on failure.
+ */
+resource_size_t resource_alignment(struct resource *res)
+{
+       switch (res->flags & (IORESOURCE_SIZEALIGN | IORESOURCE_STARTALIGN)) {
+       case IORESOURCE_SIZEALIGN:
+               return res->end - res->start + 1;
+       case IORESOURCE_STARTALIGN:
+               return res->start;
+       default:
+               return 0;
+       }
+}
+
 /*
  * This is compatibility stuff for IO resources.
  *