arch: x86: mmu: Reject memory mapping with unsupported flags

Return ERR_NOT_SUPPORTED if arch_mmu_map is called with unsupported
flags. Also fix mapping of cache type bits so
ARCH_MMU_FLAG_UNCACHED_DEVICE is mapped as uncached instead of cached
and undefined types with bit 1 set are interpreted as
ARCH_MMU_FLAG_UNCACHED_DEVICE.

Bug: 305099000
Change-Id: I724c25e39def09d7befca60f9747158f457615b9
1 file changed
tree: daf3c5bd1e3afa81b57ad9e71ce6f6ffc70a56f4
  1. app/
  2. arch/
  3. dev/
  4. external/
  5. hosttests/
  6. include/
  7. kernel/
  8. lib/
  9. make/
  10. platform/
  11. target/
  12. tools/
  13. top/
  14. .clang-format
  15. .gitignore
  16. build-config-kerneltests
  17. engine.mk
  18. kerneltests-inc.mk
  19. LICENSE
  20. lk_inc.mk.example
  21. makefile
  22. README.md
README.md

LK

The LK embedded kernel. An SMP-aware kernel designed for small systems.

See https://github.com/littlekernel/lk for the latest version.

See https://github.com/littlekernel/lk/wiki for documentation.

Builds

Build Status

To build and test for ARM on linux

  1. install or build qemu. v2.4 and above is recommended.
  2. install gcc for embedded arm (see note 1)
  3. run scripts/do-qemuarm (from the lk directory)
  4. you should see ‘welcome to lk/MP’

This will get you a interactive prompt into LK which is running in qemu arm machine ‘virt’ emulation. type ‘help’ for commands.

note 1: for ubuntu: sudo apt-get install gcc-arm-none-eabi or fetch a prebuilt toolchain from http://newos.org/toolchains/arm-eabi-5.3.0-Linux-x86_64.tar.xz