[External] Re: pinctrl in phosphor-hwmon
Matt Spinler
mspinler at linux.ibm.com
Tue Jan 7 05:51:49 AEDT 2020
On 12/19/2019 2:37 AM, Derek Lin23 wrote:
>
> Hi all:
>
> We’ve met the similar situation, so use this thread to
> follow-up.
>
> We have two fan tachs that share the same PWM, and we have a
> GPIO mux which switches between the two fan tachs.
>
> We would like to setup two different sensors, e.g. fan_a1
> and fan_a2, but use the same GPIO mux to identify the fan_input should
> link to one of the two sensors.
>
> For example, when the mux is high, then fan_a1 gets RPM
> readings from fanx_input, and when the mux is low, then fan_a2 gets
> RPM readings from the same fanx_input.
>
> Please provide some ideas.
>
Could the driver be updated to handle that, so phosphor-hwmon doesn't
have to care?
> Thank you,
>
>
> Derek
>
> *From:*openbmc <openbmc-bounces+dlin23=lenovo.com at lists.ozlabs.org>
> *On Behalf Of *Deng Tyler
> *Sent:* Tuesday, December 17, 2019 8:28 PM
> *To:* Kun Yi <kunyi at google.com>
> *Cc:* OpenBMC Maillist <openbmc at lists.ozlabs.org>; Matt Spinler
> <mspinler at linux.ibm.com>
> *Subject:* [External] Re: pinctrl in phosphor-hwmon
>
> Hi Kun
>
> Thank for your response and that's highly appreciated.
>
> I patch the async read support but it still not working, following is
> my configuration. Anything I missing?
>
> LABEL_fan0=fan1A
> LABEL_fan1=fan1B
> LABEL_fan2=fan2A
> LABEL_fan3=fan2B
> LABEL_fan4=fan3A
> LABEL_fan5=fan3B
> LABEL_fan6=fan4A
> LABEL_fan7=fan4B
> LABEL_fan8=fan5A
> LABEL_fan9=fan5B
> LABEL_fan10=fan6A
> LABEL_fan11=fan6B
> ASYNC_READ_TIMEOUT_fan0 = "3000"
> ASYNC_READ_TIMEOUT_fan1 = "3000"
> ASYNC_READ_TIMEOUT_fan2 = "3000"
> ASYNC_READ_TIMEOUT_fan3 = "3000"
> ASYNC_READ_TIMEOUT_fan4 = "3000"
> ASYNC_READ_TIMEOUT_fan5 = "3000"
> ASYNC_READ_TIMEOUT_fan6 = "3000"
> ASYNC_READ_TIMEOUT_fan7 = "3000"
> ASYNC_READ_TIMEOUT_fan8 = "3000"
> ASYNC_READ_TIMEOUT_fan9 = "3000"
> ASYNC_READ_TIMEOUT_fan10 = "3000"
> ASYNC_READ_TIMEOUT_fan11 = "3000"
>
> INTERVAL=10000000
>
> Tyler
>
> Kun Yi <kunyi at google.com <mailto:kunyi at google.com>> 於2019年12月13日 週五
> 上午5:15寫道:
>
> On Thu, Dec 12, 2019 at 12:34 PM Matt Spinler
> <mspinler at linux.ibm.com <mailto:mspinler at linux.ibm.com>> wrote:
>
>
>
> On 12/11/2019 12:40 AM, Deng Tyler wrote:
> > I added gpio control in my fan driver but I still met some
> problem.
> > While phosphor-hwmon reading fan0_input, the fan tach driver
> change 2
> > gpio pin and sleep 2 seconds to return rpm value for stable.
> There are
> > 12 fan sensors in my platform so the phosphor-hwmon need
> wait 24
> > senconds at least to get rpm. The waiting time cause dbus
> hang while
> > issuing ipmi sensor command. Do you have any suggestions?
>
> I vaguely remember someone else had this problem before, and
> it turned
> out to be a device driver
> problem as the reason it was so slow.
>
> Yea the best test is to read from the kernel sysfs interface and
> post how long it takes. If the device is misbehaving or the
> physical bus (i2c/fantach) is not working properly, the delay
> could easily be O(seconds)
>
>
> Otherwise, the reads could probably be changed to be
> asynchronous, but
> that could be a pretty big
> change to the application.
>
> There is some work-in-progress patch to add async read support.
> The patch works, although the code change is not clean enough.
>
> https://gerrit.openbmc-project.xyz/c/openbmc/phosphor-hwmon/+/24337
>
>
> >
> > Tyler
> >
> > Matt Spinler <mspinler at linux.ibm.com
> <mailto:mspinler at linux.ibm.com> <mailto:mspinler at linux.ibm.com
> <mailto:mspinler at linux.ibm.com>>>
> > 於2019年12月11日 週三 上午12:29寫道:
> >
> >
> >
> > On 12/9/2019 11:08 PM, Deng Tyler wrote:
> > > Hi Matt:
> > > Thank for your response that's really helpful. I
> check the link
> > > and it seems allow a gpio set to high before/after
> reading a
> > > correspond sensor. Is it possible change 2 gpio to
> high/low for
> > > reading a correspond sensor?
> >
> > That isn't possible in the current code, but I don't see
> why someone
> > couldn't add that feature.
> >
> > >
> > > Regards,
> > > Tyler
> > >
> > > Matt Spinler <mspinler at linux.ibm.com
> <mailto:mspinler at linux.ibm.com>
> > <mailto:mspinler at linux.ibm.com
> <mailto:mspinler at linux.ibm.com>>
> <mailto:mspinler at linux.ibm.com <mailto:mspinler at linux.ibm.com>
> > <mailto:mspinler at linux.ibm.com
> <mailto:mspinler at linux.ibm.com>>>>
> > > 於2019年12月9日 週一 下午10:58寫道:
> > >
> > >
> > >
> > > On 12/9/2019 6:15 AM, Deng Tyler wrote:
> > > > Hi all:
> > > > Does phosphor-hwmon support changing gpio
> pin before read
> > > > /sys/class/hwmon/hwmon0/fan*_input
> while monitoring fan
> > sensor?
> > > In my
> > > > platform, fans gpio are connect to pin-mux and I
> need
> > control gpio
> > > > before get fan tach rpm.
> > >
> > > It does have the ability to modify a GPIO
> before/after a
> > reading:
> > >
> >
> https://github.com/openbmc/phosphor-hwmon/blob/master/mainloop.cpp#L447
> > >
> > > configured by some lines in the conf file, like:
> > >
> >
> https://github.com/openbmc/meta-ibm/blob/master/meta-romulus/recipes-phosphor/sensors/phosphor-hwmon/obmc/hwmon/iio-hwmon-battery.conf#L4
> > >
> > > >
> > > > Regards,
> > > > Tyler
> > >
> >
>
>
> --
>
> Regards,
>
> Kun
>
More information about the openbmc
mailing list