linux: Fix platform device probe for DT-based PCI

On a DT-base PCI platform, the sysfs path of vga device is like this:

Then the ID_PATH from udev is platform-1a000000.pci-pci-0000:04:00.0 and
the BusID will be pci-0000:04:00.0, which causes Xorg start fail. This
is because config_udev_odev_setup_attribs() use strstr() to search the
first "pci-" in ID_PATH. To fix this, we implement a strrstr() function
and use it to search the last "pci-" in ID_PATH, which can get a correct

Signed-off-by: Huacai Chen <>
4 jobs for master in 5 minutes and 21 seconds (queued for 1 minute and 5 seconds)