On Fri, Feb 5, 2021 at 7:25 PM Calvin Johnson <calvin.johnson@xxxxxxxxxxx> wrote: > On Fri, Jan 22, 2021 at 09:12:52PM +0530, Calvin Johnson wrote: ... > > + rc = fwnode_property_match_string(child, "compatible", "ethernet-phy-ieee802.3-c45"); > With ACPI, I'm facing some problem with fwnode_property_match_string(). It is > unable to detect the compatible string and returns -EPROTO. > > ACPI node for PHY4 is as below: > > Device(PHY4) { > Name (_ADR, 0x4) > Name(_CRS, ResourceTemplate() { > Interrupt(ResourceConsumer, Level, ActiveHigh, Shared) > { > AQR_PHY4_IT > } > }) // end of _CRS for PHY4 > Name (_DSD, Package () { > ToUUID("daffd814-6eba-4d8c-8a91-bc9bbf4aa301"), > Package () { > Package () {"compatible", "ethernet-phy-ieee802.3-c45"} > } > }) > } // end of PHY4 > > What is see is that in acpi_data_get_property(), > propvalue->type = 0x2(ACPI_TYPE_STRING) and type = 0x4(ACPI_TYPE_PACKAGE). > > Any help please? > > fwnode_property_match_string() works fine for DT. Can you show the DT node which works and also input for the )match_string() (i.o.w what exactly you are trying to match with)? -- With Best Regards, Andy Shevchenko