19dd43aa2SAndrew Lunn /* SPDX-License-Identifier: GPL-2.0-or-later */ 29dd43aa2SAndrew Lunn 39dd43aa2SAndrew Lunn /* Marvell 88E6xxx Switch devlink support. */ 49dd43aa2SAndrew Lunn 59dd43aa2SAndrew Lunn #ifndef _MV88E6XXX_DEVLINK_H 69dd43aa2SAndrew Lunn #define _MV88E6XXX_DEVLINK_H 79dd43aa2SAndrew Lunn 89dd43aa2SAndrew Lunn int mv88e6xxx_setup_devlink_params(struct dsa_switch *ds); 99dd43aa2SAndrew Lunn void mv88e6xxx_teardown_devlink_params(struct dsa_switch *ds); 109dd43aa2SAndrew Lunn int mv88e6xxx_setup_devlink_resources(struct dsa_switch *ds); 119dd43aa2SAndrew Lunn int mv88e6xxx_devlink_param_get(struct dsa_switch *ds, u32 id, 129dd43aa2SAndrew Lunn struct devlink_param_gset_ctx *ctx); 139dd43aa2SAndrew Lunn int mv88e6xxx_devlink_param_set(struct dsa_switch *ds, u32 id, 149dd43aa2SAndrew Lunn struct devlink_param_gset_ctx *ctx); 15*fd292c18SVladimir Oltean int mv88e6xxx_setup_devlink_regions_global(struct dsa_switch *ds); 16*fd292c18SVladimir Oltean void mv88e6xxx_teardown_devlink_regions_global(struct dsa_switch *ds); 17*fd292c18SVladimir Oltean int mv88e6xxx_setup_devlink_regions_port(struct dsa_switch *ds, int port); 18*fd292c18SVladimir Oltean void mv88e6xxx_teardown_devlink_regions_port(struct dsa_switch *ds, int port); 199dd43aa2SAndrew Lunn 2093157307SAndrew Lunn int mv88e6xxx_devlink_info_get(struct dsa_switch *ds, 2193157307SAndrew Lunn struct devlink_info_req *req, 2293157307SAndrew Lunn struct netlink_ext_ack *extack); 239dd43aa2SAndrew Lunn #endif /* _MV88E6XXX_DEVLINK_H */ 24