Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 70ae9cf0 authored by Bogdan Purcareata's avatar Bogdan Purcareata Committed by Greg Kroah-Hartman
Browse files

staging: fsl-mc: Move DPCON out of staging



Move the source files out of staging into their final locations:
- dpcon.c goes to drivers/bus/fsl-mc/, next to the core infrastructure
- dpcon-cmd.h gets merged into drivers/bus/fsl-mc/fsl-mc-private.h, next
  to the other internally used APIs
- dpcon.h gets merged into include/linux/fsl/mc.h, exposing the public
  API

Update references in the dpaa2-eth staging driver.

DPCON stands for Data Path Concentrator - an interface between DPIO
(Data Path IO) and its users (e.g. dpaa2-eth). You can read more about
DPIO in Documentation/networking/dpaa2/overview.rst

Signed-off-by: default avatarBogdan Purcareata <bogdan.purcareata@nxp.com>
Reviewed-by: default avatarLaurentiu Tudor <laurentiu.tudor@nxp.com>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent 9c692d5a
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -10,6 +10,7 @@ mc-bus-driver-objs := fsl-mc-bus.o \
		      mc-sys.o \
		      mc-io.o \
		      dpbp.o \
		      dpcon.o \
		      dprc.o \
		      dprc-driver.o \
		      fsl-mc-allocator.o \
+2 −2
Original line number Diff line number Diff line
@@ -5,9 +5,9 @@
 */
#include <linux/kernel.h>
#include <linux/fsl/mc.h>
#include "../include/dpcon.h"
#include <linux/fsl/mc.h>

#include "dpcon-cmd.h"
#include "fsl-mc-private.h"

/**
 * dpcon_open() - Open a control session for the specified object
+48 −0
Original line number Diff line number Diff line
@@ -418,6 +418,54 @@ struct dpbp_rsp_get_attributes {
	__le16 version_minor;
};

/*
 * Data Path Concentrator (DPCON) API
 */

/* DPCON Version */
#define DPCON_VER_MAJOR				3
#define DPCON_VER_MINOR				2

/* Command versioning */
#define DPCON_CMD_BASE_VERSION			1
#define DPCON_CMD_ID_OFFSET			4

#define DPCON_CMD(id)	(((id) << DPCON_CMD_ID_OFFSET) | DPCON_CMD_BASE_VERSION)

/* Command IDs */
#define DPCON_CMDID_CLOSE			DPCON_CMD(0x800)
#define DPCON_CMDID_OPEN			DPCON_CMD(0x808)

#define DPCON_CMDID_ENABLE			DPCON_CMD(0x002)
#define DPCON_CMDID_DISABLE			DPCON_CMD(0x003)
#define DPCON_CMDID_GET_ATTR			DPCON_CMD(0x004)
#define DPCON_CMDID_RESET			DPCON_CMD(0x005)

#define DPCON_CMDID_SET_NOTIFICATION		DPCON_CMD(0x100)

struct dpcon_cmd_open {
	__le32 dpcon_id;
};

#define DPCON_ENABLE			1

struct dpcon_rsp_get_attr {
	/* response word 0 */
	__le32 id;
	__le16 qbman_ch_id;
	u8 num_priorities;
	u8 pad;
};

struct dpcon_cmd_set_notification {
	/* cmd word 0 */
	__le32 dpio_id;
	u8 priority;
	u8 pad[3];
	/* cmd word 1 */
	__le64 user_ctx;
};

/**
 * Maximum number of total IRQs that can be pre-allocated for an MC bus'
 * IRQ pool
+0 −1
Original line number Diff line number Diff line
@@ -39,7 +39,6 @@

#include "../../fsl-mc/include/dpaa2-io.h"
#include "../../fsl-mc/include/dpaa2-fd.h"
#include "../../fsl-mc/include/dpcon.h"
#include "dpni.h"
#include "dpni-cmd.h"

+0 −1
Original line number Diff line number Diff line
@@ -4,7 +4,6 @@
#
# Copyright (C) 2014 Freescale Semiconductor, Inc.
#
obj-$(CONFIG_FSL_MC_BUS) += dpcon.o

# MC DPIO driver
obj-$(CONFIG_FSL_MC_DPIO) += dpio/
Loading