nios2: Convert pfn_valid to static inline
authorTobias Klauser <tklauser@distanz.ch>
Wed, 9 Nov 2016 09:17:41 +0000 (17:17 +0800)
committerLey Foon Tan <ley.foon.tan@intel.com>
Tue, 13 Dec 2016 09:13:17 +0000 (17:13 +0800)
When compiling with 'W=1' warnings such as the following occur all over
the place:

  ./include/linux/pfn.h:21:22: warning: comparison of unsigned expression
    >= 0 is always true [-Wtype-limits]

which is due to ARCH_PFN_OFFSET being 0 by default
(if CONFIG_NIOS2_MEM_BASE is not changed in the Kconfig). Fix these
warnings by making pfn_valid a static inline function.

Signed-off-by: Tobias Klauser <tklauser@distanz.ch>
Signed-off-by: Ley Foon Tan <ley.foon.tan@intel.com>
arch/nios2/include/asm/page.h

index 74477ab66f6515fa20ced6f69a1f2271a8f5e0be..f1fbdc47bdafd64d2e5f30923790729c6bd0afc0 100644 (file)
@@ -85,8 +85,15 @@ extern struct page *mem_map;
        ((void *)(((page) - mem_map) << PAGE_SHIFT) + PAGE_OFFSET)
 
 # define pfn_to_kaddr(pfn)     __va((pfn) << PAGE_SHIFT)
-# define pfn_valid(pfn)                ((pfn) >= ARCH_PFN_OFFSET &&    \
-                                       (pfn) < max_mapnr)
+
+static inline bool pfn_valid(unsigned long pfn)
+{
+       /* avoid <linux/mm.h> include hell */
+       extern unsigned long max_mapnr;
+       unsigned long pfn_offset = ARCH_PFN_OFFSET;
+
+       return pfn >= pfn_offset && pfn < max_mapnr;
+}
 
 # define virt_to_page(vaddr)   pfn_to_page(PFN_DOWN(virt_to_phys(vaddr)))
 # define virt_addr_valid(vaddr)        pfn_valid(PFN_DOWN(virt_to_phys(vaddr)))