Re: [PATCH 1/2] pinctrl: pinctrl-single: Make sure we do not change bits outside of mask
On Wed, Sep 5, 2012 at 11:01 AM, Peter Ujfalusi peter.ujfal...@ti.com wrote: Signed-off-by: Peter Ujfalusi peter.ujfal...@ti.com Applied with Tony's ACK. Yours, Linus Walleij -- To unsubscribe from this list: send the line unsubscribe linux-omap in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PATCH 1/2] pinctrl: pinctrl-single: Make sure we do not change bits outside of mask
On Thu, Sep 6, 2012 at 8:59 PM, Tony Lindgren t...@atomide.com wrote: * Peter Ujfalusi peter.ujfal...@ti.com [120905 02:02]: Use the pcs-fmask to make sure that the value is not changing (setting) bits in areas where it should not. To avoid situations like this: pmx_dummy: pinmux@4a100040 { compatible = pinctrl-single; reg = 0x4a100040 0x0196; #address-cells = 1; #size-cells = 0; pinctrl-single,register-width = 16; pinctrl-single,function-mask = 0x00ff; }; pmx_dummy { pinctrl-names = default; pinctrl-0 = board_pins; board_pins: pinmux_board_pins { pinctrl-single,pins = 0x6c 0xf0f 0x6e 0x10f 0x70 0x23f 0x72 0xa5f ; }; }; Signed-off-by: Peter Ujfalusi peter.ujfal...@ti.com Thanks this is a valid fix: Acked-by: Tony Lindgren t...@atomide.com Since nothing in v3.6 is using pinctrl-simple yet, it's not a regression right? So can you just group this with the other pinctrl things you are harvesting in the OMAP tree? I was going to push it for the v3.7 cycle otherwise. Yours, Linus Walleij -- To unsubscribe from this list: send the line unsubscribe linux-omap in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PATCH 1/2] pinctrl: pinctrl-single: Make sure we do not change bits outside of mask
* Linus Walleij linus.wall...@linaro.org [120907 14:13]: On Thu, Sep 6, 2012 at 8:59 PM, Tony Lindgren t...@atomide.com wrote: * Peter Ujfalusi peter.ujfal...@ti.com [120905 02:02]: Use the pcs-fmask to make sure that the value is not changing (setting) bits in areas where it should not. To avoid situations like this: pmx_dummy: pinmux@4a100040 { compatible = pinctrl-single; reg = 0x4a100040 0x0196; #address-cells = 1; #size-cells = 0; pinctrl-single,register-width = 16; pinctrl-single,function-mask = 0x00ff; }; pmx_dummy { pinctrl-names = default; pinctrl-0 = board_pins; board_pins: pinmux_board_pins { pinctrl-single,pins = 0x6c 0xf0f 0x6e 0x10f 0x70 0x23f 0x72 0xa5f ; }; }; Signed-off-by: Peter Ujfalusi peter.ujfal...@ti.com Thanks this is a valid fix: Acked-by: Tony Lindgren t...@atomide.com Since nothing in v3.6 is using pinctrl-simple yet, it's not a regression right? Right. So can you just group this with the other pinctrl things you are harvesting in the OMAP tree? I was going to push it for the v3.7 cycle otherwise. You can take this for v3.7, the changes I have are just adding .dts entries to use the driver. The driver related changes are being merged by the related driver lists. Regards, Tony -- To unsubscribe from this list: send the line unsubscribe linux-omap in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PATCH 1/2] pinctrl: pinctrl-single: Make sure we do not change bits outside of mask
* Peter Ujfalusi peter.ujfal...@ti.com [120905 02:02]: Use the pcs-fmask to make sure that the value is not changing (setting) bits in areas where it should not. To avoid situations like this: pmx_dummy: pinmux@4a100040 { compatible = pinctrl-single; reg = 0x4a100040 0x0196; #address-cells = 1; #size-cells = 0; pinctrl-single,register-width = 16; pinctrl-single,function-mask = 0x00ff; }; pmx_dummy { pinctrl-names = default; pinctrl-0 = board_pins; board_pins: pinmux_board_pins { pinctrl-single,pins = 0x6c 0xf0f 0x6e 0x10f 0x70 0x23f 0x72 0xa5f ; }; }; Signed-off-by: Peter Ujfalusi peter.ujfal...@ti.com Thanks this is a valid fix: Acked-by: Tony Lindgren t...@atomide.com --- drivers/pinctrl/pinctrl-single.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/pinctrl/pinctrl-single.c b/drivers/pinctrl/pinctrl-single.c index 76a4260..3508631 100644 --- a/drivers/pinctrl/pinctrl-single.c +++ b/drivers/pinctrl/pinctrl-single.c @@ -337,7 +337,7 @@ static int pcs_enable(struct pinctrl_dev *pctldev, unsigned fselector, vals = func-vals[i]; val = pcs-read(vals-reg); val = ~pcs-fmask; - val |= vals-val; + val |= (vals-val pcs-fmask); pcs-write(val, vals-reg); } -- 1.7.12 -- To unsubscribe from this list: send the line unsubscribe linux-omap in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html