Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[RFC] [FOR TESTING] MIPS 32-bit huge page support (moved,updated, and rebased) #3

Closed
wants to merge 5 commits into from
Closed

Commits on Apr 20, 2019

  1. MIPS: Disallow CPU_SUPPORTS_HUGEPAGES for XPA,EVA

    In preparation for 32-bit MIPS huge page support.
    
    EVA,XPA are extended-addressing modes for 32-bit MIPS systems. Because
    huge pages aren't currently supported in 32-bit MIPS, this doesn't take
    any features away from EVA,XPA-enabled systems. However, the soon-to-
    come 32-bit MIPS huge page support doesn't yet support them.
    
    This also disables CPU_SUPPORTS_HUGEPAGES for the small number of 32-bit
    MIPS CPUs from Alchemy/Netlogic that support a custom 36-bit extended
    addressing. It's unknown if they even support huge pages in hardware.
    
    Signed-off-by: Daniel Silsby <dansilsby@gmail.com>
    senquack committed Apr 20, 2019
    Configuration menu
    Copy the full SHA
    4d7991c View commit details
    Browse the repository at this point in the history
  2. MIPS: Add partial 32-bit huge page support

     This adds initial support for huge pages to 32-bit MIPS systems.
    Systems with extended addressing enabled (EVA,XPA,Alchemy/Netlogic)
    are not yet supported.
     With huge pages enabled, this implementation will increase page table
    memory overhead to match that of a 64-bit MIPS system. However, the
    cache-friendliness of page table walks is not affected significantly.
    
    Signed-off-by: Daniel Silsby <dansilsby@gmail.com>
    senquack committed Apr 20, 2019
    Configuration menu
    Copy the full SHA
    7d5c006 View commit details
    Browse the repository at this point in the history
  3. MIPS: Decouple CPU_SUPPORTS_HUGEPAGES from 64BIT

    We now have partial 32-bit MIPS huge page support, so there's no need
    to restrict these config options only to 64-bit systems.
    
    Signed-off-by: Daniel Silsby <dansilsby@gmail.com>
    senquack committed Apr 20, 2019
    Configuration menu
    Copy the full SHA
    2f39136 View commit details
    Browse the repository at this point in the history
  4. MIPS: ingenic: Add support for huge pages

    The Ingenic jz47xx SoC series of 32-bit MIPS CPUs support huge pages.
    
    Signed-off-by: Daniel Silsby <dansilsby@gmail.com>
    senquack committed Apr 20, 2019
    Configuration menu
    Copy the full SHA
    b9bcb1f View commit details
    Browse the repository at this point in the history
  5. MIPS: Undefine PMD_ORDER for 32-bit builds

    During an update long ago to conform to 4-level page code, PMD_ORDER was
    changed from 0 to 1, despite the fact that a PMD table is not used at
    all in a 32-bit MIPS build. PMD_ORDER does not seem to be used in these
    builds. Now, it matches PUD_ORDER, a nonsense #define to give a build
    failure with informative error.
    
    The older commit that had redefined PMD_ORDER was
    c6e8b58
    
    Signed-off-by: Daniel Silsby <dansilsby@gmail.com>
    senquack committed Apr 20, 2019
    Configuration menu
    Copy the full SHA
    7be6a7d View commit details
    Browse the repository at this point in the history