arch/arm64/boot/dts/qcom/sm7225-fairphone-fp4.dts

Source file repositories/reference/linux-study-clean/arch/arm64/boot/dts/qcom/sm7225-fairphone-fp4.dts

File Facts

System
Linux kernel
Corpus path
arch/arm64/boot/dts/qcom/sm7225-fairphone-fp4.dts
Extension
.dts
Size
26255 bytes
Lines
1267
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, Luca Weiss <luca@z3ntu.xyz>
 */

/dts-v1/;

/* PM7250B is configured to use SID2/3 */
#define PM7250B_SID 2
#define PM7250B_SID1 3

/* PMK8350 (in reality a PMK8003) is configured to use SID6 instead of 0 */
#define PMK8350_SID 6

#include <dt-bindings/firmware/qcom,scm.h>
#include <dt-bindings/gpio/gpio.h>
#include <dt-bindings/iio/qcom,spmi-adc7-pmk8350.h>
#include <dt-bindings/input/input.h>
#include <dt-bindings/leds/common.h>
#include <dt-bindings/pinctrl/qcom,pmic-gpio.h>
#include <dt-bindings/regulator/qcom,rpmh-regulator.h>
#include <dt-bindings/sound/qcom,q6asm.h>
#include <dt-bindings/usb/pd.h>
#include "sm7225.dtsi"
#include "pm6150l.dtsi"
#include "pm6350.dtsi"
#include "pm7250b.dtsi"
#include "pmk8350.dtsi"

/ {
	model = "Fairphone 4";
	compatible = "fairphone,fp4", "qcom,sm7225";
	chassis-type = "handset";

	/* required for bootloader to select correct board */
	qcom,msm-id = <459 0x10000>;
	qcom,board-id = <8 32>;

	aliases {
		serial0 = &uart9;
		serial1 = &uart1;
	};

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

		stdout-path = "serial0:115200n8";

		framebuffer0: framebuffer@a000000 {
			compatible = "simple-framebuffer";
			reg = <0 0xa0000000 0 (2340 * 1080 * 4)>;
			width = <1080>;
			height = <2340>;
			stride = <(1080 * 4)>;
			format = "a8r8g8b8";
		};
	};

	gpio-keys {
		compatible = "gpio-keys";
		pinctrl-names = "default";
		pinctrl-0 = <&gpio_keys_pin>;

		key-volume-up {
			label = "volume_up";
			linux,code = <KEY_VOLUMEUP>;
			gpios = <&pm6350_gpios 2 GPIO_ACTIVE_LOW>;
		};

Annotation

Implementation Notes