Thread (23 messages) 23 messages, 5 authors, 2018-03-27

Re: [PATCH v3 3/3] pinctrl: qcom: Don't allow protected pins to be requested

From: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Date: 2018-03-21 18:07:17
Also in: linux-arm-kernel, linux-arm-msm, linux-devicetree, lkml

On Wed, 2018-03-21 at 09:58 -0700, Stephen Boyd wrote:
From: Stephen Boyd <redacted>

Some qcom platforms make some GPIOs or pins unavailable for use
by non-secure operating systems, and thus reading or writing the
registers for those pins will cause access control issues and
reset the device. With a DT/ACPI property to describe the set of
pins that are available for use, parse the available pins and set
the irq valid bits for gpiolib to know what to consider 'valid'.
This should avoid any issues with gpiolib. Furthermore, implement
the pinmux_ops::request function so that pinmux can also make
sure to not use pins that are unavailable.

Signed-off-by: Stephen Boyd <redacted>
Signed-off-by: Stephen Boyd <redacted>
Hmm...
+static int msm_pinmux_request(struct pinctrl_dev *pctldev, unsigned
offset)
+{
+	struct msm_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctldev);
+	struct gpio_chip *chip = &pctrl->chip;
+
+	if (gpiochip_line_is_valid(chip, offset))
+		return 0;
+
+	return -EINVAL;
Perhaps traditional pattern

if (!...)
 return -EINVAL;

return 0;

?
+}
 	seq_printf(s, " %dmA", msm_regval_to_drive(drive));
-	seq_printf(s, " %s", pulls[pull]);
+	seq_printf(s, " %s\n", pulls[pull]);
I had commented this once, but you ignored by some reason.

I would rather just move 
 seq_puts(s, "\n");
here.

The rationale behind, besides making diff more neat, is to reduce
possible burden in the future if someone would like to squeeze more data
in between.
+		tmp = kmalloc_array(len, sizeof(tmp[0]), GFP_KERNEL);
sizeof(*tmp) ?
+		if (!tmp)
+			return -ENOMEM;
-- 
Andy Shevchenko [off-list ref]
Intel Finland Oy
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help