xref: /freebsd/sys/contrib/device-tree/src/arm64/exynos/exynos990-c1s.dts (revision 5f62a964e9f8abc6a05d8338273fadd154f0a206)
1*5f62a964SEmmanuel Vadot// SPDX-License-Identifier: GPL-2.0 OR BSD-3-Clause
2*5f62a964SEmmanuel Vadot/*
3*5f62a964SEmmanuel Vadot * Samsung Galaxy Note20 5G (c1s/SM-N981B) device tree source
4*5f62a964SEmmanuel Vadot *
5*5f62a964SEmmanuel Vadot * Copyright (c) 2024, Igor Belwon <igor.belwon@mentallysanemainliners.org>
6*5f62a964SEmmanuel Vadot */
7*5f62a964SEmmanuel Vadot
8*5f62a964SEmmanuel Vadot/dts-v1/;
9*5f62a964SEmmanuel Vadot#include "exynos990.dtsi"
10*5f62a964SEmmanuel Vadot#include <dt-bindings/gpio/gpio.h>
11*5f62a964SEmmanuel Vadot#include <dt-bindings/input/input.h>
12*5f62a964SEmmanuel Vadot#include <dt-bindings/interrupt-controller/irq.h>
13*5f62a964SEmmanuel Vadot
14*5f62a964SEmmanuel Vadot/ {
15*5f62a964SEmmanuel Vadot	model = "Samsung Galaxy Note20";
16*5f62a964SEmmanuel Vadot	compatible = "samsung,c1s", "samsung,exynos990";
17*5f62a964SEmmanuel Vadot
18*5f62a964SEmmanuel Vadot	#address-cells = <2>;
19*5f62a964SEmmanuel Vadot	#size-cells = <2>;
20*5f62a964SEmmanuel Vadot
21*5f62a964SEmmanuel Vadot	chosen {
22*5f62a964SEmmanuel Vadot		#address-cells = <2>;
23*5f62a964SEmmanuel Vadot		#size-cells = <2>;
24*5f62a964SEmmanuel Vadot		ranges;
25*5f62a964SEmmanuel Vadot
26*5f62a964SEmmanuel Vadot		framebuffer0: framebuffer@f1000000 {
27*5f62a964SEmmanuel Vadot			compatible = "simple-framebuffer";
28*5f62a964SEmmanuel Vadot			reg = <0 0xf1000000 0 (1080 * 2400 * 4)>;
29*5f62a964SEmmanuel Vadot			width = <1080>;
30*5f62a964SEmmanuel Vadot			height = <2400>;
31*5f62a964SEmmanuel Vadot			stride = <(1080 * 4)>;
32*5f62a964SEmmanuel Vadot			format = "a8r8g8b8";
33*5f62a964SEmmanuel Vadot		};
34*5f62a964SEmmanuel Vadot	};
35*5f62a964SEmmanuel Vadot
36*5f62a964SEmmanuel Vadot	memory@80000000 {
37*5f62a964SEmmanuel Vadot		device_type = "memory";
38*5f62a964SEmmanuel Vadot		reg = <0x0 0x80000000 0x0 0x3ab00000>,
39*5f62a964SEmmanuel Vadot		      /* Memory hole */
40*5f62a964SEmmanuel Vadot		      <0x0 0xc1200000 0x0 0x1ee00000>,
41*5f62a964SEmmanuel Vadot		      /* Memory hole */
42*5f62a964SEmmanuel Vadot		      <0x0 0xe1900000 0x0 0x1e700000>,
43*5f62a964SEmmanuel Vadot		      /* Memory hole - last block */
44*5f62a964SEmmanuel Vadot		      <0x8 0x80000000 0x1 0x7ec00000>;
45*5f62a964SEmmanuel Vadot	};
46*5f62a964SEmmanuel Vadot
47*5f62a964SEmmanuel Vadot	reserved-memory {
48*5f62a964SEmmanuel Vadot		#address-cells = <2>;
49*5f62a964SEmmanuel Vadot		#size-cells = <2>;
50*5f62a964SEmmanuel Vadot		ranges;
51*5f62a964SEmmanuel Vadot
52*5f62a964SEmmanuel Vadot		cont_splash_mem: framebuffer@f1000000 {
53*5f62a964SEmmanuel Vadot			reg = <0 0xf1000000 0 0x13c6800>;
54*5f62a964SEmmanuel Vadot			no-map;
55*5f62a964SEmmanuel Vadot		};
56*5f62a964SEmmanuel Vadot
57*5f62a964SEmmanuel Vadot		abox_reserved: audio@f7fb0000 {
58*5f62a964SEmmanuel Vadot			reg = <0 0xf7fb0000 0 0x2a50000>;
59*5f62a964SEmmanuel Vadot			no-map;
60*5f62a964SEmmanuel Vadot		};
61*5f62a964SEmmanuel Vadot	};
62*5f62a964SEmmanuel Vadot
63*5f62a964SEmmanuel Vadot	gpio-keys {
64*5f62a964SEmmanuel Vadot		compatible = "gpio-keys";
65*5f62a964SEmmanuel Vadot
66*5f62a964SEmmanuel Vadot		pinctrl-0 = <&key_power &key_voldown &key_volup>;
67*5f62a964SEmmanuel Vadot		pinctrl-names = "default";
68*5f62a964SEmmanuel Vadot
69*5f62a964SEmmanuel Vadot		power-key {
70*5f62a964SEmmanuel Vadot			label = "Power";
71*5f62a964SEmmanuel Vadot			linux,code = <KEY_POWER>;
72*5f62a964SEmmanuel Vadot			gpios = <&gpa2 4 GPIO_ACTIVE_LOW>;
73*5f62a964SEmmanuel Vadot			wakeup-source;
74*5f62a964SEmmanuel Vadot		};
75*5f62a964SEmmanuel Vadot
76*5f62a964SEmmanuel Vadot		voldown-key {
77*5f62a964SEmmanuel Vadot			label = "Volume Down";
78*5f62a964SEmmanuel Vadot			linux,code = <KEY_VOLUMEDOWN>;
79*5f62a964SEmmanuel Vadot			gpios = <&gpa0 4 GPIO_ACTIVE_LOW>;
80*5f62a964SEmmanuel Vadot		};
81*5f62a964SEmmanuel Vadot
82*5f62a964SEmmanuel Vadot		volup-key {
83*5f62a964SEmmanuel Vadot			label = "Volume Up";
84*5f62a964SEmmanuel Vadot			linux,code = <KEY_VOLUMEUP>;
85*5f62a964SEmmanuel Vadot			gpios = <&gpa0 3 GPIO_ACTIVE_LOW>;
86*5f62a964SEmmanuel Vadot		};
87*5f62a964SEmmanuel Vadot	};
88*5f62a964SEmmanuel Vadot};
89*5f62a964SEmmanuel Vadot
90*5f62a964SEmmanuel Vadot&oscclk {
91*5f62a964SEmmanuel Vadot	clock-frequency = <26000000>;
92*5f62a964SEmmanuel Vadot};
93*5f62a964SEmmanuel Vadot
94*5f62a964SEmmanuel Vadot&pinctrl_alive {
95*5f62a964SEmmanuel Vadot	key_power: key-power-pins {
96*5f62a964SEmmanuel Vadot		samsung,pins = "gpa2-4";
97*5f62a964SEmmanuel Vadot		samsung,pin-function = <EXYNOS_PIN_FUNC_EINT>;
98*5f62a964SEmmanuel Vadot		samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
99*5f62a964SEmmanuel Vadot		samsung,pin-drv = <EXYNOS5420_PIN_DRV_LV1>;
100*5f62a964SEmmanuel Vadot	};
101*5f62a964SEmmanuel Vadot
102*5f62a964SEmmanuel Vadot	key_voldown: key-voldown-pins {
103*5f62a964SEmmanuel Vadot		samsung,pins = "gpa0-4";
104*5f62a964SEmmanuel Vadot		samsung,pin-function = <EXYNOS_PIN_FUNC_EINT>;
105*5f62a964SEmmanuel Vadot		samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
106*5f62a964SEmmanuel Vadot		samsung,pin-drv = <EXYNOS5420_PIN_DRV_LV1>;
107*5f62a964SEmmanuel Vadot	};
108*5f62a964SEmmanuel Vadot
109*5f62a964SEmmanuel Vadot	key_volup: key-volup-pins {
110*5f62a964SEmmanuel Vadot		samsung,pins = "gpa0-3";
111*5f62a964SEmmanuel Vadot		samsung,pin-function = <EXYNOS_PIN_FUNC_EINT>;
112*5f62a964SEmmanuel Vadot		samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
113*5f62a964SEmmanuel Vadot		samsung,pin-drv = <EXYNOS5420_PIN_DRV_LV1>;
114*5f62a964SEmmanuel Vadot	};
115*5f62a964SEmmanuel Vadot};
116