/linux/drivers/memory/tegra/ |
H A D | tegra20-emc.c | 587 emc->revision_id1, emc->revision_id2, in emc_read_lpddr_sdram_info() 914 emc->debugfs.min_rate = emc->timings[i].rate; in tegra_emc_debugfs_init() 917 emc->debugfs.max_rate = emc->timings[i].rate; in tegra_emc_debugfs_init() 921 emc->debugfs.min_rate = clk_get_rate(emc->clk); in tegra_emc_debugfs_init() 922 emc->debugfs.max_rate = emc->debugfs.min_rate; in tegra_emc_debugfs_init() 929 emc->debugfs.min_rate, emc->debugfs.max_rate, in tegra_emc_debugfs_init() 1015 emc->provider.dev = emc->dev; in tegra_emc_interconnect_init() 1017 emc->provider.data = &emc->provider; in tegra_emc_interconnect_init() 1071 clk_notifier_unregister(emc->clk, &emc->clk_nb); in devm_tegra_emc_unreg_clk_notifier() 1085 emc->clk = devm_clk_get(emc->dev, NULL); in tegra_emc_init_clk() [all …]
|
H A D | tegra30-emc.c | 554 emc->emc_cfg = readl_relaxed(emc->regs + EMC_CFG); in emc_prepare_timing_change() 579 writel_relaxed(emc->emc_cfg, emc->regs + EMC_CFG); in emc_prepare_timing_change() 1432 emc->debugfs.min_rate = emc->timings[i].rate; in tegra_emc_debugfs_init() 1435 emc->debugfs.max_rate = emc->timings[i].rate; in tegra_emc_debugfs_init() 1439 emc->debugfs.min_rate = clk_get_rate(emc->clk); in tegra_emc_debugfs_init() 1440 emc->debugfs.max_rate = emc->debugfs.min_rate; in tegra_emc_debugfs_init() 1447 emc->debugfs.min_rate, emc->debugfs.max_rate, in tegra_emc_debugfs_init() 1527 emc->provider.dev = emc->dev; in tegra_emc_interconnect_init() 1529 emc->provider.data = &emc->provider; in tegra_emc_interconnect_init() 1583 clk_notifier_unregister(emc->clk, &emc->clk_nb); in devm_tegra_emc_unreg_clk_notifier() [all …]
|
H A D | tegra210-emc-core.c | 570 emc->sequence->periodic_compensation(emc); in tegra210_emc_train() 722 emc->sequence->set_clock(emc, clksrc); in tegra210_emc_set_clock() 791 unsigned int index = emc->last - emc->timings; in tegra210_emc_set_refresh() 802 tegra210_emc_adjust_timing(emc, emc->last); in tegra210_emc_set_refresh() 1736 emc->debugfs.max_rate = emc->debugfs.min_rate; in tegra210_emc_debugfs_init() 1878 emc->timings = emc->nominal; in tegra210_emc_probe() 1885 emc->last = &emc->timings[i]; in tegra210_emc_probe() 1930 emc->provider.num_configs = emc->num_timings; in tegra210_emc_probe() 1957 dev_set_drvdata(emc->dev, emc); in tegra210_emc_probe() 2008 emc->resume_rate = clk_get_rate(emc->clk); in tegra210_emc_suspend() [all …]
|
H A D | tegra186-emc.c | 182 emc->dvfs = devm_kmalloc_array(emc->dev, emc->num_dvfs, sizeof(*emc->dvfs), GFP_KERNEL); in tegra186_emc_get_emc_dvfs_latency() 192 if (emc->dvfs[i].rate < emc->debugfs.min_rate) in tegra186_emc_get_emc_dvfs_latency() 193 emc->debugfs.min_rate = emc->dvfs[i].rate; in tegra186_emc_get_emc_dvfs_latency() 195 if (emc->dvfs[i].rate > emc->debugfs.max_rate) in tegra186_emc_get_emc_dvfs_latency() 196 emc->debugfs.max_rate = emc->dvfs[i].rate; in tegra186_emc_get_emc_dvfs_latency() 199 emc->dvfs[i].rate, emc->dvfs[i].latency); in tegra186_emc_get_emc_dvfs_latency() 202 err = clk_set_rate_range(emc->clk, emc->debugfs.min_rate, emc->debugfs.max_rate); in tegra186_emc_get_emc_dvfs_latency() 205 emc->debugfs.min_rate, emc->debugfs.max_rate, emc->clk); in tegra186_emc_get_emc_dvfs_latency() 265 emc->provider.dev = emc->dev; in tegra_emc_interconnect_init() 267 emc->provider.data = &emc->provider; in tegra_emc_interconnect_init() [all …]
|
H A D | tegra210-emc-cc-r21021.c | 36 #define emc_dbg(emc, flags, ...) dev_dbg(emc->dev, __VA_ARGS__) argument 359 struct tegra210_emc_timing *fake, *last = emc->last, *next = emc->next; in tegra210_emc_r21021_set_clock() 430 emc_dbg(emc, INFO, "DRAM dev #: %u\n", emc->num_devices); in tegra210_emc_r21021_set_clock() 438 emc_dbg(emc, INFO, " num_channels: %u\n", emc->num_channels); in tegra210_emc_r21021_set_clock() 1024 ccfifo_writel(emc, in tegra210_emc_r21021_set_clock() 1029 ccfifo_writel(emc, in tegra210_emc_r21021_set_clock() 1176 ccfifo_writel(emc, in tegra210_emc_r21021_set_clock() 1319 ccfifo_writel(emc, in tegra210_emc_r21021_set_clock() 1369 emc_writel(emc, in tegra210_emc_r21021_set_clock() 1374 emc_writel(emc, in tegra210_emc_r21021_set_clock() [all …]
|
H A D | tegra124-emc.c | 901 emc->dram_type = readl(emc->regs + EMC_FBIO_CFG5); in emc_init() 915 emc_read_current_timing(emc, &emc->last_timing); in emc_init() 1247 if (emc->timings[i].rate < emc->debugfs.min_rate) in emc_debugfs_init() 1248 emc->debugfs.min_rate = emc->timings[i].rate; in emc_debugfs_init() 1251 emc->debugfs.max_rate = emc->timings[i].rate; in emc_debugfs_init() 1255 emc->debugfs.min_rate = clk_get_rate(emc->clk); in emc_debugfs_init() 1256 emc->debugfs.max_rate = emc->debugfs.min_rate; in emc_debugfs_init() 1263 emc->debugfs.min_rate, emc->debugfs.max_rate, in emc_debugfs_init() 1345 emc->provider.dev = emc->dev; in tegra_emc_interconnect_init() 1347 emc->provider.data = &emc->provider; in tegra_emc_interconnect_init() [all …]
|
H A D | tegra210-emc-table.c | 15 struct tegra210_emc *emc = dev_get_drvdata(dev); in tegra210_emc_table_device_init() local 33 if (emc->derated) { 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() 41 count, emc->num_timings); in tegra210_emc_table_device_init() 46 emc->derated = timings; in tegra210_emc_table_device_init() 48 emc->num_timings = count; in tegra210_emc_table_device_init() 49 emc->nominal = timings; in tegra210_emc_table_device_init() 63 struct tegra210_emc *emc = dev_get_drvdata(dev); in tegra210_emc_table_device_release() local 65 if ((emc->nominal && timings != emc->nominal) && in tegra210_emc_table_device_release() [all …]
|
H A D | Makefile | 16 obj-$(CONFIG_TEGRA20_EMC) += tegra20-emc.o 17 obj-$(CONFIG_TEGRA30_EMC) += tegra30-emc.o 18 obj-$(CONFIG_TEGRA124_EMC) += tegra124-emc.o 19 obj-$(CONFIG_TEGRA210_EMC_TABLE) += tegra210-emc-table.o 20 obj-$(CONFIG_TEGRA210_EMC) += tegra210-emc.o 21 obj-$(CONFIG_ARCH_TEGRA_186_SOC) += tegra186-emc.o 22 obj-$(CONFIG_ARCH_TEGRA_194_SOC) += tegra186-emc.o 23 obj-$(CONFIG_ARCH_TEGRA_234_SOC) += tegra186-emc.o 25 tegra210-emc-y := tegra210-emc-core.o tegra210-emc-cc-r21021.o
|
/linux/arch/arm/boot/dts/nvidia/ |
H A D | tegra124-apalis-emc.dtsi | 11 emc-timings-1 { 18 clock-names = "emc-parent"; 25 clock-names = "emc-parent"; 32 clock-names = "emc-parent"; 39 clock-names = "emc-parent"; 46 clock-names = "emc-parent"; 53 clock-names = "emc-parent"; 60 clock-names = "emc-parent"; 101 emc-timings-1 { 311 emc-timings-1 { [all …]
|
H A D | tegra124-jetson-tk1-emc.dtsi | 7 emc-timings-3 { 14 clock-names = "emc-parent"; 21 clock-names = "emc-parent"; 28 clock-names = "emc-parent"; 35 clock-names = "emc-parent"; 42 clock-names = "emc-parent"; 49 clock-names = "emc-parent"; 56 clock-names = "emc-parent"; 97 emc-timings-3 { 415 emc-timings-3 { [all …]
|
H A D | tegra124-nyan-blaze-emc.dtsi | 7 emc-timings-1 { 14 clock-names = "emc-parent"; 21 clock-names = "emc-parent"; 28 clock-names = "emc-parent"; 35 clock-names = "emc-parent"; 42 clock-names = "emc-parent"; 49 clock-names = "emc-parent"; 56 clock-names = "emc-parent"; 85 emc-timings-1 { 377 emc-timings-1 { [all …]
|
H A D | tegra124-nyan-big-emc.dtsi | 7 emc-timings-1 { 14 clock-names = "emc-parent"; 88 emc-timings-4 { 169 emc-timings-6 { 256 emc-timings-1 { 546 emc-timings-4 { 836 emc-timings-6 { 1128 emc-timings-1 { 2980 emc-timings-4 { 4832 emc-timings-6 { [all …]
|
H A D | tegra30-asus-tf300t.dts | 146 emc-timings-0 { 211 emc-timings-1 { 276 emc-timings-2 { 343 emc-timings-0 { 355 nvidia,emc-cfg-dyn-self-ref; 391 nvidia,emc-cfg-dyn-self-ref; 427 nvidia,emc-cfg-dyn-self-ref; 463 nvidia,emc-cfg-dyn-self-ref; 561 emc-timings-1 { 779 emc-timings-2 { [all …]
|
H A D | tegra30-asus-tf300tg.dts | 220 emc-timings-0 { 285 emc-timings-1 { 350 emc-timings-2 { 417 emc-timings-0 { 429 nvidia,emc-cfg-dyn-self-ref; 465 nvidia,emc-cfg-dyn-self-ref; 501 nvidia,emc-cfg-dyn-self-ref; 537 nvidia,emc-cfg-dyn-self-ref; 635 emc-timings-1 { 853 emc-timings-2 { [all …]
|
H A D | tegra30-asus-tf201.dts | 112 emc-timings-0 { 167 emc-timings-1 { 224 emc-timings-0 { 236 nvidia,emc-cfg-periodic-qrst; 271 nvidia,emc-cfg-periodic-qrst; 306 nvidia,emc-cfg-periodic-qrst; 404 emc-timings-1 { 416 nvidia,emc-cfg-dyn-self-ref; 452 nvidia,emc-cfg-dyn-self-ref; 488 nvidia,emc-cfg-dyn-self-ref; [all …]
|
H A D | tegra30-asus-tf700t.dts | 141 emc-timings-0 { 206 emc-timings-1 { 273 emc-timings-0 { 285 nvidia,emc-cfg-dyn-self-ref; 286 nvidia,emc-cfg-periodic-qrst; 321 nvidia,emc-cfg-dyn-self-ref; 357 nvidia,emc-cfg-dyn-self-ref; 393 nvidia,emc-cfg-dyn-self-ref; 491 emc-timings-1 { 503 nvidia,emc-cfg-dyn-self-ref; [all …]
|
H A D | tegra30-lg-p880.dts | 120 emc-timings-0 { 197 emc-timings-0 { 209 nvidia,emc-cfg-dyn-self-ref; 210 nvidia,emc-cfg-periodic-qrst; 245 nvidia,emc-cfg-dyn-self-ref; 246 nvidia,emc-cfg-periodic-qrst; 281 nvidia,emc-cfg-dyn-self-ref; 282 nvidia,emc-cfg-periodic-qrst; 317 nvidia,emc-cfg-dyn-self-ref; 318 nvidia,emc-cfg-periodic-qrst; [all …]
|
H A D | tegra30-lg-p895.dts | 116 emc-timings-2 { 193 emc-timings-2 { 201 nvidia,emc-mode-1 = <0x00010022>; 202 nvidia,emc-mode-2 = <0x00020001>; 205 nvidia,emc-cfg-periodic-qrst; 240 nvidia,emc-cfg-periodic-qrst; 275 nvidia,emc-cfg-periodic-qrst; 310 nvidia,emc-cfg-periodic-qrst; 345 nvidia,emc-cfg-periodic-qrst; 380 nvidia,emc-cfg-periodic-qrst; [all …]
|
H A D | tegra30-asus-nexus7-grouper-memory-timings.dtsi | 5 emc-timings-0 { 159 emc-timings-1 { 315 emc-timings-0 { 326 nvidia,emc-cfg-dyn-self-ref; 329 nvidia,emc-configuration = < 430 nvidia,emc-cfg-dyn-self-ref; 433 nvidia,emc-configuration = < 534 nvidia,emc-cfg-dyn-self-ref; 537 nvidia,emc-configuration = < 940 emc-timings-1 { [all …]
|
H A D | tegra30-asus-nexus7-tilapia-memory-timings.dtsi | 13 emc-timings-0 { 18 nvidia,emc-mode-1 = <0x80100002>; 19 nvidia,emc-mode-2 = <0x80200018>; 20 nvidia,emc-mode-reset = <0x80000b71>; 22 nvidia,emc-cfg-periodic-qrst; 24 nvidia,emc-configuration = < 118 emc-timings-1 { 123 nvidia,emc-mode-1 = <0x80100002>; 128 nvidia,emc-configuration = < 229 nvidia,emc-cfg-periodic-qrst; [all …]
|
H A D | tegra30-pegatron-chagall.dts | 1535 emc-timings-0 { 1590 emc-timings-1 { 1645 emc-timings-2 { 1700 emc-timings-3 { 1757 emc-timings-0 { 1769 nvidia,emc-cfg-dyn-self-ref; 1805 nvidia,emc-cfg-dyn-self-ref; 1941 emc-timings-1 { 2125 emc-timings-2 { 2309 emc-timings-3 { [all …]
|
/linux/drivers/clk/tegra/ |
H A D | clk-tegra20-emc.c | 89 if (emc->mc_same_freq) in emc_set_parent() 96 fence_udelay(1, emc->reg); in emc_set_parent() 121 if (emc->mc_same_freq) in emc_set_rate() 156 if (emc->mc_same_freq) in emc_set_rate_and_parent() 179 emc->cb_arg); in emc_determine_rate() 236 emc->cb_arg = cb_arg; in tegra20_clk_set_emc_round_callback() 252 emc = kzalloc(sizeof(*emc), GFP_KERNEL); in tegra20_clk_register_emc() 253 if (!emc) in tegra20_clk_register_emc() 269 emc->reg = ioaddr; in tegra20_clk_register_emc() 270 emc->hw.init = &init; in tegra20_clk_register_emc() [all …]
|
H A D | clk-tegra210-emc.c | 57 value = readl_relaxed(emc->regs + CLK_SOURCE_EMC); in tegra210_clk_emc_get_parent() 269 struct tegra210_clk_emc *emc; in tegra210_clk_register_emc() local 273 emc = kzalloc(sizeof(*emc), GFP_KERNEL); in tegra210_clk_register_emc() 274 if (!emc) in tegra210_clk_register_emc() 277 emc->regs = regs; in tegra210_clk_register_emc() 284 emc->hw.init = &init; in tegra210_clk_register_emc() 286 clk = clk_register(NULL, &emc->hw); in tegra210_clk_register_emc() 288 kfree(emc); in tegra210_clk_register_emc() 354 emc->provider = provider; in tegra210_clk_emc_attach() 368 module_put(emc->provider->owner); in tegra210_clk_emc_detach() [all …]
|
/linux/Documentation/devicetree/bindings/memory-controllers/ |
H A D | nvidia,tegra124-emc.yaml | 19 const: nvidia,tegra124-emc 30 - const: emc 51 "^emc-timings-[0-9]+$": 101 nvidia,emc-cfg: 106 nvidia,emc-cfg-2: 116 nvidia,emc-mode-1: 121 nvidia,emc-mode-2: 126 nvidia,emc-mode-4: 322 - nvidia,emc-cfg 323 - nvidia,emc-cfg-2 [all …]
|
H A D | nvidia,tegra30-emc.yaml | 23 const: nvidia,tegra30-emc 53 "^emc-timings-[0-9]+$": 78 nvidia,emc-mode-1: 83 nvidia,emc-mode-2: 88 nvidia,emc-mode-reset: 93 nvidia,emc-zcal-cnt-long: 111 nvidia,emc-configuration: 211 - nvidia,emc-mode-1 212 - nvidia,emc-mode-2 213 - nvidia,emc-mode-reset [all …]
|