Travis Geiselbrecht 04b88750b3 [debug] remove lib/debug and move to the top/ module
Most of the functions for this was declared in a top level lk/ include
space, so go ahead and move it there.

A few exceptions:
- Moved spin() over to platform/time.h and platform/time.c since the
function more logically belongs to platform/time.h.  Any users of
spin() will need to update their headers to include platform/time.h
instead.

- Renamed spin_cycles() to arm_cm_spin_cycles() and moved over into
arm/cm.h since it is currently defined in arch/arm-m and only used for
targets that implicitly are for arm-m.
2025-10-01 20:56:06 -07:00
2025-08-31 12:44:36 -07:00
2025-07-28 12:48:11 -07:00
2015-01-29 20:38:19 -08:00

The Little Kernel Embedded Operating System

The LK kernel is an SMP-aware kernel designed for small systems ported to a variety of platforms and cpu architectures.

It is used in a variety of open source and closed source projects, notably the bootloader for a lot of Android phones of various make.

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

For comprehensive documentation, see Index.

High Level Features

  • Fully-reentrant multi-threaded preemptive kernel
  • Portable to many 32 and 64 bit architectures
  • Support for wide variety of embedded and larger platforms
  • Powerful modular build system
  • Large number of utility components selectable at build time

Supported architectures

  • ARM32
    • Cortex-M class cores (armv6m - armv8m)
    • ARMv7+ Cortex-A class cores
  • ARM64
    • ARMv8 and ARMv9 cores
  • RISC-V 32 and 64bit bit in machine and supervisor mode
  • x86-32 and x86-64
  • Motorola 68000
  • Microblaze
  • MIPS
  • OpenRISC 1000
  • VAX (experimental)
Description
No description provided
Readme MIT 39 MiB
Languages
C 80.6%
C++ 10.8%
Assembly 3.6%
Makefile 3.4%
Python 1%
Other 0.6%