diff --git a/board/Kconfig b/board/Kconfig index a5394a5..8efbd54 100644 --- a/board/Kconfig +++ b/board/Kconfig @@ -42,6 +42,13 @@ menu "Device Support" help Say Y if you want to include support for Samsung Galaxy Note20 + config SAMSUNG_R0Q + bool "Support for Samsung Galaxy S22" + default n + depends on SM8450 + help + Say Y if you want to include support for Samsung Galaxy S22 + config SAMSUNG_G0S bool "Support for Samsung Galaxy S22+" default n diff --git a/board/Makefile b/board/Makefile index 1172f8a..507d7c6 100644 --- a/board/Makefile +++ b/board/Makefile @@ -3,6 +3,7 @@ lib-$(CONFIG_AMAZON_PW3) += amazon/board-pw3.o lib-$(CONFIG_SAMSUNG_A105F) += samsung/board-a105f.o lib-$(CONFIG_SAMSUNG_A127F) += samsung/board-a127f.o lib-$(CONFIG_SAMSUNG_C1S) += samsung/board-c1s.o +lib-$(CONFIG_SAMSUNG_R0Q) += samsung/board-r0q.o lib-$(CONFIG_SAMSUNG_G0S) += samsung/board-g0s.o lib-$(CONFIG_SAMSUNG_NOBLELTE) += samsung/board-noblelte.o lib-$(CONFIG_SAMSUNG_JACKPOTLTE) += samsung/board-jackpotlte.o diff --git a/board/samsung/board-r0q.c b/board/samsung/board-r0q.c new file mode 100644 index 0000000..fbb7158 --- /dev/null +++ b/board/samsung/board-r0q.c @@ -0,0 +1,44 @@ +/* SPDX-License-Identifier: GPL-2.0 */ + +#include +#include +#include +#include + +int r0q_init(void) +{ + return 0; +} + +int r0q_drv(void) +{ + struct { + int width; + int height; + int stride; + void *address; + } simplefb_data = { + .width = 1080, + .height = 2340, + .stride = 4, + .address = (void *)0xb8000000 + }; + + REGISTER_DRIVER("simplefb", simplefb_probe, &simplefb_data); + return 0; +} + +int r0q_late_init(void) +{ + return 0; +} + +struct board_data board_ops = { + .name = "samsung-r0q", + .ops = { + .early_init = r0q_init, + .drivers_init = r0q_drv, + .late_init = r0q_late_init, + }, + .quirks = 0 +}; diff --git a/configs/r0q_defconfig b/configs/r0q_defconfig new file mode 100644 index 0000000..45450c2 --- /dev/null +++ b/configs/r0q_defconfig @@ -0,0 +1,10 @@ +CONFIG_POSITION_INDEPENDENT=y +CONFIG_SM8450=y +CONFIG_SAMSUNG_R0Q=y +CONFIG_TEXT_BASE=0x87000000 +CONFIG_PAYLOAD_ENTRY=0x90000000 +CONFIG_RAMDISK_ENTRY=0x84000000 +CONFIG_FRAMEBUFFER_BASE=0xb8000000 +CONFIG_FRAMEBUFFER_WIDTH=1080 +CONFIG_FRAMEBUFFER_HEIGHT=2340 +CONFIG_FRAMEBUFFER_STRIDE=4 diff --git a/include/soc/sm8450.h b/include/soc/sm8450.h new file mode 100644 index 0000000..5939275 --- /dev/null +++ b/include/soc/sm8450.h @@ -0,0 +1,6 @@ +/* SPDX-License-Identifier: GPL-2.0 */ + +#ifndef SM8450_H_ +#define SM8450_H_ + +#endif // SM8450_H_ diff --git a/soc/Kconfig b/soc/Kconfig index 2f28071..618334c 100644 --- a/soc/Kconfig +++ b/soc/Kconfig @@ -119,6 +119,13 @@ config QUALCOMM help Say Y if your device uses this Qualcomm SoC + config SM8450 + bool "Support for QUALCOMM SM8450" + default n + select QUALCOMM + help + Say Y if your device uses this Qualcomm SoC + config FREESCALE_IMX6SL bool "Support for Freescale i.MX6SL" default n diff --git a/soc/Makefile b/soc/Makefile index bf9edb6..ca2d5a9 100644 --- a/soc/Makefile +++ b/soc/Makefile @@ -8,3 +8,4 @@ lib-$(CONFIG_EXYNOS_9610) += exynos/exynos9610.o lib-$(CONFIG_EXYNOS_9810) += exynos/exynos9810.o lib-$(CONFIG_EXYNOS_990) += exynos/exynos990.o lib-$(CONFIG_QC32_8916) += qualcomm/msm8916.o +lib-$(CONFIG_SM8450) += qualcomm/sm8450.o diff --git a/soc/qualcomm/sm8450.c b/soc/qualcomm/sm8450.c new file mode 100644 index 0000000..572c0ea --- /dev/null +++ b/soc/qualcomm/sm8450.c @@ -0,0 +1,7 @@ +/* SPDX-License-Identifier: GPL-2.0 */ + +#include + +void soc_init(void) { + +}