/openbmc/linux/drivers/usb/host/ |
H A D | xhci-tegra.c | 3 * NVIDIA Tegra xHCI host controller driver 20 #include <linux/phy/tegra/xusb.h> 32 #include <soc/tegra/pmc.h> 218 u32 (*mbox_reg_readl)(struct tegra_xusb *tegra, unsigned int offset); 219 void (*mbox_reg_writel)(struct tegra_xusb *tegra, u32 value, unsigned int offset); 220 u32 (*csb_reg_readl)(struct tegra_xusb *tegra, unsigned int offset); 221 void (*csb_reg_writel)(struct tegra_xusb *tegra, u32 value, unsigned int offset); 319 static inline u32 fpci_readl(struct tegra_xusb *tegra, unsigned int offset) in fpci_readl() argument 321 return readl(tegra->fpci_base + offset); in fpci_readl() 324 static inline void fpci_writel(struct tegra_xusb *tegra, u32 value, in fpci_writel() argument [all …]
|
/openbmc/linux/drivers/ata/ |
H A 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 …]
|
/openbmc/linux/drivers/devfreq/ |
H A 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 …]
|
/openbmc/linux/drivers/clk/tegra/ |
H A 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 …]
|
/openbmc/linux/drivers/clocksource/ |
H A D | timer-tegra186.c | 108 static struct tegra186_tmr *tegra186_tmr_create(struct tegra186_timer *tegra, in tegra186_tmr_create() argument 114 tmr = devm_kzalloc(tegra->dev, sizeof(*tmr), GFP_KERNEL); in tegra186_tmr_create() 118 tmr->parent = tegra; in tegra186_tmr_create() 119 tmr->regs = tegra->regs + offset; in tegra186_tmr_create() 143 struct tegra186_timer *tegra = wdt->tmr->parent; in tegra186_wdt_enable() local 148 writel(value, tegra->regs + TKEIE(wdt->tmr->hwirq)); in tegra186_wdt_enable() 245 static struct tegra186_wdt *tegra186_wdt_create(struct tegra186_timer *tegra, in tegra186_wdt_create() argument 253 offset += tegra->soc->num_timers * 0x10000 + index * 0x10000; in tegra186_wdt_create() 255 wdt = devm_kzalloc(tegra->dev, sizeof(*wdt), GFP_KERNEL); in tegra186_wdt_create() 259 wdt->regs = tegra->regs + offset; in tegra186_wdt_create() [all …]
|
/openbmc/linux/drivers/soc/tegra/ |
H A 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 …]
|
H A 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 …]
|
/openbmc/linux/drivers/thermal/tegra/ |
H A 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() 91 err = tegra_bpmp_transfer(zone->tegra->bpmp, &msg); in tegra_bpmp_thermal_set_trips() 114 struct tegra_bpmp_thermal *tegra = data; in bpmp_mrq_thermal() local 122 dev_err(tegra->dev, "%s: invalid request type: %d\n", __func__, req.type); in bpmp_mrq_thermal() 127 for (i = 0; i < tegra->num_zones; ++i) { in bpmp_mrq_thermal() 128 if (tegra->zones[i]->idx != req.host_trip_reached.zone) in bpmp_mrq_thermal() 131 schedule_work(&tegra->zones[i]->tz_device_update_work); in bpmp_mrq_thermal() [all …]
|
H A 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
|
/openbmc/u-boot/arch/arm/mach-tegra/ |
H A D | Kconfig | 1 if TEGRA 16 bool "Tegra IVC protocol" 18 IVC (Inter-VM Communication) protocol is a Tegra-specific IPC 24 bool "Tegra common options" 47 bool "Tegra common options for SoCs without BPMP" 53 bool "Tegra 32-bit common options" 63 bool "Tegra 64-bit common options" 74 prompt "Tegra SoC select" 124 tegrarcm or L4T's exec-uboot.sh/tegraflash.py, Tegra's USB device 135 source "arch/arm/mach-tegra/tegra20/Kconfig" [all …]
|
/openbmc/linux/drivers/gpu/drm/tegra/ |
H A D | drm.c | 35 #define DRIVER_NAME "tegra" 36 #define DRIVER_DESC "NVIDIA Tegra graphics" 77 struct tegra_drm *tegra = drm->dev_private; in tegra_atomic_commit_tail() local 79 if (tegra->hub) { in tegra_atomic_commit_tail() 461 struct tegra_drm *tegra = drm->dev_private; in tegra_open_channel() local 473 list_for_each_entry(client, &tegra->clients, list) in tegra_open_channel() 855 struct tegra_drm *tegra = drm->dev_private; in tegra_debugfs_iova() local 858 if (tegra->domain) { in tegra_debugfs_iova() 859 mutex_lock(&tegra->mm_lock); in tegra_debugfs_iova() 860 drm_mm_print(&tegra->mm, &p); in tegra_debugfs_iova() [all …]
|
/openbmc/linux/drivers/memory/tegra/ |
H A 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 …]
|
/openbmc/linux/sound/soc/tegra/ |
H A 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 RT5631 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 an RT5640 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 WM8753 codec" [all …]
|
H A 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 …]
|
H A 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 …]
|
/openbmc/linux/Documentation/devicetree/bindings/sound/ |
H A 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 …]
|
H A D | nvidia,tegra-audio-max9808x.yaml | 4 $id: http://devicetree.org/schemas/sound/nvidia,tegra-audio-max9808x.yaml# 7 title: NVIDIA Tegra audio complex with MAX9808x CODEC 14 - $ref: nvidia,tegra-audio-common.yaml# 20 - pattern: '^[a-z0-9]+,tegra-audio-max98088(-[a-z0-9]+)+$' 21 - const: nvidia,tegra-audio-max98088 23 - pattern: '^[a-z0-9]+,tegra-audio-max98089(-[a-z0-9]+)+$' 24 - const: nvidia,tegra-audio-max98089 65 #include <dt-bindings/soc/tegra-pmc.h> 67 compatible = "lge,tegra-audio-max98089-p895", 68 "nvidia,tegra-audio-max98089";
|
H A 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";
|
H A 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";
|
H A 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";
|
H A D | nvidia,tegra-audio-rt5631.yaml | 4 $id: http://devicetree.org/schemas/sound/nvidia,tegra-audio-rt5631.yaml# 7 title: NVIDIA Tegra audio complex with RT5631 CODEC 14 - $ref: nvidia,tegra-audio-common.yaml# 19 - pattern: '^[a-z0-9]+,tegra-audio-rt5631(-[a-z0-9]+)+$' 20 - const: nvidia,tegra-audio-rt5631 63 #include <dt-bindings/soc/tegra-pmc.h> 65 compatible = "asus,tegra-audio-rt5631-tf700t", 66 "nvidia,tegra-audio-rt5631";
|
/openbmc/linux/drivers/phy/tegra/ |
H A 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 10 phy-tegra-xusb-$(CONFIG_ARCH_TEGRA_234_SOC) += xusb-tegra186.o
|
/openbmc/linux/drivers/firmware/tegra/ |
H A 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
|
/openbmc/linux/Documentation/gpu/ |
H A 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 …]
|
/openbmc/linux/Documentation/devicetree/bindings/regulator/ |
H A 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;
|