Symbol: gpi_dev
drivers/dma/qcom/gpi.c
1010
dev_err(gpii->gpi_dev->dev, "skipping processing event because ch @ %s state\n",
drivers/dma/qcom/gpi.c
1021
dev_err(gpii->gpi_dev->dev, "Event without a pending descriptor!\n");
drivers/dma/qcom/gpi.c
1023
dev_err(gpii->gpi_dev->dev,
drivers/dma/qcom/gpi.c
1054
dev_err(gpii->gpi_dev->dev, "Error in Transaction\n");
drivers/dma/qcom/gpi.c
1057
dev_dbg(gpii->gpi_dev->dev, "Transaction Success\n");
drivers/dma/qcom/gpi.c
1061
dev_dbg(gpii->gpi_dev->dev, "Residue %d\n", result.residue);
drivers/dma/qcom/gpi.c
1093
dev_dbg(gpii->gpi_dev->dev,
drivers/dma/qcom/gpi.c
1106
dev_dbg(gpii->gpi_dev->dev, "stale event, not processing\n");
drivers/dma/qcom/gpi.c
1114
dev_dbg(gpii->gpi_dev->dev, "QUP_NOTIF_EV_TYPE\n");
drivers/dma/qcom/gpi.c
1117
dev_dbg(gpii->gpi_dev->dev,
drivers/dma/qcom/gpi.c
1141
dev_err(gpii->gpi_dev->dev, "not processing any events, pm_state:%s\n",
drivers/dma/qcom/gpi.c
1190
dev_err(gpii->gpi_dev->dev, "Error with cmd:%s ret:%d\n",
drivers/dma/qcom/gpi.c
1223
dev_err(gpii->gpi_dev->dev, "Error with cmd:%s ret:%d\n",
drivers/dma/qcom/gpi.c
1243
dev_err(gpii->gpi_dev->dev, "Error with cmd:%s ret:%d\n",
drivers/dma/qcom/gpi.c
1264
dev_err(gpii->gpi_dev->dev, "Error with cmd:%s ret:%d\n",
drivers/dma/qcom/gpi.c
1299
dev_err(gpii->gpi_dev->dev, "error with cmd:%s ret:%d\n",
drivers/dma/qcom/gpi.c
1384
dma_free_coherent(gpii->gpi_dev->dev, ring->alloc_size,
drivers/dma/qcom/gpi.c
1402
dev_dbg(gpii->gpi_dev->dev,
drivers/dma/qcom/gpi.c
1407
ring->pre_aligned = dma_alloc_coherent(gpii->gpi_dev->dev,
drivers/dma/qcom/gpi.c
1411
dev_err(gpii->gpi_dev->dev, "could not alloc size:%zu mem for ring\n",
drivers/dma/qcom/gpi.c
1430
dev_dbg(gpii->gpi_dev->dev,
drivers/dma/qcom/gpi.c
1448
dev_err(gpii->gpi_dev->dev, "Error adding ring element to xfer ring\n");
drivers/dma/qcom/gpi.c
1493
dev_err(gpii->gpi_dev->dev, "Error resetting channel ret:%d\n", ret);
drivers/dma/qcom/gpi.c
1500
dev_err(gpii->gpi_dev->dev, "Error alloc_channel ret:%d\n", ret);
drivers/dma/qcom/gpi.c
1511
dev_err(gpii->gpi_dev->dev, "Error Starting Channel ret:%d\n", ret);
drivers/dma/qcom/gpi.c
1535
dev_dbg(gpii->gpi_dev->dev, "channel is already paused\n");
drivers/dma/qcom/gpi.c
1571
dev_dbg(gpii->gpi_dev->dev, "channel is already active\n");
drivers/dma/qcom/gpi.c
1582
dev_err(gpii->gpi_dev->dev, "Error starting chan, ret:%d\n", ret);
drivers/dma/qcom/gpi.c
1628
struct device *dev = chan->gpii->gpi_dev->dev;
drivers/dma/qcom/gpi.c
1706
struct device *dev = chan->gpii->gpi_dev->dev;
drivers/dma/qcom/gpi.c
1804
struct device *dev = gpii->gpi_dev->dev;
drivers/dma/qcom/gpi.c
1813
dev_err(gpii->gpi_dev->dev, "invalid dma direction: %d\n", direction);
drivers/dma/qcom/gpi.c
1903
const int ev_factor = gpii->gpi_dev->ev_factor;
drivers/dma/qcom/gpi.c
1916
dev_err(gpii->gpi_dev->dev, "protocol did not match protocol %u != %u\n",
drivers/dma/qcom/gpi.c
1935
dev_err(gpii->gpi_dev->dev, "error config. interrupts, ret:%d\n", ret);
drivers/dma/qcom/gpi.c
1942
dev_err(gpii->gpi_dev->dev, "error alloc_ev_chan:%d\n", ret);
drivers/dma/qcom/gpi.c
1950
dev_err(gpii->gpi_dev->dev, "Error allocating chan:%d\n", ret);
drivers/dma/qcom/gpi.c
1959
dev_err(gpii->gpi_dev->dev, "Error start chan:%d\n", ret);
drivers/dma/qcom/gpi.c
2005
dev_err(gpii->gpi_dev->dev, "error resetting channel:%d\n", ret);
drivers/dma/qcom/gpi.c
2078
static int gpi_find_avail_gpii(struct gpi_dev *gpi_dev, u32 seid)
drivers/dma/qcom/gpi.c
2084
for (gpii = 0; gpii < gpi_dev->max_gpii; gpii++) {
drivers/dma/qcom/gpi.c
2085
if (!((1 << gpii) & gpi_dev->gpii_mask))
drivers/dma/qcom/gpi.c
2088
tx_chan = &gpi_dev->gpiis[gpii].gchan[GPI_TX_CHAN];
drivers/dma/qcom/gpi.c
2089
rx_chan = &gpi_dev->gpiis[gpii].gchan[GPI_RX_CHAN];
drivers/dma/qcom/gpi.c
2098
for (gpii = 0; gpii < gpi_dev->max_gpii; gpii++) {
drivers/dma/qcom/gpi.c
2099
if (!((1 << gpii) & gpi_dev->gpii_mask))
drivers/dma/qcom/gpi.c
2102
tx_chan = &gpi_dev->gpiis[gpii].gchan[GPI_TX_CHAN];
drivers/dma/qcom/gpi.c
2103
rx_chan = &gpi_dev->gpiis[gpii].gchan[GPI_RX_CHAN];
drivers/dma/qcom/gpi.c
2122
struct gpi_dev *gpi_dev = (struct gpi_dev *)of_dma->of_dma_data;
drivers/dma/qcom/gpi.c
2128
dev_err(gpi_dev->dev, "gpii require minimum 2 args, client passed:%d args\n",
drivers/dma/qcom/gpi.c
2135
dev_err(gpi_dev->dev, "gpii channel:%d not valid\n", chid);
drivers/dma/qcom/gpi.c
2142
gpii = gpi_find_avail_gpii(gpi_dev, seid);
drivers/dma/qcom/gpi.c
2144
dev_err(gpi_dev->dev, "no available gpii instances\n");
drivers/dma/qcom/gpi.c
2148
gchan = &gpi_dev->gpiis[gpii].gchan[chid];
drivers/dma/qcom/gpi.c
2150
dev_err(gpi_dev->dev, "gpii:%d chid:%d seid:%d already configured\n",
drivers/dma/qcom/gpi.c
2163
struct gpi_dev *gpi_dev;
drivers/dma/qcom/gpi.c
2168
gpi_dev = devm_kzalloc(&pdev->dev, sizeof(*gpi_dev), GFP_KERNEL);
drivers/dma/qcom/gpi.c
2169
if (!gpi_dev)
drivers/dma/qcom/gpi.c
2172
gpi_dev->dev = &pdev->dev;
drivers/dma/qcom/gpi.c
2173
gpi_dev->regs = devm_platform_get_and_ioremap_resource(pdev, 0, &gpi_dev->res);
drivers/dma/qcom/gpi.c
2174
if (IS_ERR(gpi_dev->regs))
drivers/dma/qcom/gpi.c
2175
return PTR_ERR(gpi_dev->regs);
drivers/dma/qcom/gpi.c
2176
gpi_dev->ee_base = gpi_dev->regs;
drivers/dma/qcom/gpi.c
2178
ret = of_property_read_u32(gpi_dev->dev->of_node, "dma-channels",
drivers/dma/qcom/gpi.c
2179
&gpi_dev->max_gpii);
drivers/dma/qcom/gpi.c
2181
dev_err(gpi_dev->dev, "missing 'max-no-gpii' DT node\n");
drivers/dma/qcom/gpi.c
2185
ret = of_property_read_u32(gpi_dev->dev->of_node, "dma-channel-mask",
drivers/dma/qcom/gpi.c
2186
&gpi_dev->gpii_mask);
drivers/dma/qcom/gpi.c
2188
dev_err(gpi_dev->dev, "missing 'gpii-mask' DT node\n");
drivers/dma/qcom/gpi.c
2192
ee_offset = (uintptr_t)device_get_match_data(gpi_dev->dev);
drivers/dma/qcom/gpi.c
2193
gpi_dev->ee_base = gpi_dev->ee_base - ee_offset;
drivers/dma/qcom/gpi.c
2195
gpi_dev->ev_factor = EV_FACTOR;
drivers/dma/qcom/gpi.c
2197
ret = dma_set_mask(gpi_dev->dev, DMA_BIT_MASK(64));
drivers/dma/qcom/gpi.c
2199
dev_err(gpi_dev->dev, "Error setting dma_mask to 64, ret:%d\n", ret);
drivers/dma/qcom/gpi.c
2203
gpi_dev->gpiis = devm_kzalloc(gpi_dev->dev, sizeof(*gpi_dev->gpiis) *
drivers/dma/qcom/gpi.c
2204
gpi_dev->max_gpii, GFP_KERNEL);
drivers/dma/qcom/gpi.c
2205
if (!gpi_dev->gpiis)
drivers/dma/qcom/gpi.c
2209
INIT_LIST_HEAD(&gpi_dev->dma_device.channels);
drivers/dma/qcom/gpi.c
2210
for (i = 0; i < gpi_dev->max_gpii; i++) {
drivers/dma/qcom/gpi.c
2211
struct gpii *gpii = &gpi_dev->gpiis[i];
drivers/dma/qcom/gpi.c
2214
if (!((1 << i) & gpi_dev->gpii_mask))
drivers/dma/qcom/gpi.c
2218
gpii->ev_cntxt_base_reg = gpi_dev->ee_base + GPII_n_EV_CH_k_CNTXT_0_OFFS(i, 0);
drivers/dma/qcom/gpi.c
2219
gpii->ev_cntxt_db_reg = gpi_dev->ee_base + GPII_n_EV_CH_k_DOORBELL_0_OFFS(i, 0);
drivers/dma/qcom/gpi.c
2221
gpii->ev_cmd_reg = gpi_dev->ee_base + GPII_n_EV_CH_CMD_OFFS(i);
drivers/dma/qcom/gpi.c
2222
gpii->ieob_clr_reg = gpi_dev->ee_base + GPII_n_CNTXT_SRC_IEOB_IRQ_CLR_OFFS(i);
drivers/dma/qcom/gpi.c
2235
gchan->ch_cntxt_base_reg = gpi_dev->ee_base +
drivers/dma/qcom/gpi.c
2237
gchan->ch_cntxt_db_reg = gpi_dev->ee_base +
drivers/dma/qcom/gpi.c
2239
gchan->ch_cmd_reg = gpi_dev->ee_base + GPII_n_CH_CMD_OFFS(i);
drivers/dma/qcom/gpi.c
2242
vchan_init(&gchan->vc, &gpi_dev->dma_device);
drivers/dma/qcom/gpi.c
2254
gpii->regs = gpi_dev->ee_base;
drivers/dma/qcom/gpi.c
2255
gpii->gpi_dev = gpi_dev;
drivers/dma/qcom/gpi.c
2258
platform_set_drvdata(pdev, gpi_dev);
drivers/dma/qcom/gpi.c
2261
dma_cap_zero(gpi_dev->dma_device.cap_mask);
drivers/dma/qcom/gpi.c
2262
dma_cap_set(DMA_SLAVE, gpi_dev->dma_device.cap_mask);
drivers/dma/qcom/gpi.c
2265
gpi_dev->dma_device.directions = BIT(DMA_DEV_TO_MEM) | BIT(DMA_MEM_TO_DEV);
drivers/dma/qcom/gpi.c
2266
gpi_dev->dma_device.residue_granularity = DMA_RESIDUE_GRANULARITY_DESCRIPTOR;
drivers/dma/qcom/gpi.c
2267
gpi_dev->dma_device.src_addr_widths = DMA_SLAVE_BUSWIDTH_8_BYTES;
drivers/dma/qcom/gpi.c
2268
gpi_dev->dma_device.dst_addr_widths = DMA_SLAVE_BUSWIDTH_8_BYTES;
drivers/dma/qcom/gpi.c
2269
gpi_dev->dma_device.device_alloc_chan_resources = gpi_alloc_chan_resources;
drivers/dma/qcom/gpi.c
2270
gpi_dev->dma_device.device_free_chan_resources = gpi_free_chan_resources;
drivers/dma/qcom/gpi.c
2271
gpi_dev->dma_device.device_tx_status = dma_cookie_status;
drivers/dma/qcom/gpi.c
2272
gpi_dev->dma_device.device_issue_pending = gpi_issue_pending;
drivers/dma/qcom/gpi.c
2273
gpi_dev->dma_device.device_prep_slave_sg = gpi_prep_slave_sg;
drivers/dma/qcom/gpi.c
2274
gpi_dev->dma_device.device_config = gpi_peripheral_config;
drivers/dma/qcom/gpi.c
2275
gpi_dev->dma_device.device_terminate_all = gpi_terminate_all;
drivers/dma/qcom/gpi.c
2276
gpi_dev->dma_device.dev = gpi_dev->dev;
drivers/dma/qcom/gpi.c
2277
gpi_dev->dma_device.device_pause = gpi_pause;
drivers/dma/qcom/gpi.c
2278
gpi_dev->dma_device.device_resume = gpi_resume;
drivers/dma/qcom/gpi.c
2281
ret = dma_async_device_register(&gpi_dev->dma_device);
drivers/dma/qcom/gpi.c
2283
dev_err(gpi_dev->dev, "async_device_register failed ret:%d", ret);
drivers/dma/qcom/gpi.c
2287
ret = of_dma_controller_register(gpi_dev->dev->of_node,
drivers/dma/qcom/gpi.c
2288
gpi_of_dma_xlate, gpi_dev);
drivers/dma/qcom/gpi.c
2290
dev_err(gpi_dev->dev, "of_dma_controller_reg failed ret:%d", ret);
drivers/dma/qcom/gpi.c
500
struct gpi_dev *gpi_dev;
drivers/dma/qcom/gpi.c
602
devm_free_irq(gpii->gpi_dev->dev, gpii->irq, gpii);
drivers/dma/qcom/gpi.c
617
ret = devm_request_irq(gpii->gpi_dev->dev, gpii->irq,
drivers/dma/qcom/gpi.c
621
dev_err(gpii->gpi_dev->dev, "error request irq:%d ret:%d\n",
drivers/dma/qcom/gpi.c
684
dev_dbg(gpii->gpi_dev->dev,
drivers/dma/qcom/gpi.c
698
dev_err(gpii->gpi_dev->dev, "cmd: %s completion timeout:%u\n",
drivers/dma/qcom/gpi.c
795
dev_dbg(gpii->gpi_dev->dev, "irq_stts:0x%x\n", irq_stts);
drivers/dma/qcom/gpi.c
814
dev_err(gpii->gpi_dev->dev, "invalid error status:0x%x\n", irq_stts);
drivers/dma/qcom/gpi.c
837
dev_err(gpii->gpi_dev->dev, "receive interrupt while in %s state\n",
drivers/dma/qcom/gpi.c
863
dev_dbg(gpii->gpi_dev->dev,
drivers/dma/qcom/gpi.c
884
dev_dbg(gpii->gpi_dev->dev, "setting EV state to %s\n",
drivers/dma/qcom/gpi.c
892
dev_dbg(gpii->gpi_dev->dev, "process CH CTRL interrupts\n");
drivers/dma/qcom/gpi.c
898
dev_err(gpii->gpi_dev->dev, "Unhandled interrupt status:0x%x\n", type);
drivers/dma/qcom/gpi.c
930
dev_err(gpii->gpi_dev->dev, "skipping processing event because ch @ %s state\n",
drivers/dma/qcom/gpi.c
942
dev_dbg(gpii->gpi_dev->dev, "event without a pending descriptor!\n");
drivers/dma/qcom/gpi.c
944
dev_dbg(gpii->gpi_dev->dev,
drivers/dma/qcom/gpi.c
949
dev_dbg(gpii->gpi_dev->dev,