2014-12-16 14:09 GMT+01:00 Marek Vasut <ma...@denx.de>: > The malloc() calls are unnecessary, just allocate the stuff on stack. > While at it, reorder the code a little, so that only one variable is > used for the text, use snprintf() instead of sprintf() and use %01d > as a formatting string to avoid any possible overflows. > > Signed-off-by: Marek Vasut <ma...@denx.de> > Cc: Igor Grinberg <grinb...@compulab.co.il> > Cc: Nikita Kiryanov <nik...@compulab.co.il> > Cc: Sean Cross <x...@kosagi.com> > Cc: Simon Glass <s...@chromium.org> > Cc: Stefano Babic <sba...@denx.de> > Cc: Tim Harvey <thar...@gateworks.com> > --- > arch/arm/imx-common/i2c-mxv7.c | 24 ++++++++---------------- > 1 file changed, 8 insertions(+), 16 deletions(-) > > diff --git a/arch/arm/imx-common/i2c-mxv7.c b/arch/arm/imx-common/i2c-mxv7.c > index 34f5387..1a632e7 100644 > --- a/arch/arm/imx-common/i2c-mxv7.c > +++ b/arch/arm/imx-common/i2c-mxv7.c > @@ -73,26 +73,21 @@ static void * const i2c_bases[] = { > int setup_i2c(unsigned i2c_index, int speed, int slave_addr, > struct i2c_pads_info *p) > { > - char *name1, *name2; > + char name[9]; > int ret; > > if (i2c_index >= ARRAY_SIZE(i2c_bases)) > return -EINVAL; > > - name1 = malloc(9); > - name2 = malloc(9); > - if (!name1 || !name2) > - return -ENOMEM; > - > - sprintf(name1, "i2c_sda%d", i2c_index); > - sprintf(name2, "i2c_scl%d", i2c_index); > - ret = gpio_request(p->sda.gp, name1); > + snprintf(name, sizeof(name), "i2c_sda%01d", i2c_index); > + ret = gpio_request(p->sda.gp, name); > if (ret) > - goto err_req1; > + return ret; > > - ret = gpio_request(p->scl.gp, name2); > + snprintf(name, sizeof(name), "i2c_scl%01d", i2c_index); > + ret = gpio_request(p->scl.gp, name); > if (ret) > - goto err_req2; > + goto err_req; > > /* Enable i2c clock */ > ret = enable_i2c_clk(1, i2c_index); > @@ -112,11 +107,8 @@ int setup_i2c(unsigned i2c_index, int speed, int > slave_addr, > err_idle: > err_clk: > gpio_free(p->scl.gp); > -err_req2: > +err_req: > gpio_free(p->sda.gp); > -err_req1: > - free(name1); > - free(name2); > > return ret; > } > -- > 2.1.3 >
Reviewed-by: Christian Gmeiner <christian.gmei...@gmail.com> _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot