arch/arm64/boot/dts/ti/k3-am642-evm-icssg0.dtso

Source file repositories/reference/linux-study-clean/arch/arm64/boot/dts/ti/k3-am642-evm-icssg0.dtso

File Facts

System
Linux kernel
Corpus path
arch/arm64/boot/dts/ti/k3-am642-evm-icssg0.dtso
Extension
.dtso
Size
5750 bytes
Lines
169
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
/**
 * DT overlay for enabling ICSSG0 dual EMAC on AM642 EVM
 *
 * AM642 EVM Product link: https://www.ti.com/tool/TMDS64EVM
 * DP83TG720 daughter card link: https://www.ti.com/tool/DP83TG720-IND-SPE-EVM
 *
 * Copyright (C) 2020-2026 Texas Instruments Incorporated - https://www.ti.com/
 */

/dts-v1/;
/plugin/;

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

&{/} {
	icssg0_eth: icssg0-eth {
		compatible = "ti,am642-icssg-prueth";
		pinctrl-names = "default";
		pinctrl-0 = <&pru_icssg0_rgmii1_pins_default>, <&pru_icssg0_rgmii2_pins_default>;
		sram = <&oc_sram>;

		dmas = <&main_pktdma 0xc100 15>, /* egress slice 0 */
		       <&main_pktdma 0xc101 15>, /* egress slice 0 */
		       <&main_pktdma 0xc102 15>, /* egress slice 0 */
		       <&main_pktdma 0xc103 15>, /* egress slice 0 */
		       <&main_pktdma 0xc104 15>, /* egress slice 1 */
		       <&main_pktdma 0xc105 15>, /* egress slice 1 */
		       <&main_pktdma 0xc106 15>, /* egress slice 1 */
		       <&main_pktdma 0xc107 15>, /* egress slice 1 */
		       <&main_pktdma 0x4100 15>, /* ingress slice 0 */
		       <&main_pktdma 0x4101 15>; /* ingress slice 1 */
		dma-names = "tx0-0", "tx0-1", "tx0-2", "tx0-3",
			    "tx1-0", "tx1-1", "tx1-2", "tx1-3",
			    "rx0", "rx1";

		interrupt-parent = <&icssg0_intc>;
		interrupts = <24 0 2>, <25 1 3>;
		interrupt-names = "tx_ts0", "tx_ts1";

		ti,prus = <&pru0_0>, <&rtu0_0>, <&tx_pru0_0>, <&pru0_1>, <&rtu0_1>, <&tx_pru0_1>;
		firmware-name = "ti-pruss/am64x-sr2-pru0-prueth-fw.elf",
				"ti-pruss/am64x-sr2-rtu0-prueth-fw.elf",
				"ti-pruss/am64x-sr2-txpru0-prueth-fw.elf",
				"ti-pruss/am64x-sr2-pru1-prueth-fw.elf",
				"ti-pruss/am64x-sr2-rtu1-prueth-fw.elf",
				"ti-pruss/am64x-sr2-txpru1-prueth-fw.elf";

		ti,pruss-gp-mux-sel = <2>,	/* MII mode */
				      <2>,
				      <2>,
				      <2>,	/* MII mode */
				      <2>,
				      <2>;

		ti,mii-g-rt = <&icssg0_mii_g_rt>;
		ti,mii-rt = <&icssg0_mii_rt>;
		ti,iep = <&icssg0_iep0>,  <&icssg0_iep1>;
		ti,pa-stats = <&icssg0_pa_stats>;

		ethernet-ports {
			#address-cells = <1>;
			#size-cells = <0>;

			icssg0_emac0: port@0 {
				reg = <0>;
				phy-handle = <&icssg0_phy00>;
				phy-mode = "rgmii-id";
				ti,syscon-rgmii-delay = <&main_conf 0x4100>;

Annotation

Implementation Notes