--- hald/linux/classdev.c.old +++ hald/linux/classdev.c @@ -191,11 +191,16 @@ net_add (const gchar *sysfs_path, const if (media_type == ARPHRD_ETHER) { const char *addr; char wireless_path[HAL_PATH_MAX]; + char wiphy_path[HAL_PATH_MAX]; gboolean is_wireless; struct stat s; snprintf (wireless_path, HAL_PATH_MAX, "%s/wireless", sysfs_path); - if (stat (wireless_path, &s) == 0 && (s.st_mode & S_IFDIR)) { + /* wireless dscape stack e.g. from rt2500pci driver*/ + snprintf (wiphy_path, HAL_PATH_MAX, "%s/wiphy", sysfs_path); + + if ((stat (wireless_path, &s) == 0 && (s.st_mode & S_IFDIR)) || + (stat (wiphy_path, &s) == 0) && (s.st_mode & S_IFDIR)) { hal_device_property_set_string (d, "info.product", "WLAN Interface"); hal_device_property_set_string (d, "info.category", "net.80211"); hal_device_add_capability (d, "net.80211");