Re: [PATCH V2] spmi: pmic-arb: Enforce the ownership check optionally

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




On 08/25, Shawn Guo wrote:
> On Thu, Aug 24, 2017 at 11:37:01AM -0700, Stephen Boyd wrote:
> > On 08/24, Shawn Guo wrote:
> > > On Tue, Aug 22, 2017 at 01:31:32PM -0700, Stephen Boyd wrote:
> > > > Also, I see that on v4.13-rc series the read/write checks are
> > > > causing the led driver to fail in a different way:
> > > > 
> > > >     spmi spmi-0: error: impermissible write to peripheral sid:0 addr:0xc040
> > > >     qcom-spmi-gpio 200f000.spmi:pm8916@0:gpios@c000: write 0x40 failed
> > > >     leds-gpio soc:leds: Error applying setting, reverse things back
> > > >     spmi spmi-0: error: impermissible write to peripheral sid:0 addr:0xc041
> > > >     qcom-spmi-gpio 200f000.spmi:pm8916@0:gpios@c000: write 0x41 failed
> > > >     leds-gpio: probe of soc:leds failed with error -1 
> > > > 
> > > > Are you seeing similar behavior?
> > > 
> > > Yes.  I forgot to mention that, and leds-gpio failure is gone after
> > > applying Kiran's patch below.
> > > 
> > > spmi: pmic-arb: remove the read/write access checks
> > > 
> > 
> > Sure. Removing the checks will silence the warnings, but it still
> > means that we're attempting to configure GPIOs that we shouldn't
> > be configuring.
> 
> The driver is attempting to configure the GPIOs that device tree tells
> to.
> 
> 	led@3 {                        
> 		label = "apq8016-sbc:green:user3";
> 		gpios = <&pm8916_gpios 1 GPIO_ACTIVE_HIGH>;
> 		linux,default-trigger = "mmc1";
> 		default-state = "off";         
> 	};
> 
> Are you saying, in case of user3 led above, device tree shouldn't use
> GPIO <&pm8916_gpios 1> there at all?

Right. Does the GPIO work? If so, it sounds like the read/write
access checks in spmi pmic arb don't work properly.

> 
> > Is there some sort of default configuration that
> > gets applied to all pins by default?
> 
> I do not quite understand what you are asking and how that is related to
> the thing we discuss here.  But my understanding is that spmi_arb
> read/write access is used not only by pinctrl API to set up pinmux for
> GPIO function, but also by GPIO API to actually drive the GPIO.
> 

Ah I got confused because I thought we numbered GPIO pins from 0,
but on the PMIC we number from 1. I see that base = -1 assignment
now. I thought that all pins on the pmic were being configured
somewhere because I didn't see a gpio 0 usage in DT.

-- 
Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum,
a Linux Foundation Collaborative Project
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]


  Powered by Linux