Re: Adding I2C devices to the SMBus (PIIX4) via the ACPI SSDT overlay method

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

 



On Mon, Nov 11, 2024 at 03:09:55PM +0300, Konstantin Aladyshev wrote:
> Sorry, I needed some time to recompile my kernel.
> I've verified your patch for the jc42 driver and it works as expected.
> Now the driver correctly connects to the I2C device and the hwmon
> directory created in the sysfs.

Thank you for confirming that! It will be part of v6.13-rc1
(and the respective release).

> Thanks for the help!

You're welcome!

> I've also sent a patchset for the piix4 documentation update as you've
> requested. Please review.

Thanks, I will.

> On Fri, Nov 8, 2024 at 3:47 PM Andy Shevchenko
> <andriy.shevchenko@xxxxxxxxxxxxxxx> wrote:
> > On Fri, Nov 08, 2024 at 02:48:44PM +0300, Konstantin Aladyshev wrote:
> > > Thanks for the help!
> >
> > > $ cat /sys/bus/acpi/devices/device\:25/path
> >
> > These cat:s you made are mostly useless in this case. And you should look for
> > the real device folders in sysfs and firmware_node links there.
> >
> > ...
> >
> > > However I was using the at24 device only as an example.
> > > My real target device is jc42
> > > (https://github.com/torvalds/linux/blob/906bd684e4b1e517dd424a354744c5b0aebef8af/drivers/hwmon/jc42.c#L600).
> >
> > > Does it mean that jc42 driver doesn't support ACPI binding?
> >
> > Kinda. I just sent a patch, please test and provide your Tested-by if it helps.
> >
> > ...
> >
> > > Just in case here is my SSDT:
> > > ```
> > > DefinitionBlock ("jc42.aml", "SSDT", 5, "", "JC42", 1)
> > > {
> > >     External (_SB_.PCI0.SMBS, DeviceObj)
> > >
> > >     Scope (\_SB_.PCI0.SMBS)
> > >     {
> > >         Device (SMB0) {
> > >             Name (_ADR, 0)
> > >         }
> > >         Device (SMB1) {
> > >             Name (_ADR, 1)
> > >         }
> > >         Device (SMB2) {
> > >             Name (_ADR, 2)
> > >         }
> > >     }
> > >
> > >     Scope (\_SB.PCI0.SMBS)
> >
> > While this works, we expect Scope to be under the respective host controller, i.e.
> >
> >      Scope (\_SB.PCI0.SMBS.SMB0)
> >
> > in your case.
> >
> > >     {
> > >         Device (JC42) {
> > >             Name (_HID, "PRP0001")
> > >             Name (_DDN, "JC42 Temperature sensor")
> > >             Name (_CRS, ResourceTemplate () {
> > >                 I2cSerialBusV2 (
> > >                     0x001c,              // I2C Slave Address
> > >                     ControllerInitiated,
> > >                     400000,              // Bus speed
> > >                     AddressingMode7Bit,
> > >                     "\\_SB.PCI0.SMBS.SMB0",   // Link to ACPI I2C host
> > > controller
> > >                     0
> > >                 )
> > >             })
> > >
> > >             Name (_DSD, Package () {
> > >                 ToUUID("daffd814-6eba-4d8c-8a91-bc9bbf4aa301"),
> > >                 Package () {
> > >                     Package () { "compatible", Package() {
> > > "jedec,jc-42.4-temp" } },
> > >                 }
> > >             })
> > >         }
> > >     }
> > > }

-- 
With Best Regards,
Andy Shevchenko






[Index of Archives]     [Linux GPIO]     [Linux SPI]     [Linux Hardward Monitoring]     [LM Sensors]     [Linux USB Devel]     [Linux Media]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux