linux-hwmon.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Michal Simek <monstr@seznam.cz>
To: Michal Simek <michal.simek@xilinx.com>,
	Guenter Roeck <linux@roeck-us.net>,
	Robert Hancock <hancock@sedsystems.ca>
Cc: linux-hwmon@vger.kernel.org
Subject: Re: Linux driver for IRPS5401 - status reg not found
Date: Thu, 9 Apr 2020 16:29:55 +0200	[thread overview]
Message-ID: <7a10a855-53a2-0743-be7d-86f6030626ca@seznam.cz> (raw)
In-Reply-To: <b4322641-5918-40c4-a887-dcfa20db1733@xilinx.com>

On 31. 03. 20 14:38, Michal Simek wrote:
> On 30. 03. 20 21:48, Guenter Roeck wrote:
>> On Mon, Mar 30, 2020 at 01:09:56PM -0600, Robert Hancock wrote:
>>> On 2020-03-30 12:48 p.m., Guenter Roeck wrote:
>>>> On 3/30/20 8:42 AM, Robert Hancock wrote:
>>>>> On 2020-03-30 9:24 a.m., Guenter Roeck wrote:
>>>>>> On 3/30/20 4:33 AM, Michal Simek wrote:
>>>>>>> Hi Robert and Guenter,
>>>>>>>
>>>>>>> Xilinx boards are using IRPS5401 chips and I have tried to use your driver.
>>>>>>> I have checked that u-boot can detect that devices and read it.
>>>>>>>
>>>>>>> ZynqMP> i2c probe
>>>>>>> Valid chip addresses: 0C 13 14 20 43 44 74
>>>>>>> ZynqMP> i2c md 13 0 10
>>>>>>> 0000: 00 08 00 08 00 08 00 08 00 08 00 08 00 08 00 08    ................
>>>>>>> ZynqMP> i2c md 14 0 10
>>>>>>> 0000: 00 08 00 08 00 08 00 08 00 08 00 08 00 08 00 08    ................
>>>>>>> ZynqMP> i2c md 43 0 10
>>>>>>> 0000: 00 98 ff ff ff ff ff ff ff ff ff ff ff ff ff ff    ................
>>>>>>> ZynqMP> i2c md 44 0 10
>>>>>>> 0000: 00 8a ff ff ff ff ff ff ff ff ff ff ff ff ff ff    ................
>>>>>>> ZynqMP>
>>>>>>>
>>>>>>> Here is DT fragment which I use (it is under i2c mux)
>>>>>>>
>>>>>>> 185                         irps5401_43: irps5401@43 {
>>>>>>> 186                                 compatible = "infineon,irps5401";
>>>>>>> 187                                 reg = <0x43>; /* pmbus / i2c 0x13 */
>>>>>>
>>>>>> Does that mean the mux is at 0x13 ?
>>>>>
>>>>> These chips have two I2C addresses with two separate interfaces: the standard PMBus-compatible interface at an address between 0x40-0x4f, which the irps5401 driver supports, and another proprietary interface at an address between 0x10-0x1f. The specific addresses in those ranges is configured by the value of a resistor on one of the pins.
>>>>>
>>>>
>>>> Ah, sorry, I didn't get that part earlier. Unfortunately, the datasheet
>>>> doesn't seem to include a description of the proprietary interface
>>>> registers/commands, or maybe I am missing it.
>>>>
>>>> The chip datasheet does talk a lot about various MTP registers.
>>>> Part of that register set is Write_protect_section and
>>>> Read_protect_section. Maybe the PMBus registers are all read
>>>> protected ?
>>>
>>> There is a programming guide and register map on the Infineon site under
>>> "Additional Technical Information" here:
>>>
>>> https://www.infineon.com/cms/en/product/power/dc-dc-converters/integrated-pol-voltage-regulators/irps5401m/
>>>
>> Based on that my best guess would be that either the chips are not at the
>> expected addresses, or that the registers are indeed read protected.
> 
> I am able to detect that devices.
> 
> root@zcu104-debian:/etc/apt# i2cdetect -y -r 3
>      0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f
> 00:          -- -- -- -- -- -- -- -- -- -- -- -- --
> 10: -- -- -- 13 14 -- -- -- -- -- -- -- -- -- -- --
> 20: UU -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
> 30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
> 40: -- -- -- 43 44 -- -- -- -- -- -- -- -- -- -- --
> 50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
> 60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
> 70: -- -- -- -- UU -- -- --
> 
> Also disable/enable rail on 0x44 and see power good led on/off
> 
> root@zcu104-debian:~# i2cset -y 3 0x44 0 3
> root@zcu104-debian:~# i2cset -y 3 0x44 1 0x80 b
> root@zcu104-debian:~# i2cget -y 3 0x44 0x78 b
> 
> I can't read the rest of regs but checking with hw guys what they have
> done with these devices.


Just to let you know issue is with i2c driver. Here is my output for the
record.

irps5401-i2c-3-43
Adapter: i2c-0-mux (chan_id 2)
vin1:         11.56 V  (min =  +9.00 V, crit max = +14.00 V)
vin2:         11.56 V  (min =  +9.00 V, crit max = +14.00 V)
vin3:         11.56 V  (min =  +9.00 V, crit max = +14.00 V)
vin4:             N/A
vin5:          2.52 V  (min =  +0.40 V, crit max =  +4.00 V)  ALARM (CRIT)
vout1:       851.00 mV (crit min =  +0.65 V, min =  +0.68 V)
                       (max =  +1.02 V, crit max =  +1.25 V)
vout2:         1.80 V  (crit min =  +1.55 V, min =  +1.56 V)
                       (max =  +2.16 V, crit max =  +2.20 V)
vout3:         1.20 V  (crit min =  +0.90 V, min =  +0.96 V)
                       (max =  +1.43 V, crit max =  +1.59 V)
vout4:            N/A
vout5:       906.00 mV (crit min =  +0.68 V, min =  +0.79 V)
                       (max =  +1.02 V, crit max =  +1.13 V)
temp1:        +43.0°C  (high = +100.0°C, crit = +120.0°C)
temp2:        +43.0°C  (high = +100.0°C, crit = +120.0°C)
temp3:        +43.0°C  (high = +100.0°C, crit = +120.0°C)
temp4:            N/A
temp5:        +44.0°C  (high = +100.0°C, crit = +120.0°C)
pin1:          1.75 W
pin2:        406.25 mW
pin3:        468.75 mW
pin4:             N/A
pin5:         15.62 mW
pout1:         1.50 W
pout2:       406.25 mW
pout3:       468.75 mW
pout4:            N/A
pout5:        15.62 mW
iin1:        125.00 mA
iin2:         31.00 mA
iin3:         39.00 mA
iin4:             N/A
iout1:         2.00 A  (max = +21.00 A, crit max = +25.00 A)
iout2:       234.00 mA (max =  +2.50 A, crit max =  +3.12 A)
iout3:       390.00 mA (max =  +8.50 A, crit max = +10.25 A)
iout4:            N/A
iout5:         8.00 mA (max =  +0.65 A, crit max =  +0.72 A)

irps5401-i2c-3-44
Adapter: i2c-0-mux (chan_id 2)
vin1:         11.53 V  (min =  +9.00 V, crit max = +14.00 V)
vin2:         11.56 V  (min =  +9.00 V, crit max = +14.00 V)
vin3:         11.41 V  (min =  +9.00 V, crit max = +14.00 V)
vin4:         11.56 V  (min =  +9.00 V, crit max = +14.00 V)
vin5:          2.51 V  (min =  +0.40 V, crit max =  +4.00 V)  ALARM (CRIT)
vout1:         3.30 V  (crit min =  +2.90 V, min =  +2.91 V)
                       (max =  +3.69 V, crit max =  +3.70 V)
vout2:         1.13 V  (crit min =  +0.73 V, min =  +0.90 V)
                       (max =  +1.35 V, crit max =  +1.52 V)
vout3:         5.00 V  (crit min =  +4.60 V, min =  +4.70 V)
                       (max =  +5.20 V, crit max =  +5.40 V)
vout4:       152.00 mV (crit min =  +1.40 V, min =  +1.44 V)
                       (max =  +2.16 V, crit max =  +2.20 V)
vout5:       851.00 mV (crit min =  +0.64 V, min =  +0.75 V)
                       (max =  +0.97 V, crit max =  +1.07 V)
temp1:        +40.0°C  (high = +100.0°C, crit = +120.0°C)
temp2:        +40.0°C  (high = +100.0°C, crit = +120.0°C)
temp3:        +40.0°C  (high = +100.0°C, crit = +120.0°C)
temp4:        +40.0°C  (high = +100.0°C, crit = +120.0°C)
temp5:        +40.0°C  (high = +100.0°C, crit = +120.0°C)
pin1:          2.50 W
pin2:         31.25 mW
pin3:          0.00 W
pin4:          0.00 W
pin5:        187.50 mW
pout1:         2.25 W
pout2:        31.25 mW
pout3:         0.00 W
pout4:        31.25 mW
pout5:        62.50 mW
iin1:        187.00 mA
iin2:          0.00 A
iin3:          0.00 A
iin4:          0.00 A
iout1:       750.00 mA (max = +12.00 A, crit max = +14.00 A)
iout2:        46.00 mA (max =  +1.81 A, crit max =  +2.19 A)
iout3:         0.00 A  (max =  +3.50 A, crit max =  +4.00 A)
iout4:         9.28 A  (max =  +3.81 A, crit max =  +4.81 A)
iout5:        73.00 mA (max =  +0.65 A, crit max =  +0.72 A)



Thanks,
Michal

  reply	other threads:[~2020-04-09 14:42 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-03-30 11:33 Linux driver for IRPS5401 - status reg not found Michal Simek
2020-03-30 15:24 ` Guenter Roeck
2020-03-30 15:42   ` Robert Hancock
2020-03-30 18:48     ` Guenter Roeck
2020-03-30 19:09       ` Robert Hancock
2020-03-30 19:48         ` Guenter Roeck
2020-03-31 12:38           ` Michal Simek
2020-04-09 14:29             ` Michal Simek [this message]
2020-04-09 15:16               ` Guenter Roeck
2020-04-09 15:30                 ` Robert Hancock
2020-04-09 21:23                   ` Guenter Roeck
2020-04-10  7:19                     ` Michal Simek
2020-03-30 15:46   ` Michal Simek
2020-03-30 16:52     ` Guenter Roeck

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=7a10a855-53a2-0743-be7d-86f6030626ca@seznam.cz \
    --to=monstr@seznam.cz \
    --cc=hancock@sedsystems.ca \
    --cc=linux-hwmon@vger.kernel.org \
    --cc=linux@roeck-us.net \
    --cc=michal.simek@xilinx.com \
    --cc=monstr@monstr.eu \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).