Commit 2efaca41 authored by Colin Foster's avatar Colin Foster Committed by Jakub Kicinski

net: mscc: ocelot: expose vsc7514_regmap definition

The VSC7514 target regmap is identical for ones shared with similar
hardware, specifically the VSC7512. Share this resource, and change the
name to match the pattern of other exported resources.
Signed-off-by: default avatarColin Foster <colin.foster@in-advantage.com>
Reviewed-by: default avatarFlorian Fainelli <f.fainelli@gmail.com>
Reviewed-by: default avatarVladimir Oltean <vladimir.oltean@nxp.com>
Tested-by: Vladimir Oltean <vladimir.oltean@nxp.com> # regression
Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
parent b67f5502
...@@ -26,19 +26,6 @@ ...@@ -26,19 +26,6 @@
#define VSC7514_VCAP_POLICER_BASE 128 #define VSC7514_VCAP_POLICER_BASE 128
#define VSC7514_VCAP_POLICER_MAX 191 #define VSC7514_VCAP_POLICER_MAX 191
static const u32 *ocelot_regmap[TARGET_MAX] = {
[ANA] = vsc7514_ana_regmap,
[QS] = vsc7514_qs_regmap,
[QSYS] = vsc7514_qsys_regmap,
[REW] = vsc7514_rew_regmap,
[SYS] = vsc7514_sys_regmap,
[S0] = vsc7514_vcap_regmap,
[S1] = vsc7514_vcap_regmap,
[S2] = vsc7514_vcap_regmap,
[PTP] = vsc7514_ptp_regmap,
[DEV_GMII] = vsc7514_dev_gmii_regmap,
};
static void ocelot_pll5_init(struct ocelot *ocelot) static void ocelot_pll5_init(struct ocelot *ocelot)
{ {
/* Configure PLL5. This will need a proper CCF driver /* Configure PLL5. This will need a proper CCF driver
...@@ -72,7 +59,7 @@ static int ocelot_chip_init(struct ocelot *ocelot, const struct ocelot_ops *ops) ...@@ -72,7 +59,7 @@ static int ocelot_chip_init(struct ocelot *ocelot, const struct ocelot_ops *ops)
{ {
int ret; int ret;
ocelot->map = ocelot_regmap; ocelot->map = vsc7514_regmap;
ocelot->num_mact_rows = 1024; ocelot->num_mact_rows = 1024;
ocelot->ops = ops; ocelot->ops = ops;
......
...@@ -429,6 +429,20 @@ const u32 vsc7514_dev_gmii_regmap[] = { ...@@ -429,6 +429,20 @@ const u32 vsc7514_dev_gmii_regmap[] = {
}; };
EXPORT_SYMBOL(vsc7514_dev_gmii_regmap); EXPORT_SYMBOL(vsc7514_dev_gmii_regmap);
const u32 *vsc7514_regmap[TARGET_MAX] = {
[ANA] = vsc7514_ana_regmap,
[QS] = vsc7514_qs_regmap,
[QSYS] = vsc7514_qsys_regmap,
[REW] = vsc7514_rew_regmap,
[SYS] = vsc7514_sys_regmap,
[S0] = vsc7514_vcap_regmap,
[S1] = vsc7514_vcap_regmap,
[S2] = vsc7514_vcap_regmap,
[PTP] = vsc7514_ptp_regmap,
[DEV_GMII] = vsc7514_dev_gmii_regmap,
};
EXPORT_SYMBOL(vsc7514_regmap);
const struct vcap_field vsc7514_vcap_es0_keys[] = { const struct vcap_field vsc7514_vcap_es0_keys[] = {
[VCAP_ES0_EGR_PORT] = { 0, 4 }, [VCAP_ES0_EGR_PORT] = { 0, 4 },
[VCAP_ES0_IGR_PORT] = { 4, 4 }, [VCAP_ES0_IGR_PORT] = { 4, 4 },
......
...@@ -23,6 +23,8 @@ extern const u32 vsc7514_vcap_regmap[]; ...@@ -23,6 +23,8 @@ extern const u32 vsc7514_vcap_regmap[];
extern const u32 vsc7514_ptp_regmap[]; extern const u32 vsc7514_ptp_regmap[];
extern const u32 vsc7514_dev_gmii_regmap[]; extern const u32 vsc7514_dev_gmii_regmap[];
extern const u32 *vsc7514_regmap[TARGET_MAX];
extern const struct vcap_field vsc7514_vcap_es0_keys[]; extern const struct vcap_field vsc7514_vcap_es0_keys[];
extern const struct vcap_field vsc7514_vcap_es0_actions[]; extern const struct vcap_field vsc7514_vcap_es0_actions[];
extern const struct vcap_field vsc7514_vcap_is1_keys[]; extern const struct vcap_field vsc7514_vcap_is1_keys[];
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment