>>> + pcie@0,0 { >>> + reg = <0x400000 0 0 0 0>; >>> + #address-cells = <3>; >>> + #size-cells = <2>; >>> + ranges; >>> + device_type = "pci"; >>> + bus-range = <0x40 0x4f>; >>> + >>> + wifi: wifi@0,0 { >> Where is the compatible (again!)? Test your code - you will see your >> binding is a no-op. > > I tried to build kernel with CHECK_DTBS=1. And didn't get any message > like 'compatible' is a required property in wifi node. But when I check > the bindings that do required the compatible... So I will add it next time. > Yep, use different clock name and then test. You should see errors, > right? But there are not, because schema is not applied to this node at all. > > Look how Apple is doing this. > > I have doubts that your code works at all in the first place. If there > is no compatible, how your platform device gets of_node? In file brcm_hw_ids.h and pcie.c has added Device ID and Vendor ID for bus to enumerate the device when board bootup, so I didn't add specific compatible in DTS. And by doing so, it can probe successfully. --- Best Regards Jacobe