Commit Graph

29 Commits

Author SHA1 Message Date
Ivaylo Ivanov
eba7aec49d drivers: samsung: Introduce exynos-speedy
Speedy is a serial communication bus that is typically used in
Exynos SoC devices for communicating with a PMIC. Implement
basic support for it, as well as add its first user - s2mps17 in
board-dreamlte.

Also, while at it, implement a simple readl function.

Signed-off-by: Ivaylo Ivanov <ivo.ivanov.ivanov1@gmail.com>
2024-10-28 15:09:59 +02:00
Ivaylo Ivanov
9c60b66f71 AARCH64: Allow for embedding an initramfs
This actually breaks the armv7 port. It has to be revisited in the
future, since it not only is not compilable right now, but also
cannot boot linux properly. TODO

Also introduce a new C-based __memcpy_optimized that does not
cause an exception on some devices when copying the initramfs.
This issue has to be debugged further.

Signed-off-by: Ivaylo Ivanov <ivo.ivanov.ivanov1@gmail.com>
2024-10-12 19:43:05 +03:00
Ivaylo Ivanov
2de1d3c549 lib: video: Drop font.c temporarely
Since we're practically PIC, keep the massive array in the header.
Otherwise we exception.

Signed-off-by: Ivaylo Ivanov <ivo.ivanov.ivanov1@gmail.com>
2024-10-10 16:49:09 +03:00
Ivaylo Ivanov
3b517ba95a lib: debug: Introduce loglevels + many minor changes
Implement 8 loglevels to use with printk:

While at it, separate the font in a new "video" directory, which
also makes space for a proper video probing implementation. Fill
in the font from 32 to 256. Scale the font to render twice as big.
Implement dynamic line length detection. Change a few things here
and there to follow the linux kernel code style. Add a nice logo.

Signed-off-by: Ivaylo Ivanov <ivo.ivanov.ivanov1@gmail.com>
2024-10-10 16:24:20 +03:00
Ivaylo Ivanov
81d26edaa3 uniLoader: Mass rework
arch: aarch64: Load addresses via page + offset
arch: aarch64: Align the TEXT region
drivers: Introduce an empty framework
board: Rework to be PIC

Signed-off-by: Ivaylo Ivanov <ivo.ivanov.ivanov1@gmail.com>
2024-10-08 21:22:21 +03:00
Ivaylo Ivanov
b301e51432 board: Introduce board file configurations
This is meant to replace the current Kconfig / SoC / Board files
configuration, which is ugly and annoying to maintain. Begin
by creating the board files registration framework and
transitioning all exynos boards to it. This also opens room for
creating the drivers registration framework in the future.

All non-samsung boards will be no longer able to do their board
configuration until they're also transitioned.

Every new board must have the following structure:
struct board_data default_board = {
	.name = "DEFAULT",
	.init = NULL,
	.late_init = NULL,
	.driver_setup = NULL,
};

Signed-off-by: Ivaylo Ivanov <ivo.ivanov.ivanov1@gmail.com>
2024-09-26 15:34:26 +03:00
chmcax
0d2f55d9f6 soc: Add basic support for Exynos9610
Signed-off-by: Alexandru Chimac <alexchimac@protonmail.com>
2024-09-15 09:53:36 +03:00
Ivaylo Ivanov
4a0977b0f6 lib: Replace the broken newlib implementation with neatlibc
Make 2 different folders for armv7 and aarch64 assembly neatlibc
functions. Add the neatlibc submodule, make it work against the
Makefile system. Pray.

Signed-off-by: Ivaylo Ivanov <ivo.ivanov.ivanov1@gmail.com>
2024-08-06 13:25:07 +03:00
predefine
61bb21275c add BGRA support 2023-11-10 23:06:34 +07:00
Ivaylo Ivanov
7ed7b2b902 soc: apple: Add basic support for Apple T8010 (aka A10)
Signed-off-by: Ivaylo Ivanov <ivo.ivanov.ivanov1@gmail.com>
2023-08-15 14:15:02 +03:00
predefine
9d2a29835c add Samsung Galaxy J4lte & Exynos 7570 support 2023-08-12 01:35:57 +07:00
Ivaylo Ivanov
ed246836e9 lib: simplefb: Add support for RGB888 24bpp (dependant on the stride)
Also comes with small changes here and there.

