linux/drivers/net/ethernet/marvell/octeontx2/af/rvu_devlink.c

// SPDX-License-Identifier: GPL-2.0
/* Marvell RVU Admin Function Devlink
 *
 * Copyright (C) 2020 Marvell.
 *
 */

#include <linux/bitfield.h>

#include "rvu.h"
#include "rvu_reg.h"
#include "rvu_struct.h"
#include "rvu_npc_hash.h"

#define DRV_NAME

static void rvu_report_pair_start(struct devlink_fmsg *fmsg, const char *name)
{}

static void rvu_report_pair_end(struct devlink_fmsg *fmsg)
{}

static bool rvu_common_request_irq(struct rvu *rvu, int offset,
				   const char *name, irq_handler_t fn)
{}

static void rvu_nix_intr_work(struct work_struct *work)
{}

static irqreturn_t rvu_nix_af_rvu_intr_handler(int irq, void *rvu_irq)
{}

static void rvu_nix_gen_work(struct work_struct *work)
{}

static irqreturn_t rvu_nix_af_rvu_gen_handler(int irq, void *rvu_irq)
{}

static void rvu_nix_err_work(struct work_struct *work)
{}

static irqreturn_t rvu_nix_af_rvu_err_handler(int irq, void *rvu_irq)
{}

static void rvu_nix_ras_work(struct work_struct *work)
{}

static irqreturn_t rvu_nix_af_rvu_ras_handler(int irq, void *rvu_irq)
{}

static void rvu_nix_unregister_interrupts(struct rvu *rvu)
{}

static int rvu_nix_register_interrupts(struct rvu *rvu)
{}

static int rvu_nix_report_show(struct devlink_fmsg *fmsg, void *ctx,
			       enum nix_af_rvu_health health_reporter)
{}

static int rvu_hw_nix_intr_dump(struct devlink_health_reporter *reporter,
				struct devlink_fmsg *fmsg, void *ctx,
				struct netlink_ext_ack *netlink_extack)
{}

static int rvu_hw_nix_intr_recover(struct devlink_health_reporter *reporter,
				   void *ctx, struct netlink_ext_ack *netlink_extack)
{}

static int rvu_hw_nix_gen_dump(struct devlink_health_reporter *reporter,
			       struct devlink_fmsg *fmsg, void *ctx,
			       struct netlink_ext_ack *netlink_extack)
{}

static int rvu_hw_nix_gen_recover(struct devlink_health_reporter *reporter,
				  void *ctx, struct netlink_ext_ack *netlink_extack)
{}

static int rvu_hw_nix_err_dump(struct devlink_health_reporter *reporter,
			       struct devlink_fmsg *fmsg, void *ctx,
			       struct netlink_ext_ack *netlink_extack)
{}

static int rvu_hw_nix_err_recover(struct devlink_health_reporter *reporter,
				  void *ctx, struct netlink_ext_ack *netlink_extack)
{}

static int rvu_hw_nix_ras_dump(struct devlink_health_reporter *reporter,
			       struct devlink_fmsg *fmsg, void *ctx,
			       struct netlink_ext_ack *netlink_extack)
{}

static int rvu_hw_nix_ras_recover(struct devlink_health_reporter *reporter,
				  void *ctx, struct netlink_ext_ack *netlink_extack)
{}

RVU_REPORTERS();
RVU_REPORTERS();
RVU_REPORTERS();
RVU_REPORTERS();

static void rvu_nix_health_reporters_destroy(struct rvu_devlink *rvu_dl);

static int rvu_nix_register_reporters(struct rvu_devlink *rvu_dl)
{}

static int rvu_nix_health_reporters_create(struct rvu_devlink *rvu_dl)
{}

static void rvu_nix_health_reporters_destroy(struct rvu_devlink *rvu_dl)
{}

static void rvu_npa_intr_work(struct work_struct *work)
{}

static irqreturn_t rvu_npa_af_rvu_intr_handler(int irq, void *rvu_irq)
{}

static void rvu_npa_gen_work(struct work_struct *work)
{}

static irqreturn_t rvu_npa_af_gen_intr_handler(int irq, void *rvu_irq)
{}

static void rvu_npa_err_work(struct work_struct *work)
{}

static irqreturn_t rvu_npa_af_err_intr_handler(int irq, void *rvu_irq)
{}

static void rvu_npa_ras_work(struct work_struct *work)
{}

static irqreturn_t rvu_npa_af_ras_intr_handler(int irq, void *rvu_irq)
{}

static void rvu_npa_unregister_interrupts(struct rvu *rvu)
{}

static int rvu_npa_register_interrupts(struct rvu *rvu)
{}

static int rvu_npa_report_show(struct devlink_fmsg *fmsg, void *ctx,
			       enum npa_af_rvu_health health_reporter)
{}

static int rvu_hw_npa_intr_dump(struct devlink_health_reporter *reporter,
				struct devlink_fmsg *fmsg, void *ctx,
				struct netlink_ext_ack *netlink_extack)
{}

