net: phy: at803x: fix PHY ID masks
Ever since its first commit 0ca7111a38
("phy: add AT803x driver") the
PHY ID mask was set to 0xffffffef. It is unclear to me why this mask was
chosen in the first place. Both the AR8031/AR8033 and the AR8035
datasheets mention it is always the given value:
- for AR8031/AR8033 its 0x004d/0xd074
- for AR8035 its 0x004d/0xd072
Unfortunately, I don't have a datasheet for the AR8030. Therefore, we
leave its PHY ID mask untouched. For the PHYs mentioned before use the
handy PHY_ID_MATCH_EXACT() macro.
I've tried to contact the author of the initial commit, but received no
answer so far.
Cc: Matus Ujhelyi <ujhelyi.m@gmail.com>
Signed-off-by: Michael Walle <michael@walle.cc>
Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
a152b85984
commit
0465d8f830
|
@ -126,7 +126,7 @@
|
||||||
#define ATH8031_PHY_ID 0x004dd074
|
#define ATH8031_PHY_ID 0x004dd074
|
||||||
#define ATH8032_PHY_ID 0x004dd023
|
#define ATH8032_PHY_ID 0x004dd023
|
||||||
#define ATH8035_PHY_ID 0x004dd072
|
#define ATH8035_PHY_ID 0x004dd072
|
||||||
#define AT803X_PHY_ID_MASK 0xffffffef
|
#define AT8030_PHY_ID_MASK 0xffffffef
|
||||||
|
|
||||||
MODULE_DESCRIPTION("Qualcomm Atheros AR803x PHY driver");
|
MODULE_DESCRIPTION("Qualcomm Atheros AR803x PHY driver");
|
||||||
MODULE_AUTHOR("Matus Ujhelyi");
|
MODULE_AUTHOR("Matus Ujhelyi");
|
||||||
|
@ -967,9 +967,8 @@ static int at803x_cable_test_start(struct phy_device *phydev)
|
||||||
static struct phy_driver at803x_driver[] = {
|
static struct phy_driver at803x_driver[] = {
|
||||||
{
|
{
|
||||||
/* Qualcomm Atheros AR8035 */
|
/* Qualcomm Atheros AR8035 */
|
||||||
.phy_id = ATH8035_PHY_ID,
|
PHY_ID_MATCH_EXACT(ATH8035_PHY_ID),
|
||||||
.name = "Qualcomm Atheros AR8035",
|
.name = "Qualcomm Atheros AR8035",
|
||||||
.phy_id_mask = AT803X_PHY_ID_MASK,
|
|
||||||
.flags = PHY_POLL_CABLE_TEST,
|
.flags = PHY_POLL_CABLE_TEST,
|
||||||
.probe = at803x_probe,
|
.probe = at803x_probe,
|
||||||
.remove = at803x_remove,
|
.remove = at803x_remove,
|
||||||
|
@ -991,7 +990,7 @@ static struct phy_driver at803x_driver[] = {
|
||||||
/* Qualcomm Atheros AR8030 */
|
/* Qualcomm Atheros AR8030 */
|
||||||
.phy_id = ATH8030_PHY_ID,
|
.phy_id = ATH8030_PHY_ID,
|
||||||
.name = "Qualcomm Atheros AR8030",
|
.name = "Qualcomm Atheros AR8030",
|
||||||
.phy_id_mask = AT803X_PHY_ID_MASK,
|
.phy_id_mask = AT8030_PHY_ID_MASK,
|
||||||
.probe = at803x_probe,
|
.probe = at803x_probe,
|
||||||
.remove = at803x_remove,
|
.remove = at803x_remove,
|
||||||
.config_init = at803x_config_init,
|
.config_init = at803x_config_init,
|
||||||
|
@ -1005,9 +1004,8 @@ static struct phy_driver at803x_driver[] = {
|
||||||
.config_intr = at803x_config_intr,
|
.config_intr = at803x_config_intr,
|
||||||
}, {
|
}, {
|
||||||
/* Qualcomm Atheros AR8031/AR8033 */
|
/* Qualcomm Atheros AR8031/AR8033 */
|
||||||
.phy_id = ATH8031_PHY_ID,
|
PHY_ID_MATCH_EXACT(ATH8031_PHY_ID),
|
||||||
.name = "Qualcomm Atheros AR8031/AR8033",
|
.name = "Qualcomm Atheros AR8031/AR8033",
|
||||||
.phy_id_mask = AT803X_PHY_ID_MASK,
|
|
||||||
.flags = PHY_POLL_CABLE_TEST,
|
.flags = PHY_POLL_CABLE_TEST,
|
||||||
.probe = at803x_probe,
|
.probe = at803x_probe,
|
||||||
.remove = at803x_remove,
|
.remove = at803x_remove,
|
||||||
|
@ -1055,10 +1053,10 @@ static struct phy_driver at803x_driver[] = {
|
||||||
module_phy_driver(at803x_driver);
|
module_phy_driver(at803x_driver);
|
||||||
|
|
||||||
static struct mdio_device_id __maybe_unused atheros_tbl[] = {
|
static struct mdio_device_id __maybe_unused atheros_tbl[] = {
|
||||||
{ ATH8030_PHY_ID, AT803X_PHY_ID_MASK },
|
{ ATH8030_PHY_ID, AT8030_PHY_ID_MASK },
|
||||||
{ ATH8031_PHY_ID, AT803X_PHY_ID_MASK },
|
{ PHY_ID_MATCH_EXACT(ATH8031_PHY_ID) },
|
||||||
{ PHY_ID_MATCH_EXACT(ATH8032_PHY_ID) },
|
{ PHY_ID_MATCH_EXACT(ATH8032_PHY_ID) },
|
||||||
{ ATH8035_PHY_ID, AT803X_PHY_ID_MASK },
|
{ PHY_ID_MATCH_EXACT(ATH8035_PHY_ID) },
|
||||||
{ PHY_ID_MATCH_EXACT(ATH9331_PHY_ID) },
|
{ PHY_ID_MATCH_EXACT(ATH9331_PHY_ID) },
|
||||||
{ }
|
{ }
|
||||||
};
|
};
|
||||||
|
|
Loading…
Reference in New Issue