• Christophe Ricard's avatar
    nfc: st21nfca: i2c: Change ST21NFCA_GPIO_NAME_RESET to match DT · 2a196975
    Christophe Ricard authored
    Since
    commit 10cf4899 ("gpiolib: tighten up ACPI legacy gpio lookups")
    
    If _DSD properties are available in an ACPI node, we are not
    allowed to fallback to _CRS data to retrieve gpio properties.
    This was causing us to fail if uicc-present and/or ese-present
    are defined.
    
    To be consistent with devicetree change ST_NCI_GPIO_NAME_RESET
    content to reset so that acpi_find_gpio in drivers/gpio/gpiolib.c
    will look for reset-gpios. In the mean time the ACPI table needs
    to be fixed as follow:
    
    Device (NFC1)
    {
        Name (_ADR, Zero)  // _ADR: Address
        Name (_HID, "SMO2100")  // _HID: Hardware ID
        Name (_CID, "SMO2100")  // _CID: Compatible ID
        Name (_DDN, "SMO NFC")  // _DDN: DOS Device Name
        Name (_UID, One)  // _UID: Unique ID
        Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
        {
            Name (SBUF, ResourceTemplate ()
            {
                 I2cSerialBus (0x0008, ControllerInitiated, 400000,
                               AddressingMode7Bit, "\\_SB.I2C7",
                               0x00, ResourceConsumer, ,)
                 GpioInt (Edge, ActiveHigh, ExclusiveAndWake, PullNone, 0x0000,
                          "\\_SB.GPO2", 0x00, ResourceConsumer, ,)
                 {   // Pin list
                     0x0001
                 }
                 GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
                         "\\_SB.GPO2", 0x00, ResourceConsumer, ,)
                 {   // Pin list
                     0x0002,
                 }
            })
            Name (_DSD, Package (0x02)
            {
                 ToUUID ("daffd814-6eba-4d8c-8a91-bc9bbf4aa301") /* Device Properties for _DSD */,
                 Package (0x03)
                 {
                     Package (0x02) { "uicc-present", 1 },
                     Package (0x02) { "ese-present", 1 },
                     Package (0x02) { "enable-gpios", Package(0x04) { ^NFC1, 1, 0, 0} },
                 }
            })
            Return (SBUF) /* \_SB_.I2C7.NFC1._CRS.SBUF */
        }
        Method (_STA, 0, NotSerialized)  // _STA: Status
        {
            Return (0x0F)
        }
    }
    Signed-off-by: default avatarChristophe Ricard <christophe-h.ricard@st.com>
    Signed-off-by: default avatarSamuel Ortiz <sameo@linux.intel.com>
    2a196975
i2c.c 18.4 KB