/linux-master/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 [all...] |
H A D | bpmp-private.h | 9 #include <soc/tegra/bpmp.h> 12 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);
|
H A D | bpmp-tegra186.c | 12 #include <soc/tegra/bpmp.h> 13 #include <soc/tegra/bpmp-abi.h> 16 #include "bpmp-private.h" 82 static int tegra186_bpmp_ring_doorbell(struct tegra_bpmp *bpmp) argument 84 struct tegra186_bpmp *priv = bpmp->priv; 98 struct tegra_bpmp *bpmp = data; local 99 struct tegra186_bpmp *priv = bpmp->priv; 104 tegra186_bpmp_ring_doorbell(bpmp); 108 struct tegra_bpmp *bpmp, 111 struct tegra186_bpmp *priv = bpmp 107 tegra186_bpmp_channel_init(struct tegra_bpmp_channel *channel, struct tegra_bpmp *bpmp, unsigned int index) argument 166 struct tegra_bpmp *bpmp = mbox_client_to_bpmp(client); local 171 tegra186_bpmp_teardown_channels(struct tegra_bpmp *bpmp) argument 192 tegra186_bpmp_dram_init(struct tegra_bpmp *bpmp) argument 233 tegra186_bpmp_sram_init(struct tegra_bpmp *bpmp) argument 274 tegra186_bpmp_setup_channels(struct tegra_bpmp *bpmp) argument 313 tegra186_bpmp_reset_channels(struct tegra_bpmp *bpmp) argument 325 tegra186_bpmp_init(struct tegra_bpmp *bpmp) argument 360 tegra186_bpmp_deinit(struct tegra_bpmp *bpmp) argument 369 tegra186_bpmp_resume(struct tegra_bpmp *bpmp) argument [all...] |
H A D | bpmp.c | 17 #include <soc/tegra/bpmp.h> 18 #include <soc/tegra/bpmp-abi.h> 21 #include "bpmp-private.h" 36 struct tegra_bpmp *bpmp = channel->bpmp; local 38 return bpmp->soc->ops; 44 struct tegra_bpmp *bpmp; local 47 np = of_parse_phandle(dev->of_node, "nvidia,bpmp", 0); 53 bpmp = ERR_PTR(-ENODEV); 57 bpmp 70 tegra_bpmp_put(struct tegra_bpmp *bpmp) argument 80 struct tegra_bpmp *bpmp = channel->bpmp; local 192 tegra_bpmp_ring_doorbell(struct tegra_bpmp *bpmp) argument 217 struct tegra_bpmp *bpmp = channel->bpmp; local 253 tegra_bpmp_write_threaded(struct tegra_bpmp *bpmp, unsigned int mrq, const void *data, size_t size) argument 318 tegra_bpmp_transfer_atomic(struct tegra_bpmp *bpmp, struct tegra_bpmp_message *msg) argument 364 tegra_bpmp_transfer(struct tegra_bpmp *bpmp, struct tegra_bpmp_message *msg) argument 405 tegra_bpmp_find_mrq(struct tegra_bpmp *bpmp, unsigned int mrq) argument 421 struct tegra_bpmp *bpmp = channel->bpmp; local 454 tegra_bpmp_handle_mrq(struct tegra_bpmp *bpmp, unsigned int mrq, struct tegra_bpmp_channel *channel) argument 475 tegra_bpmp_request_mrq(struct tegra_bpmp *bpmp, unsigned int mrq, tegra_bpmp_mrq_handler_t handler, void *data) argument 501 tegra_bpmp_free_mrq(struct tegra_bpmp *bpmp, unsigned int mrq, void *data) argument 520 tegra_bpmp_mrq_is_supported(struct tegra_bpmp *bpmp, unsigned int mrq) argument 560 tegra_bpmp_ping(struct tegra_bpmp *bpmp) argument 597 tegra_bpmp_get_firmware_tag_old(struct tegra_bpmp *bpmp, char *tag, size_t size) argument 635 tegra_bpmp_get_firmware_tag(struct tegra_bpmp *bpmp, char *tag, size_t size) argument 676 tegra_bpmp_handle_rx(struct tegra_bpmp *bpmp) argument 710 struct tegra_bpmp *bpmp; local 819 struct tegra_bpmp *bpmp = dev_get_drvdata(dev); local 828 struct tegra_bpmp *bpmp = dev_get_drvdata(dev); local [all...] |
H A D | bpmp-tegra210.c | 12 #include <soc/tegra/bpmp.h> 14 #include "bpmp-private.h" 37 static u32 bpmp_channel_status(struct tegra_bpmp *bpmp, unsigned int index) argument 39 struct tegra210_bpmp *priv = bpmp->priv; 48 return bpmp_channel_status(channel->bpmp, index) == MA_ACKD(index); 55 return bpmp_channel_status(channel->bpmp, index) == SL_SIGL(index); 63 return bpmp_channel_status(channel->bpmp, index) == MA_FREE(index); 71 return bpmp_channel_status(channel->bpmp, index) == SL_QUED(index); 76 struct tegra210_bpmp *priv = channel->bpmp->priv; 85 struct tegra210_bpmp *priv = channel->bpmp 111 tegra210_bpmp_ring_doorbell(struct tegra_bpmp *bpmp) argument 128 struct tegra_bpmp *bpmp = data; local 135 tegra210_bpmp_channel_init(struct tegra_bpmp_channel *channel, struct tegra_bpmp *bpmp, unsigned int index) argument 162 tegra210_bpmp_init(struct tegra_bpmp *bpmp) argument [all...] |
H A D | bpmp-debugfs.c | 10 #include <soc/tegra/bpmp.h> 11 #include <soc/tegra/bpmp-abi.h> 70 static const char *get_filename(struct tegra_bpmp *bpmp, argument 82 root_path = dentry_path(bpmp->debugfs_mirror, root_path_buf, 107 static int mrq_debug_open(struct tegra_bpmp *bpmp, const char *name, argument 134 err = tegra_bpmp_transfer(bpmp, &msg); 146 static int mrq_debug_close(struct tegra_bpmp *bpmp, u32 fd) argument 168 err = tegra_bpmp_transfer(bpmp, &msg); 177 static int mrq_debug_read(struct tegra_bpmp *bpmp, const char *name, argument 199 err = mrq_debug_open(bpmp, nam 242 mrq_debug_write(struct tegra_bpmp *bpmp, const char *name, uint8_t *data, size_t sz_data) argument 305 struct tegra_bpmp *bpmp = inode->i_private; local 370 struct tegra_bpmp *bpmp = inode->i_private; local 403 bpmp_populate_debugfs_inband(struct tegra_bpmp *bpmp, struct dentry *parent, char *ppath) argument 484 mrq_debugfs_read(struct tegra_bpmp *bpmp, dma_addr_t name, size_t sz_name, dma_addr_t data, size_t sz_data, size_t *nbytes) argument 523 mrq_debugfs_write(struct tegra_bpmp *bpmp, dma_addr_t name, size_t sz_name, dma_addr_t data, size_t sz_data) argument 547 mrq_debugfs_dumpdir(struct tegra_bpmp *bpmp, dma_addr_t addr, size_t size, size_t *nbytes) argument 586 struct tegra_bpmp *bpmp = inode->i_private; local 637 struct tegra_bpmp *bpmp = inode->i_private; local 690 bpmp_populate_dir(struct tegra_bpmp *bpmp, struct seqbuf *seqbuf, struct dentry *parent, u32 depth) argument 742 bpmp_populate_debugfs_shmem(struct tegra_bpmp *bpmp) argument 772 tegra_bpmp_init_debugfs(struct tegra_bpmp *bpmp) argument [all...] |
/linux-master/drivers/reset/tegra/ |
H A D | Makefile | 2 obj-$(CONFIG_RESET_TEGRA_BPMP) += reset-bpmp.o
|
H A D | reset-bpmp.c | 8 #include <soc/tegra/bpmp.h> 9 #include <soc/tegra/bpmp-abi.h> 20 struct tegra_bpmp *bpmp = to_tegra_bpmp(rstc); local 34 err = tegra_bpmp_transfer(bpmp, &msg); 67 int tegra_bpmp_init_resets(struct tegra_bpmp *bpmp) argument 69 bpmp->rstc.ops = &tegra_bpmp_reset_ops; 70 bpmp->rstc.owner = THIS_MODULE; 71 bpmp->rstc.of_node = bpmp->dev->of_node; 72 bpmp [all...] |
/linux-master/drivers/pmdomain/tegra/ |
H A D | Makefile | 2 obj-$(CONFIG_SOC_TEGRA_POWERGATE_BPMP) += powergate-bpmp.o
|
H A D | powergate-bpmp.c | 11 #include <soc/tegra/bpmp.h> 12 #include <soc/tegra/bpmp-abi.h> 21 struct tegra_bpmp *bpmp; member in struct:tegra_powergate 31 static int tegra_bpmp_powergate_set_state(struct tegra_bpmp *bpmp, argument 48 err = tegra_bpmp_transfer(bpmp, &msg); 57 static int tegra_bpmp_powergate_get_state(struct tegra_bpmp *bpmp, argument 78 err = tegra_bpmp_transfer(bpmp, &msg); 87 static int tegra_bpmp_powergate_get_max_id(struct tegra_bpmp *bpmp) argument 106 err = tegra_bpmp_transfer(bpmp, &msg); 115 static char *tegra_bpmp_powergate_get_name(struct tegra_bpmp *bpmp, argument 143 tegra_bpmp_powergate_is_powered(struct tegra_bpmp *bpmp, unsigned int id) argument 152 struct tegra_bpmp *bpmp = powergate->bpmp; local 161 struct tegra_bpmp *bpmp = powergate->bpmp; local 168 tegra_powergate_add(struct tegra_bpmp *bpmp, const struct tegra_powergate_info *info) argument 200 struct tegra_bpmp *bpmp = powergate->bpmp; local 212 tegra_bpmp_probe_powergates(struct tegra_bpmp *bpmp, struct tegra_powergate_info **powergatesp) argument 252 tegra_bpmp_add_powergates(struct tegra_bpmp *bpmp, struct tegra_powergate_info *powergates, unsigned int count) argument 293 tegra_bpmp_remove_powergates(struct tegra_bpmp *bpmp) argument 327 tegra_bpmp_init_powergates(struct tegra_bpmp *bpmp) argument [all...] |
/linux-master/include/soc/tegra/ |
H A D | bpmp.h | 16 #include <soc/tegra/bpmp-abi.h> 53 struct tegra_bpmp *bpmp; member in struct:tegra_bpmp_channel 130 void tegra_bpmp_put(struct tegra_bpmp *bpmp); 131 int tegra_bpmp_transfer_atomic(struct tegra_bpmp *bpmp, 133 int tegra_bpmp_transfer(struct tegra_bpmp *bpmp, 138 int tegra_bpmp_request_mrq(struct tegra_bpmp *bpmp, unsigned int mrq, 140 void tegra_bpmp_free_mrq(struct tegra_bpmp *bpmp, unsigned int mrq, 142 bool tegra_bpmp_mrq_is_supported(struct tegra_bpmp *bpmp, unsigned int mrq); 148 static inline void tegra_bpmp_put(struct tegra_bpmp *bpmp) argument 151 static inline int tegra_bpmp_transfer_atomic(struct tegra_bpmp *bpmp, argument 156 tegra_bpmp_transfer(struct tegra_bpmp *bpmp, struct tegra_bpmp_message *msg) argument 167 tegra_bpmp_request_mrq(struct tegra_bpmp *bpmp, unsigned int mrq, tegra_bpmp_mrq_handler_t handler, void *data) argument 174 tegra_bpmp_free_mrq(struct tegra_bpmp *bpmp, unsigned int mrq, void *data) argument 179 tegra_bpmp_mrq_is_supported(struct tegra_bpmp *bpmp, unsigned int mrq) argument 191 tegra_bpmp_init_clocks(struct tegra_bpmp *bpmp) argument 200 tegra_bpmp_init_resets(struct tegra_bpmp *bpmp) argument 209 tegra_bpmp_init_powergates(struct tegra_bpmp *bpmp) argument 218 tegra_bpmp_init_debugfs(struct tegra_bpmp *bpmp) argument [all...] |
H A D | mc.h | 202 struct tegra_bpmp *bpmp; member in struct:tegra_mc
|
/linux-master/drivers/clk/tegra/ |
H A D | clk-bpmp.c | 11 #include <soc/tegra/bpmp.h> 12 #include <soc/tegra/bpmp-abi.h> 31 struct tegra_bpmp *bpmp; member in struct:tegra_bpmp_clk 59 static int tegra_bpmp_clk_transfer(struct tegra_bpmp *bpmp, argument 86 err = tegra_bpmp_transfer(bpmp, &msg); 104 return tegra_bpmp_clk_transfer(clk->bpmp, &msg); 117 err = tegra_bpmp_clk_transfer(clk->bpmp, &msg); 119 dev_err(clk->bpmp->dev, "failed to disable clock %s: %d\n", 136 err = tegra_bpmp_clk_transfer(clk->bpmp, &msg); 160 err = tegra_bpmp_clk_transfer(clk->bpmp, 331 tegra_bpmp_clk_get_max_id(struct tegra_bpmp *bpmp) argument 352 tegra_bpmp_clk_get_info(struct tegra_bpmp *bpmp, unsigned int id, struct tegra_bpmp_clk_info *info) argument 381 tegra_bpmp_clk_info_dump(struct tegra_bpmp *bpmp, const char *level, const struct tegra_bpmp_clk_info *info) argument 421 tegra_bpmp_probe_clocks(struct tegra_bpmp *bpmp, struct tegra_bpmp_clk_info **clocksp) argument 502 tegra_bpmp_clk_register(struct tegra_bpmp *bpmp, const struct tegra_bpmp_clk_info *info, const struct tegra_bpmp_clk_info *clocks, unsigned int num_clocks) argument 593 tegra_bpmp_register_clocks_one(struct tegra_bpmp *bpmp, struct tegra_bpmp_clk_info *infos, unsigned int i, unsigned int count) argument 630 tegra_bpmp_register_clocks(struct tegra_bpmp *bpmp, struct tegra_bpmp_clk_info *infos, unsigned int count) argument 649 tegra_bpmp_unregister_clocks(struct tegra_bpmp *bpmp) argument 661 struct tegra_bpmp *bpmp = data; local 676 tegra_bpmp_init_clocks(struct tegra_bpmp *bpmp) argument [all...] |
H A D | Makefile | 31 obj-$(CONFIG_CLK_TEGRA_BPMP) += clk-bpmp.o
|
/linux-master/drivers/thermal/tegra/ |
H A D | tegra-bpmp-thermal.c | 16 #include <soc/tegra/bpmp.h> 17 #include <soc/tegra/bpmp-abi.h> 28 struct tegra_bpmp *bpmp; member in struct:tegra_bpmp_thermal 52 err = tegra_bpmp_transfer(zone->tegra->bpmp, &msg); 91 err = tegra_bpmp_transfer(zone->tegra->bpmp, &msg); 141 static int tegra_bpmp_thermal_get_num_zones(struct tegra_bpmp *bpmp, argument 159 err = tegra_bpmp_transfer(bpmp, &msg); 170 static int tegra_bpmp_thermal_trips_supported(struct tegra_bpmp *bpmp, bool *supported) argument 188 err = tegra_bpmp_transfer(bpmp, &msg); 214 struct tegra_bpmp *bpmp local [all...] |
H A D | Makefile | 3 obj-$(CONFIG_TEGRA_BPMP_THERMAL) += tegra-bpmp-thermal.o
|
/linux-master/drivers/cpufreq/ |
H A D | tegra186-cpufreq.c | 12 #include <soc/tegra/bpmp.h> 13 #include <soc/tegra/bpmp-abi.h> 130 struct platform_device *pdev, struct tegra_bpmp *bpmp, 141 virt = dma_alloc_coherent(bpmp->dev, sizeof(*data), &phys, 157 err = tegra_bpmp_transfer(bpmp, &msg); 213 dma_free_coherent(bpmp->dev, sizeof(*data), virt, phys); 221 struct tegra_bpmp *bpmp; local 232 bpmp = tegra_bpmp_get(&pdev->dev); 233 if (IS_ERR(bpmp)) 234 return PTR_ERR(bpmp); 129 init_vhint_table( struct platform_device *pdev, struct tegra_bpmp *bpmp, struct tegra186_cpufreq_cluster *cluster, unsigned int cluster_id) argument [all...] |
H A D | tegra194-cpufreq.c | 18 #include <soc/tegra/bpmp.h> 19 #include <soc/tegra/bpmp-abi.h> 617 tegra_cpufreq_bpmp_read_lut(struct platform_device *pdev, struct tegra_bpmp *bpmp, argument 638 err = tegra_bpmp_transfer(bpmp, &msg); 714 struct tegra_bpmp *bpmp; local 752 bpmp = tegra_bpmp_get(&pdev->dev); 753 if (IS_ERR(bpmp)) 754 return PTR_ERR(bpmp); 764 data->bpmp_luts[i] = tegra_cpufreq_bpmp_read_lut(pdev, bpmp, i); 799 tegra_bpmp_put(bpmp); [all...] |
/linux-master/drivers/memory/tegra/ |
H A D | tegra186-emc.c | 13 #include <soc/tegra/bpmp.h> 22 struct tegra_bpmp *bpmp; member in struct:tegra186_emc 172 err = tegra_bpmp_transfer(emc->bpmp, &msg); 328 emc->bpmp = tegra_bpmp_get(&pdev->dev); 329 if (IS_ERR(emc->bpmp)) 330 return dev_err_probe(&pdev->dev, PTR_ERR(emc->bpmp), "failed to get BPMP\n"); 342 if (tegra_bpmp_mrq_is_supported(emc->bpmp, MRQ_EMC_DVFS_LATENCY)) { 349 if (tegra_bpmp_mrq_is_supported(emc->bpmp, MRQ_BWMGR_INT)) { 355 * DT node in the mc->bpmp and use it in MC's icc_set hook. 357 mc->bpmp [all...] |
H A D | tegra234.c | 12 #include <soc/tegra/bpmp.h> 1056 if (!mc->bpmp) { 1083 ret = tegra_bpmp_transfer(mc->bpmp, &msg);
|
/linux-master/drivers/i2c/busses/ |
H A D | i2c-tegra-bpmp.c | 3 * drivers/i2c/busses/i2c-tegra-bpmp.c 19 #include <soc/tegra/bpmp-abi.h> 20 #include <soc/tegra/bpmp.h> 32 struct tegra_bpmp *bpmp; member in struct:tegra_bpmp_i2c 193 err = tegra_bpmp_transfer_atomic(i2c->bpmp, &msg); 195 err = tegra_bpmp_transfer(i2c->bpmp, &msg); 295 i2c->bpmp = dev_get_drvdata(pdev->dev.parent); 296 if (!i2c->bpmp) 299 err = of_property_read_u32(pdev->dev.of_node, "nvidia,bpmp-bus-id", 327 { .compatible = "nvidia,tegra186-bpmp [all...] |
H A D | Makefile | 117 obj-$(CONFIG_I2C_TEGRA_BPMP) += i2c-tegra-bpmp.o
|
/linux-master/drivers/pci/controller/dwc/ |
H A D | pcie-tegra194.c | 36 #include <soc/tegra/bpmp.h> 37 #include <soc/tegra/bpmp-abi.h> 256 struct tegra_bpmp *bpmp; member in struct:tegra_pcie_dw 1139 ret = of_property_read_u32_index(np, "nvidia,bpmp", 1, &pcie->cid); 1241 return tegra_bpmp_transfer(pcie->bpmp, &msg); 1269 return tegra_bpmp_transfer(pcie->bpmp, &msg); 2230 pcie->bpmp = tegra_bpmp_get(dev); 2231 if (IS_ERR(pcie->bpmp)) 2232 return PTR_ERR(pcie->bpmp); 2239 tegra_bpmp_put(pcie->bpmp); [all...] |