No description
Find a file
Hector Martin 986c6730e9 Add heapblock and dlmalloc for managing memory
heapblock is a simple `sbrk` style implementation, also useful as an
"endless" decompression buffer. dlmalloc is used on top as a malloc
implementation.

This also changes how the Python side manages its heap. We still use a
python-side malloc implementation (since this is faster), and we put the
Python heap at the m1n1 heap + 128MB, without allocating it.
Hopefully this should never step on anything m1n1 neads, and avoids
having to manage freeing across Python script calls.

Signed-off-by: Hector Martin <marcan@marcan.st>
2021-01-29 16:25:15 +09:00
3rdparty_licenses Add heapblock and dlmalloc for managing memory 2021-01-29 16:25:15 +09:00
artwork@35626c31f5 Initial commit 2021-01-15 04:03:35 +09:00
data Initial commit 2021-01-15 04:03:35 +09:00
dts dts/apple-j274: add WIP Mac Mini devicetree 2021-01-25 17:24:29 +09:00
proxyclient Add heapblock and dlmalloc for managing memory 2021-01-29 16:25:15 +09:00
src Add heapblock and dlmalloc for managing memory 2021-01-29 16:25:15 +09:00
.clang-format .clang-format: AlignConsecutiveMacros: true, 100 columns 2021-01-28 16:06:12 +09:00
.editorconfig .editorconfig: trim trailing whitespace 2021-01-15 04:04:12 +09:00
.gitignore proxyclient: initial files 2021-01-15 04:04:12 +09:00
.gitmodules Initial commit 2021-01-15 04:03:35 +09:00
config.h Add config.h for build-time config options 2021-01-25 17:24:29 +09:00
LICENSE LICENSE: fix typo 2021-01-15 12:55:21 +09:00
m1n1.ld Add heapblock and dlmalloc for managing memory 2021-01-29 16:25:15 +09:00
Makefile Add heapblock and dlmalloc for managing memory 2021-01-29 16:25:15 +09:00
README.md Add heapblock and dlmalloc for managing memory 2021-01-29 16:25:15 +09:00

m1n1: an experimentation playground for Apple Silicon

(And perhaps some day a Linux bootloader)

License

m1n1 is licensed under the MIT license, as included in the LICENSE file.

  • Copyright (C) 2021 The Asahi Linux contributors

Please see the Git history for authorship information.

Portions of m1n1 are based on mini:

m1n1 embeds libfdt, which is dual BSD and GPL-2 licensed and copyright:

  • Copyright (C) 2006 David Gibson, IBM Corporation.

The ADT code in mini is also based on libfdt and subject to the same license.

m1n1 embeds minlzma, which is MIT licensed and copyright:

  • Copyright (c) 2020 Alex Ionescu

m1n1 embeds a slightly modified version of tinf, which is ZLIB licensed and copyright:

  • Copyright (c) 2003-2019 Joergen Ibsen

m1n1 embeds portions taken from arm-trusted-firwmare, which is BSD licensed and copyright:

  • Copyright (c) 2013-2020, ARM Limited and Contributors. All rights reserved.

m1n1 embeds Doug Lea's malloc (dlmalloc), which is in the public domain (CC0).

m1n1 embeds portions of PDCLib, which is in the public domain (CC0.