| /linux/drivers/memory/tegra/ |
| H A D | tegra20-emc.c | 35 #include "tegra-emc-common.h" 219 struct tegra_emc *emc = data; 223 status = readl_relaxed(emc->regs + EMC_INTSTATUS) & intmask; 229 dev_err_ratelimited(emc->dev, 233 writel_relaxed(status, emc->regs + EMC_INTSTATUS); 238 static struct emc_timing *tegra20_emc_find_timing(struct tegra_emc *emc, in tegra20_emc_isr() 244 for (i = 0; i < emc->num_timings; i++) { in tegra20_emc_isr() 245 if (emc->timings[i].rate >= rate) { in tegra20_emc_isr() 246 timing = &emc->timings[i]; in tegra20_emc_isr() 252 dev_err(emc in tegra20_emc_isr() 237 struct tegra_emc *emc = data; tegra20_emc_isr() local 256 tegra20_emc_find_timing(struct tegra_emc * emc,unsigned long rate) tegra20_emc_find_timing() argument 277 emc_prepare_timing_change(struct tegra_emc * emc,unsigned long rate) emc_prepare_timing_change() argument 299 emc_complete_timing_change(struct tegra_emc * emc,bool flush) emc_complete_timing_change() argument 327 struct tegra_emc *emc = container_of(nb, struct tegra_emc, clk_nb); tegra20_emc_clk_change_notify() local 355 load_one_timing_from_dt(struct tegra_emc * emc,struct emc_timing * timing,struct device_node * node) load_one_timing_from_dt() argument 410 tegra20_emc_load_timings_from_dt(struct tegra_emc * emc,struct device_node * node) tegra20_emc_load_timings_from_dt() argument 455 tegra20_emc_find_node_by_ram_code(struct tegra_emc * emc) tegra20_emc_find_node_by_ram_code() argument 535 emc_read_lpddr_mode_register(struct tegra_emc * emc,unsigned int emem_dev,unsigned int register_addr,unsigned int * register_data) emc_read_lpddr_mode_register() argument 571 emc_read_lpddr_sdram_info(struct tegra_emc * emc,unsigned int emem_dev,bool print_out) emc_read_lpddr_sdram_info() argument 593 emc_setup_hw(struct tegra_emc * emc) emc_setup_hw() argument 678 struct tegra_emc *emc = arg; emc_round_rate() local 713 tegra20_emc_rate_requests_init(struct tegra_emc * emc) tegra20_emc_rate_requests_init() argument 723 emc_request_rate(struct tegra_emc * emc,unsigned long new_min_rate,unsigned long new_max_rate,enum emc_rate_request_type type) emc_request_rate() argument 764 emc_set_min_rate(struct tegra_emc * emc,unsigned long rate,enum emc_rate_request_type type) emc_set_min_rate() argument 777 emc_set_max_rate(struct tegra_emc * emc,unsigned long rate,enum emc_rate_request_type type) emc_set_max_rate() argument 815 tegra20_emc_validate_rate(struct tegra_emc * emc,unsigned long rate) tegra20_emc_validate_rate() argument 828 struct tegra_emc *emc = s->private; tegra20_emc_debug_available_rates_show() local 845 struct tegra_emc *emc = data; tegra20_emc_debug_min_rate_get() local 854 struct tegra_emc *emc = data; tegra20_emc_debug_min_rate_set() local 875 struct tegra_emc *emc = data; tegra20_emc_debug_max_rate_get() local 884 struct tegra_emc *emc = data; tegra20_emc_debug_max_rate_set() local 903 tegra20_emc_debugfs_init(struct tegra_emc * emc) tegra20_emc_debugfs_init() argument 980 struct tegra_emc *emc = to_tegra_emc_provider(dst->provider); emc_icc_set() local 1003 tegra20_emc_interconnect_init(struct tegra_emc * emc) tegra20_emc_interconnect_init() argument 1065 struct tegra_emc *emc = data; devm_tegra20_emc_unreg_clk_notifier() local 1070 tegra20_emc_init_clk(struct tegra_emc * emc) tegra20_emc_init_clk() argument 1101 struct tegra_emc *emc = dev_get_drvdata(dev); tegra20_emc_devfreq_target() local 1120 struct tegra_emc *emc = dev_get_drvdata(dev); tegra20_emc_devfreq_get_dev_status() local 1146 tegra20_emc_devfreq_init(struct tegra_emc * emc) tegra20_emc_devfreq_init() argument 1182 struct tegra_emc *emc; tegra20_emc_probe() local [all...] |
| H A D | tegra210-emc-core.c | 21 #include "tegra210-emc.h" 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() 570 emc->sequence->periodic_compensation(emc); in tegra210_emc_train() 572 spin_unlock_irqrestore(&emc->lock, flags); in tegra210_emc_train() 574 mod_timer(&emc in tegra210_emc_train() 578 tegra210_emc_training_start(struct tegra210_emc * emc) tegra210_emc_training_start() argument 584 tegra210_emc_training_stop(struct tegra210_emc * emc) tegra210_emc_training_stop() argument 589 tegra210_emc_get_temperature(struct tegra210_emc * emc) tegra210_emc_get_temperature() argument 617 struct tegra210_emc *emc = timer_container_of(emc, timer, tegra210_emc_poll_refresh() local 667 tegra210_emc_poll_refresh_stop(struct tegra210_emc * emc) tegra210_emc_poll_refresh_stop() argument 673 tegra210_emc_poll_refresh_start(struct tegra210_emc * emc) tegra210_emc_poll_refresh_start() argument 692 struct tegra210_emc *emc = cd->devdata; tegra210_emc_cd_get_state() local 702 struct tegra210_emc *emc = cd->devdata; tegra210_emc_cd_set_state() local 721 tegra210_emc_set_clock(struct tegra210_emc * emc,u32 clksrc) tegra210_emc_set_clock() argument 731 tegra210_change_dll_src(struct tegra210_emc * emc,u32 clksrc) tegra210_change_dll_src() argument 767 tegra210_emc_set_refresh(struct tegra210_emc * emc,enum tegra210_emc_refresh refresh) tegra210_emc_set_refresh() argument 815 tegra210_emc_mrr_read(struct tegra210_emc * emc,unsigned int chip,unsigned int address) tegra210_emc_mrr_read() argument 840 tegra210_emc_do_clock_change(struct tegra210_emc * emc,u32 clksrc) tegra210_emc_do_clock_change() argument 856 tegra210_emc_find_timing(struct tegra210_emc * emc,unsigned long rate) tegra210_emc_find_timing() argument 868 tegra210_emc_wait_for_update(struct tegra210_emc * emc,unsigned int channel,unsigned int offset,u32 bit_mask,bool state) tegra210_emc_wait_for_update() argument 885 tegra210_emc_set_shadow_bypass(struct tegra210_emc * emc,int set) tegra210_emc_set_shadow_bypass() argument 903 tegra210_emc_timing_update(struct tegra210_emc * emc) tegra210_emc_timing_update() argument 932 tegra210_emc_start_periodic_compensation(struct tegra210_emc * emc) tegra210_emc_start_periodic_compensation() argument 1140 tegra210_emc_dll_prelock(struct tegra210_emc * emc,u32 clksrc) tegra210_emc_dll_prelock() argument 1222 tegra210_emc_dvfs_power_ramp_up(struct tegra210_emc * emc,u32 clk,bool flip_backward) tegra210_emc_dvfs_power_ramp_up() argument 1337 tegra210_emc_dvfs_power_ramp_down(struct tegra210_emc * emc,u32 clk,bool flip_backward) tegra210_emc_dvfs_power_ramp_down() argument 1460 update_dll_control(struct tegra210_emc * emc,u32 value,bool state) update_dll_control() argument 1473 tegra210_emc_dll_disable(struct tegra210_emc * emc) tegra210_emc_dll_disable() argument 1483 tegra210_emc_dll_enable(struct tegra210_emc * emc) tegra210_emc_dll_enable() argument 1493 tegra210_emc_adjust_timing(struct tegra210_emc * emc,struct tegra210_emc_timing * timing) tegra210_emc_adjust_timing() argument 1532 struct tegra210_emc *emc = dev_get_drvdata(dev); tegra210_emc_set_rate() local 1597 tegra210_emc_validate_rate(struct tegra210_emc * emc,unsigned long rate) tegra210_emc_validate_rate() argument 1612 struct tegra210_emc *emc = s->private; tegra210_emc_debug_available_rates_show() local 1629 struct tegra210_emc *emc = data; tegra210_emc_debug_min_rate_get() local 1638 struct tegra210_emc *emc = data; tegra210_emc_debug_min_rate_set() local 1659 struct tegra210_emc *emc = data; tegra210_emc_debug_max_rate_get() local 1668 struct tegra210_emc *emc = data; tegra210_emc_debug_max_rate_set() local 1689 struct tegra210_emc *emc = data; tegra210_emc_debug_temperature_get() local 1704 struct tegra210_emc *emc = data; tegra210_emc_debug_temperature_set() local 1718 tegra210_emc_debugfs_init(struct tegra210_emc * emc) tegra210_emc_debugfs_init() argument 1761 tegra210_emc_detect(struct tegra210_emc * emc) tegra210_emc_detect() argument 1787 tegra210_emc_validate_timings(struct tegra210_emc * emc,struct tegra210_emc_timing * timings,unsigned int num_timings) tegra210_emc_validate_timings() argument 1815 struct tegra210_emc *emc; tegra210_emc_probe() local 1991 struct tegra210_emc *emc = platform_get_drvdata(pdev); tegra210_emc_remove() local 2000 struct tegra210_emc *emc = dev_get_drvdata(dev); tegra210_emc_suspend() local 2021 struct tegra210_emc *emc = dev_get_drvdata(dev); tegra210_emc_resume() local [all...] |
| H A D | tegra210-emc-cc-r21021.c | 36 #define emc_dbg(emc, flags, ...) dev_dbg(emc->dev, __VA_ARGS__) argument 108 emc_dbg(emc, EMA_UPDATES, "%s: (s=%u) EMA: %u\n", \ 133 static void tegra210_emc_get_clktree_delay(struct tegra210_emc *emc, in tegra210_emc_get_clktree_delay() argument 136 struct tegra210_emc_timing *curr = emc->last; in tegra210_emc_get_clktree_delay() 145 tegra210_emc_start_periodic_compensation(emc); in tegra210_emc_get_clktree_delay() 148 for (d = 0; d < emc->num_devices; d++) { in tegra210_emc_get_clktree_delay() 150 msb = tegra210_emc_mrr_read(emc, 2 - d, 19); in tegra210_emc_get_clktree_delay() 151 lsb = tegra210_emc_mrr_read(emc, 2 - d, 18); in tegra210_emc_get_clktree_delay() 153 for (c = 0; c < emc->num_channels; c++) { in tegra210_emc_get_clktree_delay() 182 static bool periodic_compensation_handler(struct tegra210_emc *emc, u32 type, in periodic_compensation_handler() argument [all …]
|
| H A D | Makefile | 18 obj-$(CONFIG_TEGRA_EMC_COMMON) += tegra-emc-common.o 19 obj-$(CONFIG_TEGRA20_EMC) += tegra20-emc.o 20 obj-$(CONFIG_TEGRA30_EMC) += tegra30-emc.o 21 obj-$(CONFIG_TEGRA114_EMC) += tegra114-emc.o 22 obj-$(CONFIG_TEGRA124_EMC) += tegra124-emc.o 23 obj-$(CONFIG_TEGRA210_EMC_TABLE) += tegra210-emc-table.o 24 obj-$(CONFIG_TEGRA210_EMC) += tegra210-emc.o 25 obj-$(CONFIG_ARCH_TEGRA_186_SOC) += tegra186-emc.o 26 obj-$(CONFIG_ARCH_TEGRA_194_SOC) += tegra186-emc.o 27 obj-$(CONFIG_ARCH_TEGRA_234_SOC) += tegra186-emc [all...] |
| H A D | tegra210-emc.h | 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 951 return readl_relaxed(emc->regs + offset); in emc_readl() 954 static inline void emc_channel_writel(struct tegra210_emc *emc, in emc_channel_writel() argument 958 writel_relaxed(value, emc->channel[channel] + offset); in emc_channel_writel() 961 static inline u32 emc_channel_readl(struct tegra210_emc *emc, in emc_channel_readl() argument 964 return readl_relaxed(emc->channel[channel] + offset); in emc_channel_readl() [all …]
|
| /linux/arch/arm/boot/dts/nvidia/ |
| 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"; 63 clock-names = "emc-parent"; 70 clock-names = "emc-parent"; [all …]
|
| 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"; 67 clock-names = "emc-parent"; 74 clock-names = "emc-parent"; [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"; 63 clock-names = "emc-parent"; 72 clock-names = "emc-parent"; [all …]
|
| H A D | tegra124-nyan-big-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"; 63 clock-names = "emc-parent"; 70 clock-names = "emc-parent"; [all …]
|
| H A D | tegra30-asus-tf300t.dts | 146 emc-timings-0 { 211 emc-timings-1 { 276 emc-timings-2 { 343 emc-timings-0 { 350 nvidia,emc-auto-cal-interval = <0x001fffff>; 351 nvidia,emc-mode-1 = <0x80100003>; 352 nvidia,emc-mode-2 = <0x80200008>; 353 nvidia,emc-mode-reset = <0x80001221>; 354 nvidia,emc-zcal-cnt-long = <0x00000040>; 355 nvidia,emc-cfg-dyn-self-ref; [all …]
|
| H A D | tegra30-asus-tf300tg.dts | 220 emc-timings-0 { 285 emc-timings-1 { 350 emc-timings-2 { 417 emc-timings-0 { 424 nvidia,emc-auto-cal-interval = <0x001fffff>; 425 nvidia,emc-mode-1 = <0x80100003>; 426 nvidia,emc-mode-2 = <0x80200048>; 427 nvidia,emc-mode-reset = <0x80001221>; 428 nvidia,emc-zcal-cnt-long = <0x00000040>; 429 nvidia,emc-cfg-dyn-self-ref; [all …]
|
| H A D | tegra30-asus-tf201.dts | 112 emc-timings-0 { 167 emc-timings-1 { 224 emc-timings-0 { 231 nvidia,emc-auto-cal-interval = <0x001fffff>; 232 nvidia,emc-mode-1 = <0x00010022>; 233 nvidia,emc-mode-2 = <0x00020001>; 234 nvidia,emc-mode-reset = <0x00000000>; 235 nvidia,emc-zcal-cnt-long = <0x00000009>; 236 nvidia,emc-cfg-periodic-qrst; 238 nvidia,emc-configuration = < 0x00000001 [all …]
|
| H A D | tegra30-asus-tf700t.dts | 141 emc-timings-0 { 206 emc-timings-1 { 273 emc-timings-0 { 280 nvidia,emc-auto-cal-interval = <0x001fffff>; 281 nvidia,emc-mode-1 = <0x80100003>; 282 nvidia,emc-mode-2 = <0x80200008>; 283 nvidia,emc-mode-reset = <0x80001221>; 284 nvidia,emc-zcal-cnt-long = <0x00000040>; 285 nvidia,emc-cfg-dyn-self-ref; 286 nvidia,emc-cfg-periodic-qrst; [all …]
|
| H A D | tegra30-asus-tf300tl.dts | 240 emc-timings-0 { 305 emc-timings-1 { 372 emc-timings-0 { 379 nvidia,emc-auto-cal-interval = <0x001fffff>; 380 nvidia,emc-mode-1 = <0x80100003>; 381 nvidia,emc-mode-2 = <0x80200048>; 382 nvidia,emc-mode-reset = <0x80001221>; 383 nvidia,emc-zcal-cnt-long = <0x00000040>; 384 nvidia,emc-cfg-dyn-self-ref; 385 nvidia,emc-cfg-periodic-qrst; [all …]
|
| H A D | tegra124-xiaomi-mocha.dts | 105 emc-timings-0 { 112 clock-names = "emc-parent"; 119 clock-names = "emc-parent"; 126 clock-names = "emc-parent"; 133 clock-names = "emc-parent"; 140 clock-names = "emc-parent"; 147 clock-names = "emc-parent"; 154 clock-names = "emc-parent"; 161 clock-names = "emc-parent"; 168 clock-names = "emc-parent"; [all …]
|
| H A D | tegra30-asus-nexus7-grouper-memory-timings.dtsi | 5 emc-timings-0 { 159 emc-timings-1 { 315 emc-timings-0 { 321 nvidia,emc-auto-cal-interval = <0x001fffff>; 322 nvidia,emc-mode-1 = <0x80100003>; 323 nvidia,emc-mode-2 = <0x80200008>; 324 nvidia,emc-mode-reset = <0x80001221>; 325 nvidia,emc-zcal-cnt-long = <0x00000040>; 326 nvidia,emc-cfg-dyn-self-ref; 327 nvidia,emc-cfg-periodic-qrst; [all …]
|
| H A D | tegra30-pegatron-chagall.dts | 1543 emc-timings-0 { 1598 emc-timings-1 { 1653 emc-timings-2 { 1708 emc-timings-3 { 1765 emc-timings-0 { 1772 nvidia,emc-auto-cal-interval = <0x001fffff>; 1773 nvidia,emc-mode-1 = <0x00010022>; 1774 nvidia,emc-mode-2 = <0x00020001>; 1775 nvidia,emc-mode-reset = <0x00000000>; 1776 nvidia,emc-zcal-cnt-long = <0x00000009>; [all …]
|
| H A D | tegra30-asus-nexus7-tilapia-memory-timings.dtsi | 13 emc-timings-0 { 17 nvidia,emc-auto-cal-interval = <0x001fffff>; 18 nvidia,emc-mode-1 = <0x80100002>; 19 nvidia,emc-mode-2 = <0x80200018>; 20 nvidia,emc-mode-reset = <0x80000b71>; 21 nvidia,emc-zcal-cnt-long = <0x00000040>; 22 nvidia,emc-cfg-periodic-qrst; 24 nvidia,emc-configuration = < 118 emc-timings-1 { 122 nvidia,emc-auto-cal-interval = <0x001fffff>; [all …]
|
| H A D | tegra20-acer-a500-picasso.dts | 705 emc-tables@0 { 712 emc-table@25000 { 714 compatible = "nvidia,tegra20-emc-table"; 716 nvidia,emc-registers = <0x00000002 0x00000006 730 emc-table@50000 { 732 compatible = "nvidia,tegra20-emc-table"; 734 nvidia,emc-registers = <0x00000003 0x00000007 748 emc-table@75000 { 750 compatible = "nvidia,tegra20-emc-table"; 752 nvidia,emc-registers = <0x00000005 0x0000000a [all …]
|
| H A D | tegra30-ouya.dts | 2209 emc-timings-0 { 2357 emc-timings-1 { 2505 emc-timings-2 { 2655 emc-timings-0 { 2660 nvidia,emc-auto-cal-interval = <0x001fffff>; 2661 nvidia,emc-mode-1 = <0x80100003>; 2662 nvidia,emc-mode-2 = <0x80200008>; 2663 nvidia,emc-mode-reset = <0x80001221>; 2664 nvidia,emc-zcal-cnt-long = <0x00000040>; 2665 nvidia,emc-cfg-periodic-qrst; [all …]
|
| H A D | tegra30-asus-p1801-t.dts | 1436 emc-timings-3 { 1503 emc-timings-3 { 1510 nvidia,emc-auto-cal-interval = <0x001fffff>; 1511 nvidia,emc-mode-1 = <0x80100003>; 1512 nvidia,emc-mode-2 = <0x80200008>; 1513 nvidia,emc-mode-reset = <0x80001221>; 1514 nvidia,emc-zcal-cnt-long = <0x00000040>; 1515 nvidia,emc-cfg-dyn-self-ref; 1516 nvidia,emc-cfg-periodic-qrst; 1518 nvidia,emc-configuration = < 0x00000001 [all …]
|
| /linux/drivers/clk/tegra/ |
| H A D | clk-tegra20-emc.c | 57 struct tegra_clk_emc *emc = to_tegra_clk_emc(hw); in emc_recalc_rate() local 60 val = readl_relaxed(emc->reg); in emc_recalc_rate() 68 struct tegra_clk_emc *emc = to_tegra_clk_emc(hw); in emc_get_parent() local 70 return readl_relaxed(emc->reg) >> CLK_SOURCE_EMC_2X_CLK_SRC_SHIFT; in emc_get_parent() 75 struct tegra_clk_emc *emc = to_tegra_clk_emc(hw); in emc_set_parent() local 78 val = readl_relaxed(emc->reg); in emc_set_parent() 84 if (index == EMC_SRC_PLL_M && div == 0 && emc->want_low_jitter) in emc_set_parent() 89 if (emc->mc_same_freq) in emc_set_parent() 94 writel_relaxed(val, emc->reg); in emc_set_parent() 96 fence_udelay(1, emc->reg); in emc_set_parent() [all …]
|
| H A D | clk-tegra210-emc.c | 53 struct tegra210_clk_emc *emc = to_tegra210_clk_emc(hw); in tegra210_clk_emc_get_parent() local 57 value = readl_relaxed(emc->regs + CLK_SOURCE_EMC); in tegra210_clk_emc_get_parent() 66 struct tegra210_clk_emc *emc = to_tegra210_clk_emc(hw); in tegra210_clk_emc_recalc_rate() local 81 value = readl_relaxed(emc->regs + CLK_SOURCE_EMC); in tegra210_clk_emc_recalc_rate() 92 struct tegra210_clk_emc *emc = to_tegra210_clk_emc(hw); in tegra210_clk_emc_determine_rate() local 93 struct tegra210_clk_emc_provider *provider = emc->provider; in tegra210_clk_emc_determine_rate() 115 static struct clk *tegra210_clk_emc_find_parent(struct tegra210_clk_emc *emc, in tegra210_clk_emc_find_parent() argument 118 struct clk_hw *parent = clk_hw_get_parent_by_index(&emc->hw, index); in tegra210_clk_emc_find_parent() 129 struct tegra210_clk_emc *emc = to_tegra210_clk_emc(hw); in tegra210_clk_emc_set_rate() local 130 struct tegra210_clk_emc_provider *provider = emc->provider; in tegra210_clk_emc_set_rate() [all …]
|
| H A D | Makefile | 20 obj-$(CONFIG_ARCH_TEGRA_2x_SOC) += clk-tegra20-emc.o 22 obj-$(CONFIG_ARCH_TEGRA_3x_SOC) += clk-tegra20-emc.o 26 obj-$(CONFIG_TEGRA124_CLK_EMC) += clk-tegra124-emc.o 30 obj-$(CONFIG_ARCH_TEGRA_210_SOC) += clk-tegra210-emc.o
|
| H A D | clk-tegra124-emc.c | 79 struct tegra_emc *emc; member 180 if (tegra->emc) in emc_ensure_emc_driver() 181 return tegra->emc; in emc_ensure_emc_driver() 199 tegra->emc = platform_get_drvdata(pdev); in emc_ensure_emc_driver() 201 if (!tegra->emc) { in emc_ensure_emc_driver() 206 return tegra->emc; in emc_ensure_emc_driver() 216 struct tegra_emc *emc = emc_ensure_emc_driver(tegra); in emc_set_timing() local 218 if (!emc) in emc_set_timing() 252 err = tegra->prepare_timing_change(emc, timing->rate); in emc_set_timing() 272 tegra->complete_timing_change(emc, timing->rate); in emc_set_timing()
|