mfd: ocelot: add ocelot-serdes capability
Add support for the Ocelot SERDES module to support functionality of all non-internal phy ports. Signed-off-by: Colin Foster <colin.foster@in-advantage.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
672faa7bbf
commit
c21ff0939d
|
@ -45,6 +45,9 @@
|
||||||
#define VSC7512_SIO_CTRL_RES_START 0x710700f8
|
#define VSC7512_SIO_CTRL_RES_START 0x710700f8
|
||||||
#define VSC7512_SIO_CTRL_RES_SIZE 0x00000100
|
#define VSC7512_SIO_CTRL_RES_SIZE 0x00000100
|
||||||
|
|
||||||
|
#define VSC7512_HSIO_RES_START 0x710d0000
|
||||||
|
#define VSC7512_HSIO_RES_SIZE 0x00000128
|
||||||
|
|
||||||
#define VSC7512_ANA_RES_START 0x71880000
|
#define VSC7512_ANA_RES_START 0x71880000
|
||||||
#define VSC7512_ANA_RES_SIZE 0x00010000
|
#define VSC7512_ANA_RES_SIZE 0x00010000
|
||||||
|
|
||||||
|
@ -129,8 +132,13 @@ static const struct resource vsc7512_sgpio_resources[] = {
|
||||||
DEFINE_RES_REG_NAMED(VSC7512_SIO_CTRL_RES_START, VSC7512_SIO_CTRL_RES_SIZE, "gcb_sio"),
|
DEFINE_RES_REG_NAMED(VSC7512_SIO_CTRL_RES_START, VSC7512_SIO_CTRL_RES_SIZE, "gcb_sio"),
|
||||||
};
|
};
|
||||||
|
|
||||||
|
static const struct resource vsc7512_serdes_resources[] = {
|
||||||
|
DEFINE_RES_REG_NAMED(VSC7512_HSIO_RES_START, VSC7512_HSIO_RES_SIZE, "hsio"),
|
||||||
|
};
|
||||||
|
|
||||||
static const struct resource vsc7512_switch_resources[] = {
|
static const struct resource vsc7512_switch_resources[] = {
|
||||||
DEFINE_RES_REG_NAMED(VSC7512_ANA_RES_START, VSC7512_ANA_RES_SIZE, "ana"),
|
DEFINE_RES_REG_NAMED(VSC7512_ANA_RES_START, VSC7512_ANA_RES_SIZE, "ana"),
|
||||||
|
DEFINE_RES_REG_NAMED(VSC7512_HSIO_RES_START, VSC7512_HSIO_RES_SIZE, "hsio"),
|
||||||
DEFINE_RES_REG_NAMED(VSC7512_QS_RES_START, VSC7512_QS_RES_SIZE, "qs"),
|
DEFINE_RES_REG_NAMED(VSC7512_QS_RES_START, VSC7512_QS_RES_SIZE, "qs"),
|
||||||
DEFINE_RES_REG_NAMED(VSC7512_QSYS_RES_START, VSC7512_QSYS_RES_SIZE, "qsys"),
|
DEFINE_RES_REG_NAMED(VSC7512_QSYS_RES_START, VSC7512_QSYS_RES_SIZE, "qsys"),
|
||||||
DEFINE_RES_REG_NAMED(VSC7512_REW_RES_START, VSC7512_REW_RES_SIZE, "rew"),
|
DEFINE_RES_REG_NAMED(VSC7512_REW_RES_START, VSC7512_REW_RES_SIZE, "rew"),
|
||||||
|
@ -176,6 +184,11 @@ static const struct mfd_cell vsc7512_devs[] = {
|
||||||
.use_of_reg = true,
|
.use_of_reg = true,
|
||||||
.num_resources = ARRAY_SIZE(vsc7512_miim1_resources),
|
.num_resources = ARRAY_SIZE(vsc7512_miim1_resources),
|
||||||
.resources = vsc7512_miim1_resources,
|
.resources = vsc7512_miim1_resources,
|
||||||
|
}, {
|
||||||
|
.name = "ocelot-serdes",
|
||||||
|
.of_compatible = "mscc,vsc7514-serdes",
|
||||||
|
.num_resources = ARRAY_SIZE(vsc7512_serdes_resources),
|
||||||
|
.resources = vsc7512_serdes_resources,
|
||||||
}, {
|
}, {
|
||||||
.name = "ocelot-ext-switch",
|
.name = "ocelot-ext-switch",
|
||||||
.of_compatible = "mscc,vsc7512-switch",
|
.of_compatible = "mscc,vsc7512-switch",
|
||||||
|
|
Loading…
Reference in New Issue