/Linux-v6.1/drivers/usb/host/ |
D | xhci-tegra.c | 3 * NVIDIA Tegra xHCI host controller driver 20 #include <linux/phy/tegra/xusb.h> 32 #include <soc/tegra/pmc.h> 281 static inline u32 fpci_readl(struct tegra_xusb *tegra, unsigned int offset) in fpci_readl() argument 283 return readl(tegra->fpci_base + offset); in fpci_readl() 286 static inline void fpci_writel(struct tegra_xusb *tegra, u32 value, in fpci_writel() argument 289 writel(value, tegra->fpci_base + offset); in fpci_writel() 292 static inline u32 ipfs_readl(struct tegra_xusb *tegra, unsigned int offset) in ipfs_readl() argument 294 return readl(tegra->ipfs_base + offset); in ipfs_readl() 297 static inline void ipfs_writel(struct tegra_xusb *tegra, u32 value, in ipfs_writel() argument [all …]
|
/Linux-v6.1/drivers/ata/ |
D | ahci_tegra.c | 20 #include <soc/tegra/fuse.h> 21 #include <soc/tegra/pmc.h> 25 #define DRV_NAME "tegra-ahci" 184 struct tegra_ahci_priv *tegra = hpriv->plat_data; in tegra_ahci_handle_quirks() local 187 if (tegra->sata_aux_regs && !tegra->soc->supports_devslp) { in tegra_ahci_handle_quirks() 188 val = readl(tegra->sata_aux_regs + SATA_AUX_MISC_CNTL_1_0); in tegra_ahci_handle_quirks() 190 writel(val, tegra->sata_aux_regs + SATA_AUX_MISC_CNTL_1_0); in tegra_ahci_handle_quirks() 196 struct tegra_ahci_priv *tegra = hpriv->plat_data; in tegra124_ahci_init() local 208 writel(BIT(0), tegra->sata_regs + SCFG_OFFSET + T_SATA0_INDEX); in tegra124_ahci_init() 210 val = readl(tegra->sata_regs + in tegra124_ahci_init() [all …]
|
/Linux-v6.1/drivers/devfreq/ |
D | tegra30-devfreq.c | 3 * A devfreq driver for NVIDIA Tegra SoCs 22 #include <soc/tegra/fuse.h> 218 static u32 actmon_readl(struct tegra_devfreq *tegra, u32 offset) in actmon_readl() argument 220 return readl_relaxed(tegra->regs + offset); in actmon_readl() 223 static void actmon_writel(struct tegra_devfreq *tegra, u32 val, u32 offset) in actmon_writel() argument 225 writel_relaxed(val, tegra->regs + offset); in actmon_writel() 251 static void tegra_devfreq_update_avg_wmark(struct tegra_devfreq *tegra, in tegra_devfreq_update_avg_wmark() argument 254 u32 avg_band_freq = tegra->max_freq * ACTMON_DEFAULT_AVG_BAND / KHZ; in tegra_devfreq_update_avg_wmark() 255 u32 band = avg_band_freq * tegra->devfreq->profile->polling_ms; in tegra_devfreq_update_avg_wmark() 265 static void tegra_devfreq_update_wmark(struct tegra_devfreq *tegra, in tegra_devfreq_update_wmark() argument [all …]
|
/Linux-v6.1/drivers/clk/tegra/ |
D | clk-tegra124-emc.c | 3 * drivers/clk/tegra/clk-emc.c 14 #include <linux/clk/tegra.h> 25 #include <soc/tegra/fuse.h> 94 struct tegra_clk_emc *tegra; in emc_recalc_rate() local 97 tegra = container_of(hw, struct tegra_clk_emc, hw); in emc_recalc_rate() 105 val = readl(tegra->clk_regs + CLK_SOURCE_EMC); in emc_recalc_rate() 118 struct tegra_clk_emc *tegra; in emc_determine_rate() local 123 tegra = container_of(hw, struct tegra_clk_emc, hw); in emc_determine_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() [all …]
|
/Linux-v6.1/drivers/clocksource/ |
D | timer-tegra186.c | 109 static struct tegra186_tmr *tegra186_tmr_create(struct tegra186_timer *tegra, in tegra186_tmr_create() argument 115 tmr = devm_kzalloc(tegra->dev, sizeof(*tmr), GFP_KERNEL); in tegra186_tmr_create() 119 tmr->parent = tegra; in tegra186_tmr_create() 120 tmr->regs = tegra->regs + offset; in tegra186_tmr_create() 144 struct tegra186_timer *tegra = wdt->tmr->parent; in tegra186_wdt_enable() local 149 writel(value, tegra->regs + TKEIE(wdt->tmr->hwirq)); in tegra186_wdt_enable() 246 static struct tegra186_wdt *tegra186_wdt_create(struct tegra186_timer *tegra, in tegra186_wdt_create() argument 254 offset += tegra->soc->num_timers * 0x10000 + index * 0x10000; in tegra186_wdt_create() 256 wdt = devm_kzalloc(tegra->dev, sizeof(*wdt), GFP_KERNEL); in tegra186_wdt_create() 260 wdt->regs = tegra->regs + offset; in tegra186_wdt_create() [all …]
|
/Linux-v6.1/drivers/soc/tegra/ |
D | regulators-tegra20.c | 10 #define pr_fmt(fmt) "tegra voltage-coupler: " fmt 21 #include <soc/tegra/fuse.h> 22 #include <soc/tegra/pmc.h> 44 static int tegra20_core_limit(struct tegra_regulator_coupler *tegra, in tegra20_core_limit() argument 62 if (tegra_pmc_core_domain_state_synced() && !tegra->sys_reboot_mode) { in tegra20_core_limit() 67 if (tegra->core_min_uV > 0) in tegra20_core_limit() 68 return tegra->core_min_uV; in tegra20_core_limit() 85 tegra->core_min_uV = core_max_uV; in tegra20_core_limit() 87 pr_info("core voltage initialized to %duV\n", tegra->core_min_uV); in tegra20_core_limit() 89 return tegra->core_min_uV; in tegra20_core_limit() [all …]
|
D | regulators-tegra30.c | 10 #define pr_fmt(fmt) "tegra voltage-coupler: " fmt 21 #include <soc/tegra/fuse.h> 22 #include <soc/tegra/pmc.h> 43 static int tegra30_core_limit(struct tegra_regulator_coupler *tegra, in tegra30_core_limit() argument 61 if (tegra_pmc_core_domain_state_synced() && !tegra->sys_reboot_mode) { in tegra30_core_limit() 66 if (tegra->core_min_uV > 0) in tegra30_core_limit() 67 return tegra->core_min_uV; in tegra30_core_limit() 84 tegra->core_min_uV = core_max_uV; in tegra30_core_limit() 86 pr_info("core voltage initialized to %duV\n", tegra->core_min_uV); in tegra30_core_limit() 88 return tegra->core_min_uV; in tegra30_core_limit() [all …]
|
/Linux-v6.1/drivers/thermal/tegra/ |
D | tegra-bpmp-thermal.c | 16 #include <soc/tegra/bpmp.h> 17 #include <soc/tegra/bpmp-abi.h> 20 struct tegra_bpmp_thermal *tegra; member 52 err = tegra_bpmp_transfer(zone->tegra->bpmp, &msg); in __tegra_bpmp_thermal_get_temp() 87 err = tegra_bpmp_transfer(zone->tegra->bpmp, &msg); in tegra_bpmp_thermal_set_trips() 110 struct tegra_bpmp_thermal *tegra = data; in bpmp_mrq_thermal() local 116 dev_err(tegra->dev, "%s: invalid request type: %d\n", in bpmp_mrq_thermal() 122 for (i = 0; i < tegra->num_zones; ++i) { in bpmp_mrq_thermal() 123 if (tegra->zones[i]->idx != req->host_trip_reached.zone) in bpmp_mrq_thermal() 126 schedule_work(&tegra->zones[i]->tz_device_update_work); in bpmp_mrq_thermal() [all …]
|
D | Makefile | 2 obj-$(CONFIG_TEGRA_SOCTHERM) += tegra-soctherm.o 3 obj-$(CONFIG_TEGRA_BPMP_THERMAL) += tegra-bpmp-thermal.o 6 tegra-soctherm-y := soctherm.o soctherm-fuse.o 7 tegra-soctherm-$(CONFIG_ARCH_TEGRA_124_SOC) += tegra124-soctherm.o 8 tegra-soctherm-$(CONFIG_ARCH_TEGRA_132_SOC) += tegra132-soctherm.o 9 tegra-soctherm-$(CONFIG_ARCH_TEGRA_210_SOC) += tegra210-soctherm.o
|
/Linux-v6.1/drivers/gpu/drm/tegra/ |
D | drm.c | 35 #define DRIVER_NAME "tegra" 36 #define DRIVER_DESC "NVIDIA Tegra graphics" 80 struct tegra_drm *tegra = drm->dev_private; in tegra_atomic_commit_tail() local 82 if (tegra->hub) { in tegra_atomic_commit_tail() 464 struct tegra_drm *tegra = drm->dev_private; in tegra_open_channel() local 476 list_for_each_entry(client, &tegra->clients, list) in tegra_open_channel() 858 struct tegra_drm *tegra = drm->dev_private; in tegra_debugfs_iova() local 861 if (tegra->domain) { in tegra_debugfs_iova() 862 mutex_lock(&tegra->mm_lock); in tegra_debugfs_iova() 863 drm_mm_print(&tegra->mm, &p); in tegra_debugfs_iova() [all …]
|
/Linux-v6.1/drivers/memory/tegra/ |
D | Makefile | 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 10 tegra-mc-$(CONFIG_ARCH_TEGRA_186_SOC) += tegra186.o 11 tegra-mc-$(CONFIG_ARCH_TEGRA_194_SOC) += tegra186.o tegra194.o 12 tegra-mc-$(CONFIG_ARCH_TEGRA_234_SOC) += tegra186.o tegra234.o [all …]
|
/Linux-v6.1/Documentation/devicetree/bindings/sound/ |
D | nvidia,tegra-audio-max98090.yaml | 4 $id: http://devicetree.org/schemas/sound/nvidia,tegra-audio-max98090.yaml# 7 title: NVIDIA Tegra audio complex with MAX98090 CODEC 14 - $ref: nvidia,tegra-audio-common.yaml# 20 - pattern: '^[a-z0-9]+,tegra-audio-max98090(-[a-z0-9]+)+$' 21 - const: nvidia,tegra-audio-max98090 24 - nvidia,tegra-audio-max98090-nyan-big 25 - nvidia,tegra-audio-max98090-nyan-blaze 26 - const: nvidia,tegra-audio-max98090-nyan 27 - const: nvidia,tegra-audio-max98090 78 compatible = "nvidia,tegra-audio-max98090-venice2", [all …]
|
D | nvidia,tegra-audio-wm8903.yaml | 4 $id: http://devicetree.org/schemas/sound/nvidia,tegra-audio-wm8903.yaml# 7 title: NVIDIA Tegra audio complex with WM8903 CODEC 14 - $ref: nvidia,tegra-audio-common.yaml# 20 - pattern: '^[a-z0-9]+,tegra-audio-wm8903(-[a-z0-9]+)+$' 21 - const: nvidia,tegra-audio-wm8903 23 - pattern: ad,tegra-audio-plutux 24 - const: nvidia,tegra-audio-wm8903 69 compatible = "nvidia,tegra-audio-wm8903-harmony", 70 "nvidia,tegra-audio-wm8903"; 71 nvidia,model = "tegra-wm8903-harmony";
|
D | nvidia,tegra-audio-wm8753.yaml | 4 $id: http://devicetree.org/schemas/sound/nvidia,tegra-audio-wm8753.yaml# 7 title: NVIDIA Tegra audio complex with WM8753 CODEC 14 - $ref: nvidia,tegra-audio-common.yaml# 19 - pattern: '^[a-z0-9]+,tegra-audio-wm8753(-[a-z0-9]+)+$' 20 - const: nvidia,tegra-audio-wm8753 66 compatible = "nvidia,tegra-audio-wm8753-whistler", 67 "nvidia,tegra-audio-wm8753"; 68 nvidia,model = "tegra-wm8753-harmony";
|
D | nvidia,tegra-audio-rt5640.yaml | 4 $id: http://devicetree.org/schemas/sound/nvidia,tegra-audio-rt5640.yaml# 7 title: NVIDIA Tegra audio complex with RT5639 or RT5640 CODEC 14 - $ref: nvidia,tegra-audio-common.yaml# 19 - pattern: '^[a-z0-9]+,tegra-audio-rt56(39|40)(-[a-z0-9]+)+$' 20 - const: nvidia,tegra-audio-rt5640 65 compatible = "nvidia,tegra-audio-rt5640-dalmore", 66 "nvidia,tegra-audio-rt5640"; 67 nvidia,model = "NVIDIA Tegra Dalmore";
|
D | nvidia,tegra-audio-rt5677.yaml | 4 $id: http://devicetree.org/schemas/sound/nvidia,tegra-audio-rt5677.yaml# 7 title: NVIDIA Tegra audio complex with RT5677 CODEC 14 - $ref: nvidia,tegra-audio-common.yaml# 19 - pattern: '^[a-z0-9]+,tegra-audio-rt5677(-[a-z0-9]+)+$' 20 - const: nvidia,tegra-audio-rt5677 74 compatible = "nvidia,tegra-audio-rt5677-ryu", 75 "nvidia,tegra-audio-rt5677"; 76 nvidia,model = "NVIDIA Tegra Ryu";
|
/Linux-v6.1/sound/soc/tegra/ |
D | Kconfig | 3 tristate "SoC Audio for the Tegra System-on-Chip" 10 Say Y or M here if you want support for SoC audio on Tegra. 181 tristate "Audio Graph Card based Tegra driver" 184 Config to enable Tegra audio machine driver based on generic 186 few things for Tegra audio. Most of the code is re-used from 193 tristate "SoC Audio support for Tegra boards using an RT5640 codec" 198 Say Y or M here if you want to add support for SoC audio on Tegra 202 tristate "SoC Audio support for Tegra boards using a WM8753 codec" 207 Say Y or M here if you want to add support for SoC audio on Tegra 211 tristate "SoC Audio support for Tegra boards using a WM8903 codec" [all …]
|
D | Makefile | 2 # Tegra platform Support 3 snd-soc-tegra-pcm-objs := tegra_pcm.o 4 snd-soc-tegra-utils-objs += tegra_asoc_utils.o 24 obj-$(CONFIG_SND_SOC_TEGRA) += snd-soc-tegra-pcm.o 44 # Tegra machine Support 45 snd-soc-tegra-wm8903-objs := tegra_wm8903.o 46 snd-soc-tegra-machine-objs := tegra_asoc_machine.o 47 snd-soc-tegra-audio-graph-card-objs := tegra_audio_graph_card.o 49 obj-$(CONFIG_SND_SOC_TEGRA_WM8903) += snd-soc-tegra-wm8903.o 50 obj-$(CONFIG_SND_SOC_TEGRA_MACHINE_DRV) += snd-soc-tegra-machine.o [all …]
|
D | tegra_wm8903.c | 3 * tegra_wm8903.c - Tegra machine ASoC driver for boards using WM8903 codec. 163 { .compatible = "ad,tegra-audio-plutux", .data = &tegra_wm8903_data_legacy }, 164 { .compatible = "ad,tegra-audio-wm8903-medcom-wide", .data = &tegra_wm8903_data_legacy }, 165 { .compatible = "ad,tegra-audio-wm8903-tec", .data = &tegra_wm8903_data_legacy }, 166 { .compatible = "nvidia,tegra-audio-wm8903-cardhu", .data = &tegra_wm8903_data_legacy }, 167 { .compatible = "nvidia,tegra-audio-wm8903-harmony", .data = &tegra_wm8903_data_legacy }, 168 { .compatible = "nvidia,tegra-audio-wm8903-picasso", .data = &tegra_wm8903_data_legacy }, 169 { .compatible = "nvidia,tegra-audio-wm8903-seaboard", .data = &tegra_wm8903_data_legacy }, 170 { .compatible = "nvidia,tegra-audio-wm8903-ventana", .data = &tegra_wm8903_data_legacy }, 171 { .compatible = "nvidia,tegra-audio-wm8903", .data = &tegra_wm8903_data }, [all …]
|
/Linux-v6.1/drivers/firmware/tegra/ |
D | Makefile | 2 tegra-bpmp-y = bpmp.o 3 tegra-bpmp-$(CONFIG_ARCH_TEGRA_210_SOC) += bpmp-tegra210.o 4 tegra-bpmp-$(CONFIG_ARCH_TEGRA_186_SOC) += bpmp-tegra186.o 5 tegra-bpmp-$(CONFIG_ARCH_TEGRA_194_SOC) += bpmp-tegra186.o 6 tegra-bpmp-$(CONFIG_ARCH_TEGRA_234_SOC) += bpmp-tegra186.o 7 tegra-bpmp-$(CONFIG_DEBUG_FS) += bpmp-debugfs.o 8 obj-$(CONFIG_TEGRA_BPMP) += tegra-bpmp.o
|
/Linux-v6.1/drivers/phy/tegra/ |
D | Makefile | 2 obj-$(CONFIG_PHY_TEGRA_XUSB) += phy-tegra-xusb.o 4 phy-tegra-xusb-y += xusb.o 5 phy-tegra-xusb-$(CONFIG_ARCH_TEGRA_124_SOC) += xusb-tegra124.o 6 phy-tegra-xusb-$(CONFIG_ARCH_TEGRA_132_SOC) += xusb-tegra124.o 7 phy-tegra-xusb-$(CONFIG_ARCH_TEGRA_210_SOC) += xusb-tegra210.o 8 phy-tegra-xusb-$(CONFIG_ARCH_TEGRA_186_SOC) += xusb-tegra186.o 9 phy-tegra-xusb-$(CONFIG_ARCH_TEGRA_194_SOC) += xusb-tegra186.o
|
/Linux-v6.1/Documentation/gpu/ |
D | tegra.rst | 2 drm/tegra NVIDIA Tegra GPU and display driver 5 NVIDIA Tegra SoCs support a set of display, graphics and video functions via 10 Up until, but not including, Tegra124 (aka Tegra K1) the drm/tegra driver 15 The drm/tegra driver supports NVIDIA Tegra SoC generations since Tegra20. It 65 Tegra SoC generations, up until Tegra186 which introduces several changes that 71 Tegra SoCs have two display controllers, each of which can be associated with 100 The type and number of supported outputs varies between Tegra SoC generations. 116 HDMI is supported on all Tegra SoCs. Starting with Tegra210, HDMI is provided 123 Although Tegra has supported DSI since Tegra30, the controller has changed in 126 later are supported by the drm/tegra driver. [all …]
|
/Linux-v6.1/Documentation/devicetree/bindings/regulator/ |
D | nvidia,tegra-regulators-coupling.txt | 1 NVIDIA Tegra Regulators Coupling 4 NVIDIA Tegra SoC's have a mandatory voltage-coupling between regulators. 24 - nvidia,tegra-core-regulator: Boolean property that designates regulator 26 - nvidia,tegra-rtc-regulator: Boolean property that designates regulator 28 - nvidia,tegra-cpu-regulator: Boolean property that designates regulator 42 nvidia,tegra-core-regulator; 52 nvidia,tegra-rtc-regulator; 62 nvidia,tegra-cpu-regulator;
|
/Linux-v6.1/Documentation/devicetree/bindings/arm/tegra/ |
D | nvidia,tegra20-pmc.yaml | 4 $id: http://devicetree.org/schemas/arm/tegra/nvidia,tegra20-pmc.yaml# 7 title: Tegra Power Management Controller (PMC) 33 pclk is the Tegra clock of that name and clk32k_in is 32KHz clock 34 input to Tegra. 45 Tegra PMC has clk_out_1, clk_out_2, and clk_out_3. 47 Tegra blink pad. 50 See include/dt-bindings/soc/tegra-pmc.h for the list of Tegra PMC 138 "APBDEV_PMC_SCRATCH53_0" of the Tegra K1 Technical Reference 172 match the powergates on the Tegra SoC. Each powergate node 173 represents a power-domain on the Tegra SoC that can be power-gated [all …]
|
/Linux-v6.1/drivers/soc/tegra/fuse/ |
D | speedo-tegra30.c | 10 #include <soc/tegra/fuse.h> 91 pr_debug("Tegra ATE prog ver %d.%d\n", ate_ver/10, ate_ver%10); in fuse_speedo_calib() 143 pr_err("Tegra Unknown pkg %d\n", package_id); in rev_sku_to_speedo_ids() 160 pr_err("Tegra Unknown pkg %d\n", package_id); in rev_sku_to_speedo_ids() 177 pr_err("Tegra Unknown pkg %d\n", package_id); in rev_sku_to_speedo_ids() 214 pr_err("Tegra Unknown pkg %d\n", package_id); in rev_sku_to_speedo_ids() 219 pr_warn("Tegra Unknown SKU %d\n", sku_info->sku_id); in rev_sku_to_speedo_ids() 227 pr_warn("Tegra Unknown chip rev %d\n", sku_info->revision); in rev_sku_to_speedo_ids() 249 pr_debug("Tegra CPU speedo value %u\n", cpu_speedo_val); in tegra30_init_speedo_data() 250 pr_debug("Tegra Core speedo value %u\n", soc_speedo_val); in tegra30_init_speedo_data() [all …]
|