Build PHY device tables by using module_device_table macro. The PHY abstractions have been generating their own device tables manually instead of using the module_device_table macro provided by the device_id crate. However, the format of device tables occasionally changes [1] [2], requiring updates to both the device_id crate and the custom format used by the PHY abstractions, which is cumbersome to maintain. [1]: https://lore.kernel.org/lkml/20241119235705.1576946-14-masahiroy@xxxxxxxxxx/ [2]: https://lore.kernel.org/lkml/6e2f70b07a710e761eb68d089d96cee7b27bb2d5.1750511018.git.legion@xxxxxxxxxx/ v2: - Split off index-related parts of RawDeviceId into RawDeviceIdIndex v1: https://lore.kernel.org/lkml/20250623060951.118564-1-fujita.tomonori@xxxxxxxxx/ FUJITA Tomonori (3): rust: device_id: split out index support into a separate trait rust: net::phy represent DeviceId as transparent wrapper over mdio_device_id rust: net::phy Change module_phy_driver macro to use module_device_table macro rust/kernel/auxiliary.rs | 7 ++- rust/kernel/device_id.rs | 80 +++++++++++++++++++++++------- rust/kernel/net/phy.rs | 104 +++++++++++++++++++-------------------- rust/kernel/of.rs | 11 ++++- rust/kernel/pci.rs | 7 ++- 5 files changed, 132 insertions(+), 77 deletions(-) base-commit: 769e324b66b0d92d04f315d0c45a0f72737c7494 -- 2.43.0