Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 71e19c5e authored by Alexandre Belloni's avatar Alexandre Belloni
Browse files

rtc: ds1511: put ds1511_nvmem_cfg on the stack



Move ds1511_nvmem_cfg to the stack of ds1511_rtc_probe. This results in a
very small code size reduction and make it safer on systems with two
similar RTCs:

   text	   data	    bss	    dec	    hex	filename
   2128	    164	      4	   2296	    8f8	drivers/rtc/rtc-ds1511.o.before
   2175	    100	      4	   2279	    8e7	drivers/rtc/rtc-ds1511.o.after

Signed-off-by: default avatarAlexandre Belloni <alexandre.belloni@bootlin.com>
parent 16fef391
Loading
Loading
Loading
Loading
+9 −10
Original line number Diff line number Diff line
@@ -422,21 +422,21 @@ static int ds1511_nvram_write(void *priv, unsigned int pos, void *buf,
	return 0;
}

static struct nvmem_config ds1511_nvmem_cfg = {
static int ds1511_rtc_probe(struct platform_device *pdev)
{
	struct resource *res;
	struct rtc_plat_data *pdata;
	int ret = 0;
	struct nvmem_config ds1511_nvmem_cfg = {
		.name = "ds1511_nvram",
		.word_size = 1,
		.stride = 1,
		.size = DS1511_RAM_MAX,
		.reg_read = ds1511_nvram_read,
		.reg_write = ds1511_nvram_write,
		.priv = &pdev->dev,
	};

static int ds1511_rtc_probe(struct platform_device *pdev)
{
	struct resource *res;
	struct rtc_plat_data *pdata;
	int ret = 0;

	pdata = devm_kzalloc(&pdev->dev, sizeof(*pdata), GFP_KERNEL);
	if (!pdata)
		return -ENOMEM;
@@ -478,7 +478,6 @@ static int ds1511_rtc_probe(struct platform_device *pdev)

	pdata->rtc->ops = &ds1511_rtc_ops;

	ds1511_nvmem_cfg.priv = &pdev->dev;
	pdata->rtc->nvram_old_abi = true;

	ret = rtc_register_device(pdata->rtc);