slim_rproc 91 drivers/dma/st_fdma.c fchan->fdev->slim_rproc->peri + FDMA_CMD_SET_OFST); slim_rproc 179 drivers/dma/st_fdma.c ret = rproc_boot(fdev->slim_rproc->rproc); slim_rproc 219 drivers/dma/st_fdma.c rproc_shutdown(fdev->slim_rproc->rproc); slim_rproc 289 drivers/dma/st_fdma.c struct rproc *rproc = fchan->fdev->slim_rproc->rproc; slim_rproc 784 drivers/dma/st_fdma.c fdev->slim_rproc = st_slim_rproc_alloc(pdev, fdev->fw_name); slim_rproc 785 drivers/dma/st_fdma.c if (IS_ERR(fdev->slim_rproc)) { slim_rproc 786 drivers/dma/st_fdma.c ret = PTR_ERR(fdev->slim_rproc); slim_rproc 846 drivers/dma/st_fdma.c st_slim_rproc_put(fdev->slim_rproc); slim_rproc 856 drivers/dma/st_fdma.c st_slim_rproc_put(fdev->slim_rproc); slim_rproc 135 drivers/dma/st_fdma.h struct st_slim_rproc *slim_rproc; slim_rproc 167 drivers/dma/st_fdma.h readl((fdev)->slim_rproc->peri + name) slim_rproc 170 drivers/dma/st_fdma.h writel((val), (fdev)->slim_rproc->peri + name) slim_rproc 185 drivers/dma/st_fdma.h readl((fchan)->fdev->slim_rproc->mem[ST_SLIM_DMEM].cpu_addr \ slim_rproc 190 drivers/dma/st_fdma.h writel((val), (fchan)->fdev->slim_rproc->mem[ST_SLIM_DMEM].cpu_addr \ slim_rproc 197 drivers/dma/st_fdma.h writel((val), (fchan)->fdev->slim_rproc->mem[ST_SLIM_DMEM].cpu_addr \ slim_rproc 207 drivers/dma/st_fdma.h readl((fchan)->fdev->slim_rproc->mem[ST_SLIM_DMEM].cpu_addr \ slim_rproc 212 drivers/dma/st_fdma.h writel((val), (fchan)->fdev->slim_rproc->mem[ST_SLIM_DMEM].cpu_addr \ slim_rproc 58 drivers/remoteproc/st_slim_rproc.c static int slim_clk_get(struct st_slim_rproc *slim_rproc, struct device *dev) slim_rproc 63 drivers/remoteproc/st_slim_rproc.c slim_rproc->clks[clk] = of_clk_get(dev->of_node, clk); slim_rproc 64 drivers/remoteproc/st_slim_rproc.c if (IS_ERR(slim_rproc->clks[clk])) { slim_rproc 65 drivers/remoteproc/st_slim_rproc.c err = PTR_ERR(slim_rproc->clks[clk]); slim_rproc 68 drivers/remoteproc/st_slim_rproc.c slim_rproc->clks[clk] = NULL; slim_rproc 77 drivers/remoteproc/st_slim_rproc.c clk_put(slim_rproc->clks[clk]); slim_rproc 82 drivers/remoteproc/st_slim_rproc.c static void slim_clk_disable(struct st_slim_rproc *slim_rproc) slim_rproc 86 drivers/remoteproc/st_slim_rproc.c for (clk = 0; clk < ST_SLIM_MAX_CLK && slim_rproc->clks[clk]; clk++) slim_rproc 87 drivers/remoteproc/st_slim_rproc.c clk_disable_unprepare(slim_rproc->clks[clk]); slim_rproc 90 drivers/remoteproc/st_slim_rproc.c static int slim_clk_enable(struct st_slim_rproc *slim_rproc) slim_rproc 94 drivers/remoteproc/st_slim_rproc.c for (clk = 0; clk < ST_SLIM_MAX_CLK && slim_rproc->clks[clk]; clk++) { slim_rproc 95 drivers/remoteproc/st_slim_rproc.c ret = clk_prepare_enable(slim_rproc->clks[clk]); slim_rproc 104 drivers/remoteproc/st_slim_rproc.c clk_disable_unprepare(slim_rproc->clks[clk]); slim_rproc 115 drivers/remoteproc/st_slim_rproc.c struct st_slim_rproc *slim_rproc = rproc->priv; slim_rproc 121 drivers/remoteproc/st_slim_rproc.c writel(val, slim_rproc->slimcore + SLIM_CLK_GATE_OFST); slim_rproc 124 drivers/remoteproc/st_slim_rproc.c writel(SLIM_STBUS_SYNC_DIS, slim_rproc->peri + SLIM_STBUS_SYNC_OFST); slim_rproc 128 drivers/remoteproc/st_slim_rproc.c slim_rproc->slimcore + SLIM_CLK_GATE_OFST); slim_rproc 131 drivers/remoteproc/st_slim_rproc.c writel(~0U, slim_rproc->peri + SLIM_INT_CLR_OFST); slim_rproc 132 drivers/remoteproc/st_slim_rproc.c writel(~0U, slim_rproc->peri + SLIM_CMD_CLR_OFST); slim_rproc 135 drivers/remoteproc/st_slim_rproc.c writel(~0U, slim_rproc->peri + SLIM_INT_MASK_OFST); slim_rproc 136 drivers/remoteproc/st_slim_rproc.c writel(~0U, slim_rproc->peri + SLIM_CMD_MASK_OFST); slim_rproc 139 drivers/remoteproc/st_slim_rproc.c writel(SLIM_EN_RUN, slim_rproc->slimcore + SLIM_EN_OFST); slim_rproc 141 drivers/remoteproc/st_slim_rproc.c hw_id = readl_relaxed(slim_rproc->slimcore + SLIM_ID_OFST); slim_rproc 142 drivers/remoteproc/st_slim_rproc.c hw_ver = readl_relaxed(slim_rproc->slimcore + SLIM_VER_OFST); slim_rproc 144 drivers/remoteproc/st_slim_rproc.c fw_rev = readl(slim_rproc->mem[ST_SLIM_DMEM].cpu_addr + slim_rproc 156 drivers/remoteproc/st_slim_rproc.c struct st_slim_rproc *slim_rproc = rproc->priv; slim_rproc 160 drivers/remoteproc/st_slim_rproc.c writel(0UL, slim_rproc->peri + SLIM_INT_MASK_OFST); slim_rproc 161 drivers/remoteproc/st_slim_rproc.c writel(0UL, slim_rproc->peri + SLIM_CMD_MASK_OFST); slim_rproc 164 drivers/remoteproc/st_slim_rproc.c writel(SLIM_CLK_GATE_DIS, slim_rproc->slimcore + SLIM_CLK_GATE_OFST); slim_rproc 166 drivers/remoteproc/st_slim_rproc.c writel(!SLIM_EN_RUN, slim_rproc->slimcore + SLIM_EN_OFST); slim_rproc 168 drivers/remoteproc/st_slim_rproc.c val = readl(slim_rproc->slimcore + SLIM_EN_OFST); slim_rproc 179 drivers/remoteproc/st_slim_rproc.c struct st_slim_rproc *slim_rproc = rproc->priv; slim_rproc 184 drivers/remoteproc/st_slim_rproc.c if (da != slim_rproc->mem[i].bus_addr) slim_rproc 187 drivers/remoteproc/st_slim_rproc.c if (len <= slim_rproc->mem[i].size) { slim_rproc 189 drivers/remoteproc/st_slim_rproc.c va = (__force void *)slim_rproc->mem[i].cpu_addr; slim_rproc 226 drivers/remoteproc/st_slim_rproc.c struct st_slim_rproc *slim_rproc; slim_rproc 239 drivers/remoteproc/st_slim_rproc.c fw_name, sizeof(*slim_rproc)); slim_rproc 245 drivers/remoteproc/st_slim_rproc.c slim_rproc = rproc->priv; slim_rproc 246 drivers/remoteproc/st_slim_rproc.c slim_rproc->rproc = rproc; slim_rproc 253 drivers/remoteproc/st_slim_rproc.c slim_rproc->mem[i].cpu_addr = devm_ioremap_resource(dev, res); slim_rproc 254 drivers/remoteproc/st_slim_rproc.c if (IS_ERR(slim_rproc->mem[i].cpu_addr)) { slim_rproc 256 drivers/remoteproc/st_slim_rproc.c err = PTR_ERR(slim_rproc->mem[i].cpu_addr); slim_rproc 259 drivers/remoteproc/st_slim_rproc.c slim_rproc->mem[i].bus_addr = res->start; slim_rproc 260 drivers/remoteproc/st_slim_rproc.c slim_rproc->mem[i].size = resource_size(res); slim_rproc 264 drivers/remoteproc/st_slim_rproc.c slim_rproc->slimcore = devm_ioremap_resource(dev, res); slim_rproc 265 drivers/remoteproc/st_slim_rproc.c if (IS_ERR(slim_rproc->slimcore)) { slim_rproc 267 drivers/remoteproc/st_slim_rproc.c err = PTR_ERR(slim_rproc->slimcore); slim_rproc 272 drivers/remoteproc/st_slim_rproc.c slim_rproc->peri = devm_ioremap_resource(dev, res); slim_rproc 273 drivers/remoteproc/st_slim_rproc.c if (IS_ERR(slim_rproc->peri)) { slim_rproc 275 drivers/remoteproc/st_slim_rproc.c err = PTR_ERR(slim_rproc->peri); slim_rproc 279 drivers/remoteproc/st_slim_rproc.c err = slim_clk_get(slim_rproc, dev); slim_rproc 283 drivers/remoteproc/st_slim_rproc.c err = slim_clk_enable(slim_rproc); slim_rproc 296 drivers/remoteproc/st_slim_rproc.c return slim_rproc; slim_rproc 299 drivers/remoteproc/st_slim_rproc.c slim_clk_disable(slim_rproc); slim_rproc 301 drivers/remoteproc/st_slim_rproc.c for (i = 0; i < ST_SLIM_MAX_CLK && slim_rproc->clks[i]; i++) slim_rproc 302 drivers/remoteproc/st_slim_rproc.c clk_put(slim_rproc->clks[i]); slim_rproc 316 drivers/remoteproc/st_slim_rproc.c void st_slim_rproc_put(struct st_slim_rproc *slim_rproc) slim_rproc 320 drivers/remoteproc/st_slim_rproc.c if (!slim_rproc) slim_rproc 323 drivers/remoteproc/st_slim_rproc.c slim_clk_disable(slim_rproc); slim_rproc 325 drivers/remoteproc/st_slim_rproc.c for (clk = 0; clk < ST_SLIM_MAX_CLK && slim_rproc->clks[clk]; clk++) slim_rproc 326 drivers/remoteproc/st_slim_rproc.c clk_put(slim_rproc->clks[clk]); slim_rproc 328 drivers/remoteproc/st_slim_rproc.c rproc_del(slim_rproc->rproc); slim_rproc 329 drivers/remoteproc/st_slim_rproc.c rproc_free(slim_rproc->rproc); slim_rproc 52 include/linux/remoteproc/st_slim_rproc.h void st_slim_rproc_put(struct st_slim_rproc *slim_rproc);