Signed-off-by: Ivaylo Ivanov <ivo.ivanov.ivanov1@gmail.com>
2023-07-24 09:54:16 +03:00
Ivaylo Ivanov
a1be36ae02 EXPERIMENTAL: Partially implement NewLib
Signed-off-by: Ivaylo Ivanov <ivo.ivanov.ivanov1@gmail.com>
2023-07-19 19:37:17 +03:00
Ivaylo Ivanov
05a43c1d73
Merge branch 'master' into master 2023-07-18 14:59:15 +03:00
Ivaylo Ivanov
ed98b5d900 .: Multiple changes
arch: Implement ARM32 support
soc: Implement ARM32 support for MSM8916
board: Implement ARM32 support for Samsung Galaxy J5 2015
include: main: Revert built-in memcpy, rearrange and add support for writel
lib: simplefb: Make the clear screen function usable

Signed-off-by: Ivaylo Ivanov <ivo.ivanov.ivanov1@gmail.com>
Cc: Efim Girjeu <efimgirjeu@gmail.com>
2023-07-18 14:41:37 +03:00
halal-beef
5901622aaa Support for the exynos990 and the Samsung S20 2023-07-16 10:20:06 +01:00
Faiz Faadhillah
1f62b4e5ac soc: exynos: Add basic support for Exynos 7420
Signed-off-by: Faiz Faadhillah <faiz.faadhillah@gmail.com>
2022-06-29 12:59:54 +07:00
Markuss Broks
3643d6a0c8 main: Use built-in memcpy
Signed-off-by: Markuss Broks <markuss.broks@gmail.com>
2022-06-16 18:18:20 +03:00
David Wronek
cc694062ec soc: exynos: Add basic support for Exynos 7885
Signed-off-by: David Wronek <w.david0@protonmail.com>
2022-06-15 17:45:19 +03:00
ivoszbg
c038c7839c lib: Move debug print function into a separate file
Signed-off-by: Ivaylo Ivanov <ivo.ivanov.ivanov1@gmail.com>
2022-06-14 19:51:51 +03:00
Markuss Broks
0ac15a9da6 main: Drop PAYLOAD_SIZE, use compile time kernel size
Signed-off-by: Markuss Broks <markuss.broks@gmail.com>
2022-06-14 19:06:38 +03:00
ivoszbg
4d1a5f84bc board: Drop Board specific headers
It isn't required anymore, as we've moved on to Kconfig.

Signed-off-by: Ivaylo Ivanov <ivo.ivanov.ivanov1@gmail.com>
2022-06-14 18:51:04 +03:00
Markuss Broks
9850f8756b board: starlte: Add support for Samsung Galaxy S9
Also while we're at it, do some cleanup.
Signed-off-by: Markuss Broks <markuss.broks@gmail.com>
2022-06-14 18:46:17 +03:00
Markuss Broks
ad48f247fb soc: exynos: Add basic support for Exynos 9810
Signed-off-by: Markuss Broks <markuss.broks@gmail.com>
2022-06-14 18:30:11 +03:00
ivoszbg
fd8ed2d1b8 uniLoader: Migrate to kconfig based configurations
Signed-off-by: Ivaylo Ivanov <ivo.ivanov.ivanov1@gmail.com>
2022-06-14 18:02:47 +03:00
ivoszbg
e364dfbc1b lib: Implement simplefb driver for framebuffer management
Signed-off-by: Ivaylo Ivanov <ivo.ivanov.ivanov1@gmail.com>
2022-06-13 21:43:45 +03:00
ivoszbg
94b2cf0c4a board: apple: Add basic iPhone 6 support
Signed-off-by: Ivaylo Ivanov <ivo.ivanov.ivanov1@gmail.com>
2022-06-12 19:08:34 +03:00
ivoszbg
abb3a2cf4a soc: apple: Add basic support for Apple T7000 (aka A8)
Signed-off-by: Ivaylo Ivanov <ivo.ivanov.ivanov1@gmail.com>
2022-06-12 19:03:26 +03:00
ivoszbg
6b4830e362 .: Initiate the project
Signed-off-by: Ivaylo Ivanov <ivo.ivanov.ivanov1@gmail.com>
2022-06-12 17:09:32 +03:00