/linux-5.10/Documentation/devicetree/bindings/clock/ |
D | nvidia,tegra124-car.txt | 1 NVIDIA Tegra124 and Tegra132 Clock And Reset Controller 4 Documentation/devicetree/bindings/clock/clock-bindings.txt 10 - compatible : Should be "nvidia,tegra124-car" or "nvidia,tegra132-car" 11 - reg : Should contain CAR registers location and length 12 - clocks : Should contain phandle and clock specifiers for two clocks: 13 the 32 KHz "32k_in", and the board-specific oscillator "osc". 14 - #clock-cells : Should be 1. 17 <dt-bindings/clock/tegra124-car-common.h> (which covers IDs common 18 to Tegra124 and Tegra132) and <dt-bindings/clock/tegra124-car.h> 19 (for Tegra124-specific clocks). [all …]
|
/linux-5.10/drivers/memory/tegra/ |
D | Makefile | 1 # SPDX-License-Identifier: GPL-2.0 2 tegra-mc-y := mc.o 4 tegra-mc-$(CONFIG_ARCH_TEGRA_2x_SOC) += tegra20.o 5 tegra-mc-$(CONFIG_ARCH_TEGRA_3x_SOC) += tegra30.o 6 tegra-mc-$(CONFIG_ARCH_TEGRA_114_SOC) += tegra114.o 7 tegra-mc-$(CONFIG_ARCH_TEGRA_124_SOC) += tegra124.o 8 tegra-mc-$(CONFIG_ARCH_TEGRA_132_SOC) += tegra124.o 9 tegra-mc-$(CONFIG_ARCH_TEGRA_210_SOC) += tegra210.o 11 obj-$(CONFIG_TEGRA_MC) += tegra-mc.o 13 obj-$(CONFIG_TEGRA20_EMC) += tegra20-emc.o [all …]
|
D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0-only 15 This driver is for the External Memory Controller (EMC) found on 16 Tegra20 chips. The EMC controls the external DRAM on the board. 25 This driver is for the External Memory Controller (EMC) found on 26 Tegra30 chips. The EMC controls the external DRAM on the board. 31 bool "NVIDIA Tegra124 External Memory Controller driver" 35 This driver is for the External Memory Controller (EMC) found on 36 Tegra124 chips. The EMC controls the external DRAM on the board. 49 This driver is for the External Memory Controller (EMC) found on 50 Tegra210 chips. The EMC controls the external DRAM on the board.
|
D | tegra124-emc.c | 1 // SPDX-License-Identifier: GPL-2.0-only 9 #include <linux/clk-provider.h> 21 #include <soc/tegra/emc.h> 488 static void emc_ccfifo_writel(struct tegra_emc *emc, u32 value, in emc_ccfifo_writel() argument 491 writel(value, emc->regs + EMC_CCFIFO_DATA); in emc_ccfifo_writel() 492 writel(offset, emc->regs + EMC_CCFIFO_ADDR); in emc_ccfifo_writel() 495 static void emc_seq_update_timing(struct tegra_emc *emc) in emc_seq_update_timing() argument 500 writel(1, emc->regs + EMC_TIMING_CONTROL); in emc_seq_update_timing() 503 value = readl(emc->regs + EMC_STATUS); in emc_seq_update_timing() 509 dev_err(emc->dev, "timing update timed out\n"); in emc_seq_update_timing() [all …]
|
D | tegra30-emc.c | 1 // SPDX-License-Identifier: GPL-2.0+ 5 * Based on downstream driver from NVIDIA and tegra124-emc.c 6 * Copyright (C) 2011-2014 NVIDIA Corporation 9 * Copyright (C) 2019 GRATE-DRIVER project 357 static int emc_seq_update_timing(struct tegra_emc *emc) in emc_seq_update_timing() argument 362 writel_relaxed(EMC_TIMING_UPDATE, emc->regs + EMC_TIMING_CONTROL); in emc_seq_update_timing() 364 err = readl_relaxed_poll_timeout_atomic(emc->regs + EMC_STATUS, val, in emc_seq_update_timing() 368 dev_err(emc->dev, "failed to update timing: %d\n", err); in emc_seq_update_timing() 377 struct tegra_emc *emc = data; in tegra_emc_isr() local 381 status = readl_relaxed(emc->regs + EMC_INTSTATUS) & intmask; in tegra_emc_isr() [all …]
|
/linux-5.10/drivers/clk/tegra/ |
D | Makefile | 1 # SPDX-License-Identifier: GPL-2.0 2 obj-y += clk.o 3 obj-y += clk-audio-sync.o 4 obj-y += clk-dfll.o 5 obj-y += clk-divider.o 6 obj-y += clk-periph.o 7 obj-y += clk-periph-fixed.o 8 obj-y += clk-periph-gate.o 9 obj-y += clk-pll.o 10 obj-y += clk-pll-out.o [all …]
|
D | clk-tegra124.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Copyright (c) 2012-2014 NVIDIA CORPORATION. All rights reserved. 7 #include <linux/clk-provider.h> 14 #include <dt-bindings/clock/tegra124-car.h> 15 #include <dt-bindings/reset/tegra124-car.h> 18 #include "clk-id.h" 22 * banks present in the Tegra124/132 CAR IP block. The banks are 95 #define MASK(x) (BIT(x) - 1) 995 { .dev_id = "rtc-tegra", .dt_id = TEGRA124_CLK_RTC }, 1053 clk = tegra_clk_register_mc("mc", "emc", clk_base + CLK_SOURCE_EMC, in tegra124_periph_clk_init() [all …]
|
/linux-5.10/Documentation/devicetree/bindings/memory-controllers/ |
D | nvidia,tegra124-emc.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/memory-controllers/nvidia,tegra124-emc.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: NVIDIA Tegra124 SoC External Memory Controller 10 - Thierry Reding <thierry.reding@gmail.com> 11 - Jon Hunter <jonathanh@nvidia.com> 14 The EMC interfaces with the off-chip SDRAM to service the request stream 19 const: nvidia,tegra124-emc 26 - description: external memory clock [all …]
|
D | nvidia,tegra124-mc.yaml | 1 # SPDX-License-Identifier: (GPL-2.0) 3 --- 4 $id: http://devicetree.org/schemas/memory-controllers/nvidia,tegra124-mc.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: NVIDIA Tegra124 SoC Memory Controller 10 - Jon Hunter <jonathanh@nvidia.com> 11 - Thierry Reding <thierry.reding@gmail.com> 14 Tegra124 SoC features a hybrid 2x32-bit / 1x64-bit memory controller. 16 two memory channels. The Tegra124 Memory Controller handles memory requests 22 const: nvidia,tegra124-mc [all …]
|
/linux-5.10/arch/arm/boot/dts/ |
D | tegra124.dtsi | 1 // SPDX-License-Identifier: GPL-2.0 2 #include <dt-bindings/clock/tegra124-car.h> 3 #include <dt-bindings/gpio/tegra-gpio.h> 4 #include <dt-bindings/memory/tegra124-mc.h> 5 #include <dt-bindings/pinctrl/pinctrl-tegra.h> 6 #include <dt-bindings/interrupt-controller/arm-gic.h> 7 #include <dt-bindings/reset/tegra124-car.h> 8 #include <dt-bindings/thermal/tegra124-soctherm.h> 9 #include <dt-bindings/soc/tegra-pmc.h> 12 compatible = "nvidia,tegra124"; [all …]
|
D | tegra124-jetson-tk1.dts | 1 // SPDX-License-Identifier: GPL-2.0 2 /dts-v1/; 4 #include <dt-bindings/input/input.h> 5 #include "tegra124.dtsi" 7 #include "tegra124-jetson-tk1-emc.dtsi" 10 model = "NVIDIA Tegra124 Jetson TK1"; 11 compatible = "nvidia,jetson-tk1", "nvidia,tegra124"; 17 /* This order keeps the mapping DB9 connector <-> ttyS0 */ 24 stdout-path = "serial0:115200n8"; 34 avddio-pex-supply = <&vdd_1v05_run>; [all …]
|
D | tegra124-nyan-blaze.dts | 1 // SPDX-License-Identifier: GPL-2.0 2 /dts-v1/; 4 #include "tegra124-nyan.dtsi" 6 #include "tegra124-nyan-blaze-emc.dtsi" 10 compatible = "google,nyan-blaze-rev10", "google,nyan-blaze-rev9", 11 "google,nyan-blaze-rev8", "google,nyan-blaze-rev7", 12 "google,nyan-blaze-rev6", "google,nyan-blaze-rev5", 13 "google,nyan-blaze-rev4", "google,nyan-blaze-rev3", 14 "google,nyan-blaze-rev2", "google,nyan-blaze-rev1", 15 "google,nyan-blaze-rev0", "google,nyan-blaze", [all …]
|
D | tegra124-nyan-big.dts | 1 // SPDX-License-Identifier: GPL-2.0 2 /dts-v1/; 4 #include "tegra124-nyan.dtsi" 6 #include "tegra124-nyan-big-emc.dtsi" 9 model = "Acer Chromebook 13 CB5-311"; 10 compatible = "google,nyan-big-rev7", "google,nyan-big-rev6", 11 "google,nyan-big-rev5", "google,nyan-big-rev4", 12 "google,nyan-big-rev3", "google,nyan-big-rev2", 13 "google,nyan-big-rev1", "google,nyan-big-rev0", 14 "google,nyan-big", "google,nyan", "nvidia,tegra124"; [all …]
|
D | tegra124-apalis-v1.2.dtsi | 1 // SPDX-License-Identifier: GPL-2.0 OR MIT 3 * Copyright 2016-2018 Toradex AG 6 #include "tegra124.dtsi" 7 #include "tegra124-apalis-emc.dtsi" 21 avddio-pex-supply = <®_1v05_vdd>; 22 avdd-pex-pll-supply = <®_1v05_vdd>; 23 avdd-pll-erefe-supply = <®_1v05_avdd>; 24 dvddio-pex-supply = <®_1v05_vdd>; 25 hvdd-pex-pll-e-supply = <®_module_3v3>; 26 hvdd-pex-supply = <®_module_3v3>; [all …]
|
D | tegra124-apalis.dtsi | 1 // SPDX-License-Identifier: GPL-2.0 OR X11 3 * Copyright 2016-2019 Toradex AG 6 #include "tegra124.dtsi" 7 #include "tegra124-apalis-emc.dtsi" 20 avddio-pex-supply = <®_1v05_vdd>; 21 avdd-pex-pll-supply = <®_1v05_vdd>; 22 avdd-pll-erefe-supply = <®_1v05_avdd>; 23 dvddio-pex-supply = <®_1v05_vdd>; 24 hvdd-pex-pll-e-supply = <®_module_3v3>; 25 hvdd-pex-supply = <®_module_3v3>; [all …]
|
/linux-5.10/arch/arm64/boot/dts/nvidia/ |
D | tegra132.dtsi | 1 // SPDX-License-Identifier: GPL-2.0 2 #include <dt-bindings/clock/tegra124-car.h> 3 #include <dt-bindings/gpio/tegra-gpio.h> 4 #include <dt-bindings/memory/tegra124-mc.h> 5 #include <dt-bindings/pinctrl/pinctrl-tegra.h> 6 #include <dt-bindings/pinctrl/pinctrl-tegra-xusb.h> 7 #include <dt-bindings/interrupt-controller/arm-gic.h> 8 #include <dt-bindings/thermal/tegra124-soctherm.h> 9 #include <dt-bindings/soc/tegra-pmc.h> 12 compatible = "nvidia,tegra132", "nvidia,tegra124"; [all …]
|
D | tegra210.dtsi | 1 // SPDX-License-Identifier: GPL-2.0 2 #include <dt-bindings/clock/tegra210-car.h> 3 #include <dt-bindings/gpio/tegra-gpio.h> 4 #include <dt-bindings/memory/tegra210-mc.h> 5 #include <dt-bindings/pinctrl/pinctrl-tegra.h> 6 #include <dt-bindings/pinctrl/pinctrl-tegra-io-pad.h> 7 #include <dt-bindings/reset/tegra210-car.h> 8 #include <dt-bindings/interrupt-controller/arm-gic.h> 9 #include <dt-bindings/thermal/tegra124-soctherm.h> 10 #include <dt-bindings/soc/tegra-pmc.h> [all …]
|
/linux-5.10/Documentation/devicetree/bindings/arm/tegra/ |
D | nvidia,tegra30-actmon.txt | 9 - compatible: should be "nvidia,tegra<chip>-actmon" 10 - reg: offset and length of the register set for the device 11 - interrupts: standard interrupt property 12 - clocks: Must contain a phandle and clock specifier pair for each entry in 13 clock-names. See ../../clock/clock-bindings.txt for details. 14 - clock-names: Must include the following entries: 15 - actmon 16 - emc 17 - resets: Must contain an entry for each entry in reset-names. See 19 - reset-names: Must include the following entries: [all …]
|
/linux-5.10/arch/arm/mach-tegra/ |
D | sleep-tegra30.S | 1 /* SPDX-License-Identifier: GPL-2.0-only */ 11 #include <asm/asm-offsets.h> 143 * Puts the current CPU in wait-for-event mode on the flow controller 144 * and powergates it -- flags (in R0) indicate the request type. 147 * corrupts r0-r4, r10-r12 244 * CPU power-gating process, to avoid loading from SDRAM which 245 * are not supported once SDRAM is put into self-refresh. 247 * disabled before putting SDRAM into self-refresh to avoid 307 * self-refresh, PLLC, PLLM and PLLP reenabled, CPU running on PLLX, 376 * enabled by the Tegra30 CLK driver on an as-needed basis, see [all …]
|
/linux-5.10/drivers/devfreq/ |
D | tegra30-devfreq.c | 1 // SPDX-License-Identifier: GPL-2.0-only 60 * transaction takes 4 EMC clocks for Tegra124; So the COUNT_WEIGHT is 81 * struct tegra_devfreq_device_config - configuration specific to an ACTMON 101 * increasing the EMC frequency when the CPU is very busy but not 135 * struct tegra_devfreq_device - state specific to an ACTMON device 195 return readl_relaxed(tegra->regs + offset); in actmon_readl() 200 writel_relaxed(val, tegra->regs + offset); in actmon_writel() 205 return readl_relaxed(dev->regs + offset); in device_readl() 211 writel_relaxed(val, dev->regs + offset); in device_writel() 229 u32 avg_band_freq = tegra->max_freq * ACTMON_DEFAULT_AVG_BAND / KHZ; in tegra_devfreq_update_avg_wmark() [all …]
|
/linux-5.10/drivers/usb/host/ |
D | xhci-tegra.c | 1 // SPDX-License-Identifier: GPL-2.0 11 #include <linux/dma-mapping.h> 280 return readl(tegra->fpci_base + offset); in fpci_readl() 286 writel(value, tegra->fpci_base + offset); in fpci_writel() 291 return readl(tegra->ipfs_base + offset); in ipfs_readl() 297 writel(value, tegra->ipfs_base + offset); in ipfs_writel() 324 struct clk *clk = tegra->ss_src_clk; in tegra_xusb_set_ss_clk() 338 new_parent_rate = clk_get_rate(tegra->pll_u_480m); in tegra_xusb_set_ss_clk() 345 err = clk_set_parent(clk, tegra->pll_u_480m); in tegra_xusb_set_ss_clk() 361 err = clk_set_parent(clk, tegra->clk_m); in tegra_xusb_set_ss_clk() [all …]
|