| /linux/drivers/memory/tegra/ | 
| H A D | tegra210-emc-table.c | 1 // SPDX-License-Identifier: GPL-2.08 #include "tegra210-emc.h"
 15 	struct tegra210_emc *emc = dev_get_drvdata(dev);  in tegra210_emc_table_device_init()  local
 19 	timings = memremap(rmem->base, rmem->size, MEMREMAP_WB);  in tegra210_emc_table_device_init()
 21 		dev_err(dev, "failed to map EMC table\n");  in tegra210_emc_table_device_init()
 22 		return -ENOMEM;  in tegra210_emc_table_device_init()
 33 	if (emc->derated) {  in tegra210_emc_table_device_init()
 34 		dev_warn(dev, "excess EMC table '%s'\n", rmem->name);  in tegra210_emc_table_device_init()
 38 	if (emc->nominal) {  in tegra210_emc_table_device_init()
 39 		if (count != emc->num_timings) {  in tegra210_emc_table_device_init()
 [all …]
 
 | 
| H A D | Makefile | 1 # SPDX-License-Identifier: GPL-2.02 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
 10 tegra-mc-$(CONFIG_ARCH_TEGRA_186_SOC) += tegra186.o
 11 tegra-mc-$(CONFIG_ARCH_TEGRA_194_SOC) += tegra186.o tegra194.o
 [all …]
 
 | 
| H A D | tegra210-emc-core.c | 1 // SPDX-License-Identifier: GPL-2.03  * Copyright (c) 2015-2020, NVIDIA CORPORATION.  All rights reserved.
 21 #include "tegra210-emc.h"
 22 #include "tegra210-mc.h"
 62 	   next->trim_regs[EMC_PMACRO_OB_DDLL_LONG_DQ_RANK ##		\
 69 	    next->trim_perch_regs[EMC ## chan ##			\
 561 	struct tegra210_emc *emc = timer_container_of(emc, timer, training);  in tegra210_emc_train()  local
 564 	if (!emc->last)  in tegra210_emc_train()
 567 	spin_lock_irqsave(&emc->lock, flags);  in tegra210_emc_train()
 569 	if (emc->sequence->periodic_compensation)  in tegra210_emc_train()
 [all …]
 
 | 
| H A D | tegra210-emc-cc-r21021.c | 1 // SPDX-License-Identifier: GPL-2.03  * Copyright (c) 2014-2020, NVIDIA CORPORATION.  All rights reserved.
 14 #include "tegra210-emc.h"
 15 #include "tegra210-mc.h"
 36 #define emc_dbg(emc, flags, ...) dev_dbg(emc->dev, __VA_ARGS__)  argument
 53  * PTFV defines - basically just indexes into the per table PTFV array.
 78 	({ next->ptfv_list[(dev)] =					\
 79 	   next->ptfv_list[(dev)] /					\
 80 	   next->ptfv_list[PTFV_DVFS_SAMPLES_INDEX]; })
 86 	({ next->ptfv_list[(dev)] +=					\
 [all …]
 
 | 
| H A D | tegra210-emc.h | 1 /* SPDX-License-Identifier: GPL-2.0 */3  * Copyright (c) 2015-2020, NVIDIA CORPORATION.  All rights reserved.
 891 	/* nominal EMC frequency table */
 893 	/* derated EMC frequency table */
 896 	/* currently selected table (nominal or derated) */
 939 	void (*set_clock)(struct tegra210_emc *emc, u32 clksrc);
 940 	u32 (*periodic_compensation)(struct tegra210_emc *emc);
 943 static inline void emc_writel(struct tegra210_emc *emc, u32 value,  in emc_writel()  argument
 946 	writel_relaxed(value, emc->regs + offset);  in emc_writel()
 949 static inline u32 emc_readl(struct tegra210_emc *emc, unsigned int offset)  in emc_readl()  argument
 [all …]
 
 | 
| H A D | tegra124-emc.c | 1 // SPDX-License-Identifier: GPL-2.0-only9 #include <linux/clk-provider.h>
 15 #include <linux/interconnect-provider.h>
 507 	 * There are multiple sources in the EMC driver which could request
 512 	/* protect shared rate-change code path */
 518 static void emc_ccfifo_writel(struct tegra_emc *emc, u32 value,  in emc_ccfifo_writel()  argument
 521 	writel(value, emc->regs + EMC_CCFIFO_DATA);  in emc_ccfifo_writel()
 522 	writel(offset, emc->regs + EMC_CCFIFO_ADDR);  in emc_ccfifo_writel()
 525 static void emc_seq_update_timing(struct tegra_emc *emc)  in emc_seq_update_timing()  argument
 530 	writel(1, emc->regs + EMC_TIMING_CONTROL);  in emc_seq_update_timing()
 [all …]
 
 | 
| H A D | tegra20-emc.c | 1 // SPDX-License-Identifier: GPL-2.014 #include <linux/interconnect-provider.h>
 216 	 * There are multiple sources in the EMC driver which could request
 221 	/* protect shared rate-change code path */
 237 	struct tegra_emc *emc = data;  in tegra_emc_isr()  local
 241 	status = readl_relaxed(emc->regs + EMC_INTSTATUS) & intmask;  in tegra_emc_isr()
 247 		dev_err_ratelimited(emc->dev,  in tegra_emc_isr()
 251 	writel_relaxed(status, emc->regs + EMC_INTSTATUS);  in tegra_emc_isr()
 256 static struct emc_timing *tegra_emc_find_timing(struct tegra_emc *emc,  in tegra_emc_find_timing()  argument
 262 	for (i = 0; i < emc->num_timings; i++) {  in tegra_emc_find_timing()
 [all …]
 
 | 
| /linux/Documentation/devicetree/bindings/memory-controllers/ | 
| H A D | nvidia,tegra20-emc.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)3 ---
 4 $id: http://devicetree.org/schemas/memory-controllers/nvidia,tegra20-emc.yaml#
 5 $schema: http://devicetree.org/meta-schemas/core.yaml#
 10   - Dmitry Osipenko <digetx@gmail.com>
 11   - Jon Hunter <jonathanh@nvidia.com>
 12   - Thierry Reding <thierry.reding@gmail.com>
 15   The External Memory Controller (EMC) interfaces with the off-chip SDRAM to
 16   service the request stream sent from Memory Controller. The EMC also has
 17   various performance-affecting settings beyond the obvious SDRAM configuration
 [all …]
 
 | 
| /linux/arch/arm/boot/dts/nvidia/ | 
| H A D | tegra20-acer-a500-picasso.dts | 1 // SPDX-License-Identifier: GPL-2.02 /dts-v1/;
 4 #include <dt-bindings/input/atmel-maxtouch.h>
 5 #include <dt-bindings/input/gpio-keys.h>
 6 #include <dt-bindings/input/input.h>
 7 #include <dt-bindings/thermal/thermal.h>
 10 #include "tegra20-cpu-opp.dtsi"
 11 #include "tegra20-cpu-opp-microvolt.dtsi"
 32 	 * pre-existing /chosen node to be available to insert the
 41 	reserved-memory {
 [all …]
 
 | 
| H A D | tegra20-paz00.dts | 1 // SPDX-License-Identifier: GPL-2.02 /dts-v1/;
 4 #include <dt-bindings/input/input.h>
 5 #include <dt-bindings/thermal/thermal.h>
 8 #include "tegra20-cpu-opp.dtsi"
 9 #include "tegra20-cpu-opp-microvolt.dtsi"
 25 		stdout-path = "serial0:115200n8";
 44 			vdd-supply = <&hdmi_vdd_reg>;
 45 			pll-supply = <&hdmi_pll_reg>;
 47 			nvidia,ddc-i2c-bus = <&hdmi_ddc>;
 [all …]
 
 | 
| H A D | tegra20-colibri.dtsi | 1 // SPDX-License-Identifier: GPL-2.022 			nvidia,ddc-i2c-bus = <&hdmi_ddc>;
 23 			nvidia,hpd-gpio =
 25 			pll-supply = <®_1v8_avdd_hdmi_pll>;
 26 			vdd-supply = <®_3v3_avdd_hdmi>;
 31 		lan-reset-n-hog {
 32 			gpio-hog;
 34 			output-high;
 35 			line-name = "LAN_RESET#";
 38 		/* Tri-stating GMI_WR_N on SODIMM pin 99 nPWE */
 [all …]
 
 | 
| H A D | tegra30-asus-tf201.dts | 1 // SPDX-License-Identifier: GPL-2.02 /dts-v1/;
 4 #include "tegra30-asus-transformer-common.dtsi"
 5 #include "tegra30-asus-lvds-display.dtsi"
 19 				nvidia,enable-input = <TEGRA_PIN_ENABLE>;
 27 				nvidia,enable-input = <TEGRA_PIN_ENABLE>;
 35 				nvidia,enable-input = <TEGRA_PIN_ENABLE>;
 43 				nvidia,enable-input = <TEGRA_PIN_ENABLE>;
 51 				nvidia,enable-input = <TEGRA_PIN_ENABLE>;
 57 		/* Azurewave AW-NH615 BCM4329B1 */
 [all …]
 
 | 
| H A D | tegra30-asus-tf700t.dts | 1 // SPDX-License-Identifier: GPL-2.02 /dts-v1/;
 4 #include "tegra30-asus-transformer-common.dtsi"
 20 						remote-endpoint = <&bridge_input>;
 21 						bus-width = <24>;
 36 				nvidia,enable-input = <TEGRA_PIN_DISABLE>;
 44 				nvidia,enable-input = <TEGRA_PIN_DISABLE>;
 52 				nvidia,enable-input = <TEGRA_PIN_DISABLE>;
 60 				nvidia,enable-input = <TEGRA_PIN_DISABLE>;
 68 				nvidia,enable-input = <TEGRA_PIN_DISABLE>;
 [all …]
 
 | 
| H A D | tegra30-asus-tf300tl.dts | 1 // SPDX-License-Identifier: GPL-2.02 /dts-v1/;
 4 #include "tegra30-asus-transformer-common.dtsi"
 5 #include "tegra30-asus-lvds-display.dtsi"
 12 		tf300tl-init-hog {
 13 			gpio-hog;
 15 			output-low;
 27 				nvidia,enable-input = <TEGRA_PIN_DISABLE>;
 35 				nvidia,enable-input = <TEGRA_PIN_ENABLE>;
 43 				nvidia,enable-input = <TEGRA_PIN_ENABLE>;
 [all …]
 
 | 
| H A D | tegra124-nyan-blaze-emc.dtsi | 1 // SPDX-License-Identifier: GPL-2.03 #include <dt-bindings/clock/tegra124-car.h>
 7 		emc-timings-1 {
 8 			nvidia,ram-code = <1>;
 10 			timing-12750000 {
 11 				clock-frequency = <12750000>;
 12 				nvidia,parent-clock-frequency = <408000000>;
 14 				clock-names = "emc-parent";
 17 			timing-20400000 {
 18 				clock-frequency = <20400000>;
 [all …]
 
 | 
| H A D | tegra124-jetson-tk1-emc.dtsi | 1 // SPDX-License-Identifier: GPL-2.03 #include <dt-bindings/clock/tegra124-car.h>
 7 		emc-timings-3 {
 8 			nvidia,ram-code = <3>;
 10 			timing-12750000 {
 11 				clock-frequency = <12750000>;
 12 				nvidia,parent-clock-frequency = <408000000>;
 14 				clock-names = "emc-parent";
 17 			timing-20400000 {
 18 				clock-frequency = <20400000>;
 [all …]
 
 | 
| H A D | tegra124-apalis-emc.dtsi | 1 // SPDX-License-Identifier: GPL-2.0 OR X113  * Copyright 2016-2019 Toradex AG
 7 #include <dt-bindings/clock/tegra124-car.h>
 11 		emc-timings-1 {
 12 			nvidia,ram-code = <1>;
 14 			timing-12750000 {
 15 				clock-frequency = <12750000>;
 16 				nvidia,parent-clock-frequency = <408000000>;
 18 				clock-names = "emc-parent";
 21 			timing-20400000 {
 [all …]
 
 | 
| H A D | tegra30-asus-tf300t.dts | 1 // SPDX-License-Identifier: GPL-2.02 /dts-v1/;
 4 #include "tegra30-asus-transformer-common.dtsi"
 5 #include "tegra30-asus-lvds-display.dtsi"
 12 		tf300t-init-hog {
 13 			gpio-hog;
 15 			output-low;
 27 				nvidia,enable-input = <TEGRA_PIN_ENABLE>;
 35 				nvidia,enable-input = <TEGRA_PIN_ENABLE>;
 43 				nvidia,enable-input = <TEGRA_PIN_ENABLE>;
 [all …]
 
 | 
| H A D | tegra30-asus-tf300tg.dts | 1 // SPDX-License-Identifier: GPL-2.02 /dts-v1/;
 4 #include "tegra30-asus-transformer-common.dtsi"
 5 #include "tegra30-asus-lvds-display.dtsi"
 12 		tf300tg-init-hog {
 13 			gpio-hog;
 28 			output-low;
 39 				nvidia,enable-input = <TEGRA_PIN_ENABLE>;
 47 				nvidia,enable-input = <TEGRA_PIN_ENABLE>;
 55 				nvidia,enable-input = <TEGRA_PIN_ENABLE>;
 [all …]
 
 | 
| H A D | tegra30-asus-nexus7-grouper-memory-timings.dtsi | 1 // SPDX-License-Identifier: GPL-2.04 	memory-controller@7000f000 {
 5 		emc-timings-0 {
 6 			nvidia,ram-code = <0>; /* Elpida EDJ2108EDBG-DJL-F */
 8 			timing-25500000 {
 9 				clock-frequency = <25500000>;
 11 				nvidia,emem-configuration = <
 33 			timing-51000000 {
 34 				clock-frequency = <51000000>;
 36 				nvidia,emem-configuration = <
 [all …]
 
 | 
| H A D | tegra30-pegatron-chagall.dts | 1 // SPDX-License-Identifier: GPL-2.02 /dts-v1/;
 4 #include <dt-bindings/input/gpio-keys.h>
 5 #include <dt-bindings/input/input.h>
 6 #include <dt-bindings/thermal/thermal.h>
 9 #include "tegra30-cpu-opp.dtsi"
 10 #include "tegra30-cpu-opp-microvolt.dtsi"
 11 #include "tegra30-asus-lvds-display.dtsi"
 16 	chassis-type = "tablet";
 35 	 * pre-existing /chosen node to be available to insert the
 [all …]
 
 | 
| H A D | tegra30-asus-tf600t.dts | 1 // SPDX-License-Identifier: GPL-2.02 /dts-v1/;
 4 #include <dt-bindings/input/gpio-keys.h>
 5 #include <dt-bindings/input/input.h>
 6 #include <dt-bindings/leds/common.h>
 7 #include <dt-bindings/thermal/thermal.h>
 10 #include "tegra30-cpu-opp.dtsi"
 11 #include "tegra30-cpu-opp-microvolt.dtsi"
 16 	chassis-type = "convertible";
 34 	 * pre-existing /chosen node to be available to insert the
 [all …]
 
 | 
| /linux/Documentation/devicetree/bindings/reserved-memory/ | 
| H A D | nvidia,tegra210-emc-table.yaml | 1 # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)3 ---
 4 $id: http://devicetree.org/schemas/reserved-memory/nvidia,tegra210-emc-table.yaml#
 5 $schema: http://devicetree.org/meta-schemas/core.yaml#
 7 title: NVIDIA Tegra210 EMC Frequency Table
 10   - Thierry Reding <thierry.reding@gmail.com>
 11   - Jon Hunter <jonathanh@nvidia.com>
 14   EMC frequency table via a reserved memory region.
 17   - $ref: reserved-memory.yaml
 21     const: nvidia,tegra210-emc-table
 [all …]
 
 | 
| /linux/Documentation/ABI/testing/ | 
| H A D | sysfs-firmware-efi | 5 		EFI system table.11 Description:	It shows the physical address of runtime service table entry in
 12 		the EFI system table.
 18 Description:	It shows the physical address of config table entry in the EFI
 19 		system table.
 24 Contact:	linux-efi@vger.kernel.org
 26 		Tables found via the EFI System Table. The order in
 34 Contact:	Narendra K <Narendra.K@dell.com>, linux-bugs@dell.com
 36 		Table version 2 on Dell EMC PowerEdge systems in binary format
 37 Users:		It is used by Dell EMC OpenManage Server Administrator tool to
 [all …]
 
 | 
| /linux/drivers/clk/tegra/ | 
| H A D | clk-tegra124-emc.c | 1 // SPDX-License-Identifier: GPL-2.0-only3  * drivers/clk/tegra/clk-emc.c
 11 #include <linux/clk-provider.h>
 47  * List of clock sources for various parents the EMC clock can have.
 79 	struct tegra_emc *emc;  member
 105 	val = readl(tegra->clk_regs + CLK_SOURCE_EMC);  in emc_recalc_rate()
 113  * safer since things have EMC rate floors. Also don't touch parent_rate
 125 	for (k = 0; k < tegra->num_timings; k++) {  in emc_determine_rate()
 126 		if (tegra->timings[k].ram_code == ram_code)  in emc_determine_rate()
 130 	for (t = k; t < tegra->num_timings; t++) {  in emc_determine_rate()
 [all …]
 
 |