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

Commit 64b8dd29 authored by Wei Yongjun's avatar Wei Yongjun Committed by Dmitry Torokhov
Browse files

Input: atmel_tsadcc - fix error handing with missing platform data



If pdata is NULL, atmel_tsadcc_probe() will release all the resources
and return 0, but we need a error code is returned in this case.
Fix to return -EINVAL and move the check for pdata to the begin
of this function.

Signed-off-by: default avatarWei Yongjun <yongjun_wei@trendmicro.com.cn>
Signed-off-by: default avatarDmitry Torokhov <dmitry.torokhov@gmail.com>
parent fc4f3146
Loading
Loading
Loading
Loading
+4 −4
Original line number Diff line number Diff line
@@ -183,10 +183,13 @@ static int atmel_tsadcc_probe(struct platform_device *pdev)
	struct input_dev	*input_dev;
	struct resource		*res;
	struct at91_tsadcc_data *pdata = pdev->dev.platform_data;
	int		err = 0;
	int		err;
	unsigned int	prsc;
	unsigned int	reg;

	if (!pdata)
		return -EINVAL;

	res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
	if (!res) {
		dev_err(&pdev->dev, "no mmio resource defined.\n");
@@ -265,9 +268,6 @@ static int atmel_tsadcc_probe(struct platform_device *pdev)
	prsc = clk_get_rate(ts_dev->clk);
	dev_info(&pdev->dev, "Master clock is set at: %d Hz\n", prsc);

	if (!pdata)
		goto err_fail;

	if (!pdata->adc_clock)
		pdata->adc_clock = ADC_DEFAULT_CLOCK;