mailbox: zynq: Switch to flexible array to simplify code
Using flexible array is more straight forward. It - saves 1 pointer in the 'zynqmp_ipi_pdata' structure - saves an indirection when using this array - saves some LoC and avoids some always spurious pointer arithmetic Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr> Signed-off-by: Jassi Brar <jaswinder.singh@linaro.org>
This commit is contained in:
parent
ceaa837f96
commit
043f85ce81
|
@ -110,7 +110,7 @@ struct zynqmp_ipi_pdata {
|
|||
unsigned int method;
|
||||
u32 local_id;
|
||||
int num_mboxes;
|
||||
struct zynqmp_ipi_mbox *ipi_mboxes;
|
||||
struct zynqmp_ipi_mbox ipi_mboxes[];
|
||||
};
|
||||
|
||||
static struct device_driver zynqmp_ipi_mbox_driver = {
|
||||
|
@ -635,7 +635,7 @@ static int zynqmp_ipi_probe(struct platform_device *pdev)
|
|||
int num_mboxes, ret = -EINVAL;
|
||||
|
||||
num_mboxes = of_get_child_count(np);
|
||||
pdata = devm_kzalloc(dev, sizeof(*pdata) + (num_mboxes * sizeof(*mbox)),
|
||||
pdata = devm_kzalloc(dev, struct_size(pdata, ipi_mboxes, num_mboxes),
|
||||
GFP_KERNEL);
|
||||
if (!pdata)
|
||||
return -ENOMEM;
|
||||
|
@ -649,8 +649,6 @@ static int zynqmp_ipi_probe(struct platform_device *pdev)
|
|||
}
|
||||
|
||||
pdata->num_mboxes = num_mboxes;
|
||||
pdata->ipi_mboxes = (struct zynqmp_ipi_mbox *)
|
||||
((char *)pdata + sizeof(*pdata));
|
||||
|
||||
mbox = pdata->ipi_mboxes;
|
||||
for_each_available_child_of_node(np, nc) {
|
||||
|
|
Loading…
Reference in New Issue