Как перейти от phy_device к net_device? - PullRequest
1 голос
/ 17 октября 2019

Я пытаюсь реализовать чтение статистики phy с помощью ethtool из специального драйвера коммутатора. Ethtool не видит структуру phy_driver, которую я объявил в своем драйвере, потому что он просто имеет пустой указатель dev-> phydev в функции __ethtool_get_sset_count. У меня есть указатель phydev, возвращенный из сканирования шины MDIO, полученный по:

mv_switch->phydev = (struct phy_device *)mv_switch->mii_bus->mdio_map[mv_switch->mdio_addr]

, но я не могу понять, как добраться до родительского указателя net_device.

1 Ответ

0 голосов
/ 17 октября 2019

struct phy_device имеет поле с именем attached_dev для этой цели, я думаю ... Доказательство здесь .

Таким образом, можно предположить, что следующееработа для вашего случая использования

struct net_device *dev = mv_switch->phydev->attached_dev;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...