• Linus Walleij's avatar
    csky: Make pfn accessors static inlines · c1884e1e
    Linus Walleij authored
    Making virt_to_pfn() a static inline taking a strongly typed
    (const void *) makes the contract of a passing a pointer of that
    type to the function explicit and exposes any misuse of the
    macro virt_to_pfn() acting polymorphic and accepting many types
    such as (void *), (unitptr_t) or (unsigned long) as arguments
    without warnings.
    
    For symmetry to the same thing with pfn_to_virt().
    
    In order to do this we move the virt_to_phys() and
    phys_to_virt() below the definitions of the __pa()
    and __va() macros so it compiles. The macro version was also
    able to do recursive symbol resolution.
    Signed-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
    Signed-off-by: default avatarGuo Ren <guoren@linux.alibaba.com>
    Signed-off-by: default avatarGuo Ren <guoren@kernel.org>
    c1884e1e
page.h 2.7 KB