1. 02 Jul, 2008 3 commits
    • Haavard Skinnemoen's avatar
      avr32: Store virtual addresses in the PGD · cfd23e93
      Haavard Skinnemoen authored
      Instead of storing physical addresses along with page flags in the
      PGD, store virtual addresses and use NULL to indicate a not present
      second-level page table. A non-page-aligned page table indicates a bad
      PMD.
      
      This simplifies the TLB miss handler since it no longer has to check
      the Present bit and no longer has to convert the PGD entry from
      physical to virtual address. Instead, it has to check for a NULL
      entry, which is slightly cheaper than either.
      Signed-off-by: default avatarHaavard Skinnemoen <haavard.skinnemoen@atmel.com>
      cfd23e93
    • Haavard Skinnemoen's avatar
      avr32: Remove useless zeroing of swapper_pg_dir at startup · ebe74597
      Haavard Skinnemoen authored
      swapper_pg_dir is stored in .bss, so it must already be zeroed out
      when we get there.
      Signed-off-by: default avatarHaavard Skinnemoen <haavard.skinnemoen@atmel.com>
      ebe74597
    • Haavard Skinnemoen's avatar
      avr32: Clean up and optimize the TLB operations · b13d618b
      Haavard Skinnemoen authored
      This and the following patches aim to optimize the code dealing with
      page tables and TLB operations. Each patch reduces the time it takes
      to gzip a 16 MB file slightly, but I expect things like fork() and
      mmap() will improve somewhat more.
      
      This patch deals with the low-level TLB operations:
      
        * Remove unused _TLBEHI_I define
        * Use gcc builtins instead of inline assembly
        * Remove a few unnecessary pipeline flushes and nops
        * Introduce NR_TLB_ENTRIES define and use it instead of hardcoding it
          to 32 a few places throughout the code.
        * Use sysreg bitops instead of hardcoded shifts and masks
        * Make a few needlessly global functions static
      Signed-off-by: default avatarHaavard Skinnemoen <haavard.skinnemoen@atmel.com>
      b13d618b
  2. 28 Jun, 2008 2 commits
  3. 27 Jun, 2008 14 commits
  4. 25 Jun, 2008 4 commits
  5. 24 Jun, 2008 17 commits