arch/arm64/boot/dts/qcom/sm8350-sony-xperia-sagami.dtsi

Source file repositories/reference/linux-study-clean/arch/arm64/boot/dts/qcom/sm8350-sony-xperia-sagami.dtsi

File Facts

System
Linux kernel
Corpus path
arch/arm64/boot/dts/qcom/sm8350-sony-xperia-sagami.dtsi
Extension
.dtsi
Size
20621 bytes
Lines
923
Domain
Architecture Layer
Bucket
arch/arm64
Inferred role
Architecture Layer: configuration, schema, or hardware description
Status
atlas-only

Why This File Exists

CPU and platform-specific kernel glue: boot entry, traps, syscall entry, interrupts, page tables, context switch, and low-level barriers.

Dependency Surface

Detected Declarations

Annotated Snippet

// SPDX-License-Identifier: BSD-3-Clause
/*
 * Copyright (c) 2021, Konrad Dybcio <konrad.dybcio@somainline.org>
 */

#include <dt-bindings/pinctrl/qcom,pmic-gpio.h>
#include <dt-bindings/regulator/qcom,rpmh-regulator.h>
#include "sm8350.dtsi"
#include "pm8350.dtsi"
#include "pm8350b.dtsi"
#include "pm8350c.dtsi"
#include "pmk8350.dtsi"
#include "pmr735a.dtsi"
#include "pmr735b.dtsi"

/ {
	/*
	 * Yes, you are correct, there is NO MORE {msm,board,pmic}-id on SM8350!
	 * Adding it will cause the bootloader to go crazy and randomly crash
	 * shortly after closing UEFI boot services.. Perhaps that has something
	 * to do with the OS running inside a VM now..?
	 */

	chassis-type = "handset";

	chosen {
		#address-cells = <2>;
		#size-cells = <2>;
		ranges;

		framebuffer: framebuffer@e1000000 {
			compatible = "simple-framebuffer";
			reg = <0 0xe1000000 0 0x2300000>;

			/* The display, even though it's 4K, initializes at 1080-ish p */
			width = <1096>;
			height = <2560>;
			stride = <(1096 * 4)>;
			format = "a8r8g8b8";
			/*
			 * That's (going to be) a lot of clocks, but it's necessary due
			 * to unused clk cleanup & no panel driver yet
			 */
			clocks = <&gcc GCC_DISP_HF_AXI_CLK>,
				 <&gcc GCC_DISP_SF_AXI_CLK>;
		};
	};

	gpio-keys {
		compatible = "gpio-keys";

		pinctrl-names = "default";
		pinctrl-0 = <&focus_n &snapshot_n &vol_down_n &g_assist_n>;

		key-camera-focus {
			label = "Camera Focus";
			linux,code = <KEY_CAMERA_FOCUS>;
			gpios = <&pm8350b_gpios 8 GPIO_ACTIVE_LOW>;
			debounce-interval = <15>;
			linux,can-disable;
			wakeup-source;
		};

		key-camera-snapshot {
			label = "Camera Snapshot";
			linux,code = <KEY_CAMERA>;
			gpios = <&pm8350b_gpios 5 GPIO_ACTIVE_LOW>;
			debounce-interval = <15>;
			linux,can-disable;
			wakeup-source;

Annotation

Implementation Notes