mirror of
https://github.com/Fishwaldo/u-boot.git
synced 2025-04-10 16:31:32 +00:00
test: dm_mdio: add a 2nd register to the emulated PHY
This 2nd register is used by the follow-up MDIO MUX test. Signed-off-by: Alex Marginean <alexm.osslist@gmail.com> Reviewed-by: Bin Meng <bmeng.cn@gmail.com> Acked-by: Joe Hershberger <joe.hershberger@ni.com>
This commit is contained in:
parent
20af5adf22
commit
b47edf8069
2 changed files with 12 additions and 7 deletions
|
@ -9,11 +9,11 @@
|
||||||
#include <miiphy.h>
|
#include <miiphy.h>
|
||||||
|
|
||||||
#define SANDBOX_PHY_ADDR 5
|
#define SANDBOX_PHY_ADDR 5
|
||||||
#define SANDBOX_PHY_REG 0
|
#define SANDBOX_PHY_REG_CNT 2
|
||||||
|
|
||||||
struct mdio_sandbox_priv {
|
struct mdio_sandbox_priv {
|
||||||
int enabled;
|
int enabled;
|
||||||
u16 reg;
|
u16 reg[SANDBOX_PHY_REG_CNT];
|
||||||
};
|
};
|
||||||
|
|
||||||
static int mdio_sandbox_read(struct udevice *dev, int addr, int devad, int reg)
|
static int mdio_sandbox_read(struct udevice *dev, int addr, int devad, int reg)
|
||||||
|
@ -27,10 +27,10 @@ static int mdio_sandbox_read(struct udevice *dev, int addr, int devad, int reg)
|
||||||
return -ENODEV;
|
return -ENODEV;
|
||||||
if (devad != MDIO_DEVAD_NONE)
|
if (devad != MDIO_DEVAD_NONE)
|
||||||
return -ENODEV;
|
return -ENODEV;
|
||||||
if (reg != SANDBOX_PHY_REG)
|
if (reg < 0 || reg > SANDBOX_PHY_REG_CNT)
|
||||||
return -ENODEV;
|
return -ENODEV;
|
||||||
|
|
||||||
return priv->reg;
|
return priv->reg[reg];
|
||||||
}
|
}
|
||||||
|
|
||||||
static int mdio_sandbox_write(struct udevice *dev, int addr, int devad, int reg,
|
static int mdio_sandbox_write(struct udevice *dev, int addr, int devad, int reg,
|
||||||
|
@ -45,10 +45,10 @@ static int mdio_sandbox_write(struct udevice *dev, int addr, int devad, int reg,
|
||||||
return -ENODEV;
|
return -ENODEV;
|
||||||
if (devad != MDIO_DEVAD_NONE)
|
if (devad != MDIO_DEVAD_NONE)
|
||||||
return -ENODEV;
|
return -ENODEV;
|
||||||
if (reg != SANDBOX_PHY_REG)
|
if (reg < 0 || reg > SANDBOX_PHY_REG_CNT)
|
||||||
return -ENODEV;
|
return -ENODEV;
|
||||||
|
|
||||||
priv->reg = val;
|
priv->reg[reg] = val;
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
@ -56,8 +56,10 @@ static int mdio_sandbox_write(struct udevice *dev, int addr, int devad, int reg,
|
||||||
static int mdio_sandbox_reset(struct udevice *dev)
|
static int mdio_sandbox_reset(struct udevice *dev)
|
||||||
{
|
{
|
||||||
struct mdio_sandbox_priv *priv = dev_get_priv(dev);
|
struct mdio_sandbox_priv *priv = dev_get_priv(dev);
|
||||||
|
int i;
|
||||||
|
|
||||||
priv->reg = 0;
|
for (i = 0; i < SANDBOX_PHY_REG_CNT; i++)
|
||||||
|
priv->reg[i] = 0;
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
|
@ -13,6 +13,9 @@
|
||||||
|
|
||||||
/* macros copied over from mdio_sandbox.c */
|
/* macros copied over from mdio_sandbox.c */
|
||||||
#define SANDBOX_PHY_ADDR 5
|
#define SANDBOX_PHY_ADDR 5
|
||||||
|
#define SANDBOX_PHY_REG_CNT 2
|
||||||
|
|
||||||
|
/* test using 1st register, 0 */
|
||||||
#define SANDBOX_PHY_REG 0
|
#define SANDBOX_PHY_REG 0
|
||||||
|
|
||||||
#define TEST_REG_VALUE 0xabcd
|
#define TEST_REG_VALUE 0xabcd
|
||||||
|
|
Loading…
Add table
Reference in a new issue