static int rvu_hw_npa_intr_recover(struct devlink_health_reporter *reporter,
				   void *ctx, struct netlink_ext_ack *netlink_extack)
{}

static int rvu_hw_npa_gen_dump(struct devlink_health_reporter *reporter,
			       struct devlink_fmsg *fmsg, void *ctx,
			       struct netlink_ext_ack *netlink_extack)
{}

static int rvu_hw_npa_gen_recover(struct devlink_health_reporter *reporter,
				  void *ctx, struct netlink_ext_ack *netlink_extack)
{}

static int rvu_hw_npa_err_dump(struct devlink_health_reporter *reporter,
			       struct devlink_fmsg *fmsg, void *ctx,
			       struct netlink_ext_ack *netlink_extack)
{}

static int rvu_hw_npa_err_recover(struct devlink_health_reporter *reporter,
				  void *ctx, struct netlink_ext_ack *netlink_extack)
{}

static int rvu_hw_npa_ras_dump(struct devlink_health_reporter *reporter,
			       struct devlink_fmsg *fmsg, void *ctx,
			       struct netlink_ext_ack *netlink_extack)
{}

static int rvu_hw_npa_ras_recover(struct devlink_health_reporter *reporter,
				  void *ctx, struct netlink_ext_ack *netlink_extack)
{}

RVU_REPORTERS();
RVU_REPORTERS();
RVU_REPORTERS();
RVU_REPORTERS();

static void rvu_npa_health_reporters_destroy(struct rvu_devlink *rvu_dl);

static int rvu_npa_register_reporters(struct rvu_devlink *rvu_dl)
{}

static int rvu_npa_health_reporters_create(struct rvu_devlink *rvu_dl)
{}

static void rvu_npa_health_reporters_destroy(struct rvu_devlink *rvu_dl)
{}

static int rvu_health_reporters_create(struct rvu *rvu)
{}

static void rvu_health_reporters_destroy(struct rvu *rvu)
{}

/* Devlink Params APIs */
static int rvu_af_dl_dwrr_mtu_validate(struct devlink *devlink, u32 id,
				       union devlink_param_value val,
				       struct netlink_ext_ack *extack)
{}

static int rvu_af_dl_dwrr_mtu_set(struct devlink *devlink, u32 id,
				  struct devlink_param_gset_ctx *ctx,
				  struct netlink_ext_ack *extack)
{}

static int rvu_af_dl_dwrr_mtu_get(struct devlink *devlink, u32 id,
				  struct devlink_param_gset_ctx *ctx)
{}

enum rvu_af_dl_param_id {};

static int rvu_af_npc_exact_feature_get(struct devlink *devlink, u32 id,
					struct devlink_param_gset_ctx *ctx)
{}

static int rvu_af_npc_exact_feature_disable(struct devlink *devlink, u32 id,
					    struct devlink_param_gset_ctx *ctx,
					    struct netlink_ext_ack *extack)
{}

static int rvu_af_npc_exact_feature_validate(struct devlink *devlink, u32 id,
					     union devlink_param_value val,
					     struct netlink_ext_ack *extack)
{}

static int rvu_af_dl_npc_mcam_high_zone_percent_get(struct devlink *devlink, u32 id,
						    struct devlink_param_gset_ctx *ctx)
{}

static int rvu_af_dl_npc_mcam_high_zone_percent_set(struct devlink *devlink, u32 id,
						    struct devlink_param_gset_ctx *ctx,
						    struct netlink_ext_ack *extack)
{}

static int rvu_af_dl_npc_mcam_high_zone_percent_validate(struct devlink *devlink, u32 id,
							 union devlink_param_value val,
							 struct netlink_ext_ack *extack)
{}

static int rvu_af_dl_nix_maxlf_get(struct devlink *devlink, u32 id,
				   struct devlink_param_gset_ctx *ctx)
{}

static int rvu_af_dl_nix_maxlf_set(struct devlink *devlink, u32 id,
				   struct devlink_param_gset_ctx *ctx,
				   struct netlink_ext_ack *extack)
{}

static int rvu_af_dl_nix_maxlf_validate(struct devlink *devlink, u32 id,
					union devlink_param_value val,
					struct netlink_ext_ack *extack)
{}

static const struct devlink_param rvu_af_dl_params[] =;

static const struct devlink_param rvu_af_dl_param_exact_match[] =;

/* Devlink switch mode */
static int rvu_devlink_eswitch_mode_get(struct devlink *devlink, u16 *mode)
{}

static int rvu_devlink_eswitch_mode_set(struct devlink *devlink, u16 mode,
					struct netlink_ext_ack *extack)
{}

static const struct devlink_ops rvu_devlink_ops =;

int rvu_register_dl(struct rvu *rvu)
{}

void rvu_unregister_dl(struct rvu *rvu)
{}