Re: [PATCH v6 05/22] soc: qcom: apr: Add GPR support
flat view
From: Srinivas Kandagatla <hidden>
Date: 2021-09-16 15:02:12
Also in:
alsa-devel
Thanks Pierre, On 15/09/2021 16:47, Pierre-Louis Bossart wrote:
quoted
+gpr_port_t *gpr_alloc_port(struct apr_device *gdev, struct device *dev, + gpr_port_cb cb, void *priv) +{ + struct packet_router *pr = dev_get_drvdata(gdev->dev.parent); + gpr_port_t *port; + struct pkt_router_svc *svc; + int id; + + port = kzalloc(sizeof(*port), GFP_KERNEL); + if (!port) + return ERR_PTR(-ENOMEM); + + svc = port; + svc->callback = cb; + svc->pr = pr; + svc->priv = priv; + svc->dev = dev; + spin_lock_init(&svc->lock); + + spin_lock(&pr->svcs_lock); + id = idr_alloc_cyclic(&pr->svcs_idr, svc, GPR_DYNAMIC_PORT_START, + GPR_DYNAMIC_PORT_END, GFP_ATOMIC); + if (id < 0) { + dev_err(dev, "Unable to allocate dynamic GPR src port\n"); + kfree(port); + spin_unlock(&pr->svcs_lock); + return ERR_PTR(-ENOMEM); + } + + svc->id = id; + spin_unlock(&pr->svcs_lock); + + dev_info(dev, "Adding GPR src port (%x)\n", svc->id);nit-pick: isn't this a bit verbose?
Yes, Its now removed.
quoted
+ + return port; +} +EXPORT_SYMBOL_GPL(gpr_alloc_port);quoted
+struct gpr_pkt { + struct gpr_hdr hdr; + uint32_t payload[0]; +};looks like a zero-length array?
looks like I missed this one, its fixed now. --srini
should this be
struct gpr_pkt {
struct gpr_hdr hdr;
uint32_t payload[];
};
?