Home
last modified time | relevance | path

Searched refs:bpmp (Results 1 – 25 of 69) sorted by relevance

123

/linux/drivers/firmware/tegra/
A Dbpmp.c37 struct tegra_bpmp *bpmp = channel->bpmp; in channel_to_ops() local
59 if (!bpmp) { in tegra_bpmp_get()
73 if (bpmp) in tegra_bpmp_put()
81 struct tegra_bpmp *bpmp = channel->bpmp; in tegra_bpmp_channel_get_thread_index() local
195 return bpmp->soc->ops->ring_doorbell(bpmp); in tegra_bpmp_ring_doorbell()
218 struct tegra_bpmp *bpmp = channel->bpmp; in tegra_bpmp_channel_read() local
404 struct tegra_bpmp *bpmp = channel->bpmp; in tegra_bpmp_mrq_return() local
735 err = bpmp->soc->ops->init(bpmp); in tegra_bpmp_probe()
789 tegra_bpmp_free_mrq(bpmp, MRQ_PING, bpmp); in tegra_bpmp_probe()
792 bpmp->soc->ops->deinit(bpmp); in tegra_bpmp_probe()
[all …]
A Dbpmp-tegra186.c97 struct tegra_bpmp *bpmp = data; in tegra186_bpmp_ivc_notify() local
107 struct tegra_bpmp *bpmp, in tegra186_bpmp_channel_init() argument
128 bpmp); in tegra186_bpmp_channel_init()
136 channel->bpmp = bpmp; in tegra186_bpmp_channel_init()
160 tegra_bpmp_handle_rx(bpmp); in mbox_handle_rx()
173 bpmp->priv = priv; in tegra186_bpmp_init()
174 priv->parent = bpmp; in tegra186_bpmp_init()
202 err = tegra186_bpmp_channel_init(bpmp->tx_channel, bpmp, in tegra186_bpmp_init()
207 err = tegra186_bpmp_channel_init(bpmp->rx_channel, bpmp, in tegra186_bpmp_init()
216 bpmp, index); in tegra186_bpmp_init()
[all …]
A Dbpmp-tegra210.c39 struct tegra210_bpmp *priv = bpmp->priv; in bpmp_channel_status()
113 struct tegra210_bpmp *priv = bpmp->priv; in tegra210_bpmp_ring_doorbell()
128 struct tegra_bpmp *bpmp = data; in rx_irq() local
130 tegra_bpmp_handle_rx(bpmp); in rx_irq()
136 struct tegra_bpmp *bpmp, in tegra210_bpmp_channel_init() argument
139 struct tegra210_bpmp *priv = bpmp->priv; in tegra210_bpmp_channel_init()
156 channel->bpmp = bpmp; in tegra210_bpmp_channel_init()
172 bpmp->priv = priv; in tegra210_bpmp_init()
182 err = tegra210_bpmp_channel_init(bpmp->tx_channel, bpmp, in tegra210_bpmp_init()
187 err = tegra210_bpmp_channel_init(bpmp->rx_channel, bpmp, in tegra210_bpmp_init()
[all …]
A Dbpmp-debugfs.c138 err = tegra_bpmp_transfer(bpmp, &msg); in mrq_debug_open()
172 err = tegra_bpmp_transfer(bpmp, &msg); in mrq_debug_close()
216 err = tegra_bpmp_transfer(bpmp, &msg); in mrq_debug_read()
238 err = mrq_debug_close(bpmp, fd); in mrq_debug_read()
297 err = mrq_debug_close(bpmp, fd); in mrq_debug_write()
360 err = mrq_debug_close(bpmp, fd); in bpmp_debug_show()
423 if (!bpmp || !parent || !ppath) in bpmp_populate_debugfs_inband()
739 parent, bpmp, in bpmp_populate_dir()
772 err = bpmp_populate_dir(bpmp, &seqbuf, bpmp->debugfs_mirror, 0); in bpmp_populate_debugfs_shmem()
795 if (!bpmp->debugfs_mirror) { in tegra_bpmp_init_debugfs()
[all …]
A DMakefile2 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
A Dbuilt-in.a3 bpmp.o/
4 bpmp-tegra210.o/
5 bpmp-tegra186.o/
6 bpmp-debugfs.o/
A Dbpmp-private.h12 int (*init)(struct tegra_bpmp *bpmp);
13 void (*deinit)(struct tegra_bpmp *bpmp);
22 int (*ring_doorbell)(struct tegra_bpmp *bpmp);
23 int (*resume)(struct tegra_bpmp *bpmp);
A D.built-in.a.cmd1 …vers/firmware/tegra/bpmp.o drivers/firmware/tegra/bpmp-tegra210.o drivers/firmware/tegra/bpmp-tegr…
/linux/arch/arm64/boot/dts/nvidia/
A Dtegra186.dtsi56 <&bpmp TEGRA186_CLK_EQOS_AXI>,
57 <&bpmp TEGRA186_CLK_EQOS_RX>,
58 <&bpmp TEGRA186_CLK_EQOS_TX>,
80 <&bpmp TEGRA186_CLK_APB2APE>;
507 nvidia,bpmp = <&bpmp>;
1204 nvidia,bpmp = <&bpmp>;
1236 <&bpmp TEGRA186_CLK_AFI>,
1725 label = "cpu-bpmp-tx";
1731 label = "cpu-bpmp-rx";
1764 bpmp: bpmp { label
[all …]
A Dtegra194.dtsi601 nvidia,bpmp = <&bpmp>;
2028 nvidia,bpmp = <&bpmp 1>;
2082 nvidia,bpmp = <&bpmp 2>;
2136 nvidia,bpmp = <&bpmp 3>;
2190 nvidia,bpmp = <&bpmp 4>;
2244 nvidia,bpmp = <&bpmp 0>;
2298 nvidia,bpmp = <&bpmp 5>;
2348 nvidia,bpmp = <&bpmp 4>;
2388 nvidia,bpmp = <&bpmp 0>;
2466 bpmp: bpmp { label
[all …]
A Dtegra234.dtsi32 clocks = <&bpmp TEGRA234_CLK_UARTA>;
34 resets = <&bpmp TEGRA234_RESET_UARTA>;
43 clocks = <&bpmp TEGRA234_CLK_SDMMC4>;
45 resets = <&bpmp TEGRA234_RESET_SDMMC4>;
54 clocks = <&bpmp TEGRA234_CLK_FUSE>;
134 label = "cpu-bpmp-tx";
140 label = "cpu-bpmp-rx";
145 bpmp: bpmp { label
146 compatible = "nvidia,tegra234-bpmp", "nvidia,tegra186-bpmp";
155 compatible = "nvidia,tegra186-bpmp-i2c";
[all …]
/linux/drivers/soc/tegra/
A Dpowergate-bpmp.c21 struct tegra_bpmp *bpmp; member
48 err = tegra_bpmp_transfer(bpmp, &msg); in tegra_bpmp_powergate_set_state()
78 err = tegra_bpmp_transfer(bpmp, &msg); in tegra_bpmp_powergate_get_state()
106 err = tegra_bpmp_transfer(bpmp, &msg); in tegra_bpmp_powergate_get_max_id()
136 err = tegra_bpmp_transfer(bpmp, &msg); in tegra_bpmp_powergate_get_name()
152 struct tegra_bpmp *bpmp = powergate->bpmp; in tegra_powergate_power_on() local
161 struct tegra_bpmp *bpmp = powergate->bpmp; in tegra_powergate_power_off() local
182 powergate->bpmp = bpmp; in tegra_powergate_add()
200 struct tegra_bpmp *bpmp = powergate->bpmp; in tegra_powergate_remove() local
331 struct device *dev = bpmp->dev; in tegra_bpmp_init_powergates()
[all …]
/linux/include/soc/tegra/
A Dbpmp.h40 struct tegra_bpmp *bpmp; member
111 void tegra_bpmp_put(struct tegra_bpmp *bpmp);
112 int tegra_bpmp_transfer_atomic(struct tegra_bpmp *bpmp,
114 int tegra_bpmp_transfer(struct tegra_bpmp *bpmp,
129 static inline void tegra_bpmp_put(struct tegra_bpmp *bpmp) in tegra_bpmp_put() argument
137 static inline int tegra_bpmp_transfer(struct tegra_bpmp *bpmp, in tegra_bpmp_transfer() argument
167 void tegra_bpmp_handle_rx(struct tegra_bpmp *bpmp);
170 int tegra_bpmp_init_clocks(struct tegra_bpmp *bpmp);
179 int tegra_bpmp_init_resets(struct tegra_bpmp *bpmp);
188 int tegra_bpmp_init_powergates(struct tegra_bpmp *bpmp);
[all …]
/linux/drivers/clk/tegra/
A Dclk-bpmp.c31 struct tegra_bpmp *bpmp; member
86 err = tegra_bpmp_transfer(bpmp, &msg); in tegra_bpmp_clk_transfer()
426 dev_err(bpmp->dev, in tegra_bpmp_probe_clocks()
481 clk->bpmp = bpmp; in tegra_bpmp_clk_register()
549 bpmp->num_clocks = count; in tegra_bpmp_register_clocks()
551 bpmp->clocks = devm_kcalloc(bpmp->dev, count, sizeof(clk), GFP_KERNEL); in tegra_bpmp_register_clocks()
552 if (!bpmp->clocks) in tegra_bpmp_register_clocks()
560 dev_err(bpmp->dev, in tegra_bpmp_register_clocks()
566 bpmp->clocks[i] = clk; in tegra_bpmp_register_clocks()
584 struct tegra_bpmp *bpmp = data; in tegra_bpmp_clk_of_xlate() local
[all …]
/linux/drivers/reset/tegra/
A Dreset-bpmp.c20 struct tegra_bpmp *bpmp = to_tegra_bpmp(rstc); in tegra_bpmp_reset_common() local
33 return tegra_bpmp_transfer(bpmp, &msg); in tegra_bpmp_reset_common()
60 int tegra_bpmp_init_resets(struct tegra_bpmp *bpmp) in tegra_bpmp_init_resets() argument
62 bpmp->rstc.ops = &tegra_bpmp_reset_ops; in tegra_bpmp_init_resets()
63 bpmp->rstc.owner = THIS_MODULE; in tegra_bpmp_init_resets()
64 bpmp->rstc.of_node = bpmp->dev->of_node; in tegra_bpmp_init_resets()
65 bpmp->rstc.nr_resets = bpmp->soc->num_resets; in tegra_bpmp_init_resets()
67 return devm_reset_controller_register(bpmp->dev, &bpmp->rstc); in tegra_bpmp_init_resets()
/linux/drivers/thermal/tegra/
A Dtegra-bpmp-thermal.c28 struct tegra_bpmp *bpmp; member
52 err = tegra_bpmp_transfer(zone->tegra->bpmp, &msg); in tegra_bpmp_thermal_get_temp()
79 return tegra_bpmp_transfer(zone->tegra->bpmp, &msg); in tegra_bpmp_thermal_set_trips()
122 static int tegra_bpmp_thermal_get_num_zones(struct tegra_bpmp *bpmp, in tegra_bpmp_thermal_get_num_zones() argument
140 err = tegra_bpmp_transfer(bpmp, &msg); in tegra_bpmp_thermal_get_num_zones()
156 struct tegra_bpmp *bpmp = dev_get_drvdata(pdev->dev.parent); in tegra_bpmp_thermal_probe() local
167 tegra->bpmp = bpmp; in tegra_bpmp_thermal_probe()
169 err = tegra_bpmp_thermal_get_num_zones(bpmp, &max_num_zones); in tegra_bpmp_thermal_probe()
214 err = tegra_bpmp_request_mrq(bpmp, MRQ_THERMAL, bpmp_mrq_thermal, in tegra_bpmp_thermal_probe()
231 tegra_bpmp_free_mrq(tegra->bpmp, MRQ_THERMAL, tegra); in tegra_bpmp_thermal_remove()
/linux/drivers/cpufreq/
A Dtegra186-cpufreq.c130 struct platform_device *pdev, struct tegra_bpmp *bpmp, in init_vhint_table() argument
141 virt = dma_alloc_coherent(bpmp->dev, sizeof(*data), &phys, in init_vhint_table()
157 err = tegra_bpmp_transfer(bpmp, &msg); in init_vhint_table()
213 dma_free_coherent(bpmp->dev, sizeof(*data), virt, phys); in init_vhint_table()
221 struct tegra_bpmp *bpmp; in tegra186_cpufreq_probe() local
235 bpmp = tegra_bpmp_get(&pdev->dev); in tegra186_cpufreq_probe()
236 if (IS_ERR(bpmp)) in tegra186_cpufreq_probe()
237 return PTR_ERR(bpmp); in tegra186_cpufreq_probe()
248 cluster->table = init_vhint_table(pdev, bpmp, cluster, i); in tegra186_cpufreq_probe()
260 tegra_bpmp_put(bpmp); in tegra186_cpufreq_probe()
A Dtegra194-cpufreq.c289 init_freq_table(struct platform_device *pdev, struct tegra_bpmp *bpmp, in init_freq_table() argument
310 err = tegra_bpmp_transfer(bpmp, &msg); in init_freq_table()
363 struct tegra_bpmp *bpmp; in tegra194_cpufreq_probe() local
378 bpmp = tegra_bpmp_get(&pdev->dev); in tegra194_cpufreq_probe()
379 if (IS_ERR(bpmp)) in tegra194_cpufreq_probe()
380 return PTR_ERR(bpmp); in tegra194_cpufreq_probe()
390 data->tables[i] = init_freq_table(pdev, bpmp, i); in tegra194_cpufreq_probe()
406 tegra_bpmp_put(bpmp); in tegra194_cpufreq_probe()
/linux/Documentation/devicetree/bindings/gpu/
A Dnvidia,gk20a.txt87 clocks = <&bpmp TEGRA186_CLK_GPCCLK>,
88 <&bpmp TEGRA186_CLK_GPU>;
90 resets = <&bpmp TEGRA186_RESET_GPU>;
92 power-domains = <&bpmp TEGRA186_POWER_DOMAIN_GPU>;
105 clocks = <&bpmp TEGRA194_CLK_GPCCLK>,
106 <&bpmp TEGRA194_CLK_GPU_PWR>,
107 <&bpmp TEGRA194_CLK_FUSE>;
109 resets = <&bpmp TEGRA194_RESET_GPU>;
113 power-domains = <&bpmp TEGRA194_POWER_DOMAIN_GPU>;
/linux/Documentation/devicetree/bindings/i2c/
A Dnvidia,tegra186-bpmp-i2c.txt10 ../firmware/nvidia,tegra186-bpmp.txt for details of the BPMP binding.
19 - "nvidia,tegra186-bpmp-i2c".
26 - nvidia,bpmp-bus-id:
33 bpmp {
37 compatible = "nvidia,tegra186-bpmp-i2c";
40 nvidia,bpmp-bus-id = <5>;
/linux/Documentation/devicetree/bindings/thermal/
A Dnvidia,tegra186-bpmp-thermal.txt9 ../firmware/nvidia,tegra186-bpmp.txt for details of the BPMP binding.
18 - "nvidia,tegra186-bpmp-thermal"
19 - "nvidia,tegra194-bpmp-thermal"
26 bpmp {
30 compatible = "nvidia,tegra186-bpmp-thermal";
/linux/Documentation/devicetree/bindings/memory-controllers/
A Dnvidia,tegra186-mc.yaml81 nvidia,bpmp:
124 clocks = <&bpmp TEGRA186_CLK_EMC>;
127 nvidia,bpmp = <&bpmp>;
132 bpmp: bpmp {
133 compatible = "nvidia,tegra186-bpmp";
/linux/drivers/memory/tegra/
A Dtegra186-emc.c20 struct tegra_bpmp *bpmp; member
174 emc->bpmp = tegra_bpmp_get(&pdev->dev); in tegra186_emc_probe()
175 if (IS_ERR(emc->bpmp)) in tegra186_emc_probe()
176 return dev_err_probe(&pdev->dev, PTR_ERR(emc->bpmp), "failed to get BPMP\n"); in tegra186_emc_probe()
195 err = tegra_bpmp_transfer(emc->bpmp, &msg); in tegra186_emc_probe()
255 tegra_bpmp_put(emc->bpmp); in tegra186_emc_probe()
264 tegra_bpmp_put(emc->bpmp); in tegra186_emc_remove()
/linux/Documentation/devicetree/bindings/firmware/
A Dnvidia,tegra186-bpmp.txt14 - "nvidia,tegra186-bpmp"
81 compatible = "nvidia,tegra186-bpmp-shmem";
83 label = "cpu-bpmp-tx";
88 compatible = "nvidia,tegra186-bpmp-shmem";
90 label = "cpu-bpmp-rx";
95 bpmp {
96 compatible = "nvidia,tegra186-bpmp";
A Dnvidia,tegra210-bpmp.txt15 - "nvidia,tegra210-bpmp"
24 offloaded to bpmp.
28 bpmp@70016000 {
29 compatible = "nvidia,tegra210-bpmp";

Completed in 51 milliseconds

123