arch/arm64/boot/dts/ti/k3-am62x-phyboard-lyra-gpio-fan.dtso

Source file repositories/reference/linux-study-clean/arch/arm64/boot/dts/ti/k3-am62x-phyboard-lyra-gpio-fan.dtso

File Facts

System
Linux kernel
Corpus path
arch/arm64/boot/dts/ti/k3-am62x-phyboard-lyra-gpio-fan.dtso
Extension
.dtso
Size
1320 bytes
Lines
61
Domain
Architecture Layer
Bucket
arch/arm64
Inferred role
Architecture Layer: arch/arm64
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: GPL-2.0-only OR MIT
/*
 * Copyright (C) 2024 PHYTEC America LLC
 * Author: Garrett Giordano <ggiordano@phytec.com>
 */

/dts-v1/;
/plugin/;

#include <dt-bindings/gpio/gpio.h>
#include <dt-bindings/thermal/thermal.h>
#include "k3-pinctrl.h"

&{/} {
	fan: gpio-fan {
		compatible = "gpio-fan";
		gpio-fan,speed-map = <0 0 8600 1>;
		gpios = <&main_gpio0 40 GPIO_ACTIVE_LOW>;
		#cooling-cells = <2>;
		pinctrl-names = "default";
		pinctrl-0 = <&gpio_fan_pins_default>;
	};
};

&main_pmx0 {
	gpio_fan_pins_default: gpio-fan-default-pins {
		pinctrl-single,pins = <
			AM62X_IOPAD(0x0a4, PIN_OUTPUT, 7) /* (M22) GPMC0_DIR.GPIO0_40 */
		>;
	};
};

&thermal_zones {
	main0_thermal: main0-thermal {
		trips {
			main0_fan: main0-fan {
				temperature = <65000>;  /* millicelsius */
				hysteresis = <2000>;    /* millicelsius */
				type = "active";
			};
		};

		cooling-maps {
			map0 {
				trip = <&main0_alert>;
				cooling-device =
					<&fan THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
					<&cpu0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
					<&cpu1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
					<&cpu2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
					<&cpu3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
			};

			map1 {
				trip = <&main0_fan>;
				cooling-device = <&fan THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
			};
		};
	};
};

Annotation

Implementation Notes