Re: [PATCH 3/3 v3] drivers/bus: Device driver for FSL-MC DPRC devices

From: German Rivera
Date: Thu Nov 13 2014 - 12:38:09 EST




On 11/06/2014 07:51 AM, Alexander Graf wrote:


On 04.10.14 15:23, J. German Rivera wrote:
From: "J. German Rivera" <German.Rivera@xxxxxxxxxxxxx>

A DPRC (Data Path Resource Container) is an isolation device
that contains a set of DPAA networking devices to be
assigned to an isolation domain (e.g., a virtual machine).

Signed-off-by: J. German Rivera <German.Rivera@xxxxxxxxxxxxx>
Signed-off-by: Stuart Yoder <stuart.yoder@xxxxxxxxxxxxx>
---
Changes in v3:
- Addressed comments from Kim Phillips:
* Renamed files:
drivers/bus/fsl-mc/fsl_mc_dprc.c -> drivers/bus/fsl-mc/dprc-driver.c

- Addressed comments from Timur Tabi:
* Changed dprc_scan_container() to just return dprc_scan_objects()
* Changed all functions that had goto out/error when no common cleanup
was done, to just have multiple return points.
* Replaced error cleanup boolean flags with multiple exit points.
* REmoved __must_chewck from dprc_scan_*() functions

Changes in v2:
- Addressed comments from Kim Phillips:
* Fix warning in drivers/bus/fsl-mc/fsl_mc_dprc.c:173
* Fixed linker errors when MC bus driver built as module

drivers/bus/fsl-mc/Makefile | 3 +-
drivers/bus/fsl-mc/dprc-driver.c | 383 ++++++++++++++++++++++++++++++++++++++
drivers/bus/fsl-mc/mc-bus.c | 8 +
include/linux/fsl/mc-private.h | 10 +
4 files changed, 403 insertions(+), 1 deletion(-)
create mode 100644 drivers/bus/fsl-mc/dprc-driver.c

diff --git a/drivers/bus/fsl-mc/Makefile b/drivers/bus/fsl-mc/Makefile
index decd339..424e58e 100644
--- a/drivers/bus/fsl-mc/Makefile
+++ b/drivers/bus/fsl-mc/Makefile
@@ -10,5 +10,6 @@ obj-$(CONFIG_FSL_MC_BUS) += mc-bus-driver.o
mc-bus-driver-objs := mc-bus.o \
mc-sys.o \
dprc.o \
- dpmng.o
+ dpmng.o \
+ dprc-driver.o

diff --git a/drivers/bus/fsl-mc/dprc-driver.c b/drivers/bus/fsl-mc/dprc-driver.c
new file mode 100644
index 0000000..8be6a2a
--- /dev/null
+++ b/drivers/bus/fsl-mc/dprc-driver.c
@@ -0,0 +1,383 @@
+/*
+ * Freescale daata path resource container (DPRC) driver

daata? ;)

Fixed.

Is there any way I can play with this bus? How far do I get with only
these 3 patches applied today?

With these three patches applied you will be able to see the fsl-mc bus added in sysfs and the device present in the root DPRC.
Also, since this patch series only contains one MC object driver
(the driver for DPRC objects), you will be able so see that
driver under the fsl-mc bus. Below is a fragment of console
output with an example to illustrate this:

root@ls2085a-simu:~# find /sys/bus/fsl-mc/
/sys/bus/fsl-mc/
/sys/bus/fsl-mc/devices
/sys/bus/fsl-mc/devices/dpbp.1
/sys/bus/fsl-mc/devices/dpio.1
/sys/bus/fsl-mc/devices/dpni.1
/sys/bus/fsl-mc/devices/dprc.1
/sys/bus/fsl-mc/drivers
/sys/bus/fsl-mc/drivers/fsl_mc_dprc
/sys/bus/fsl-mc/drivers/fsl_mc_dprc/bind
/sys/bus/fsl-mc/drivers/fsl_mc_dprc/dprc.1
/sys/bus/fsl-mc/drivers/fsl_mc_dprc/uevent
/sys/bus/fsl-mc/drivers/fsl_mc_dprc/unbind
/sys/bus/fsl-mc/uevent
/sys/bus/fsl-mc/drivers_probe
/sys/bus/fsl-mc/drivers_autoprobe

root@ls2085a-simu:~# ls -l /sys/bus/fsl-mc/devices/dprc.1/
drwxr-xr-x 3 root root 0 Jan 1 1970 dpbp.1
drwxr-xr-x 3 root root 0 Jan 1 1970 dpio.1
drwxr-xr-x 3 root root 0 Jan 1 1970 dpni.1
lrwxrwxrwx 1 root root 0 Nov 7 20:38 driver -> ../../../bus/fsl-mc/drivers/fsl_mc_dprc
drwxr-xr-x 2 root root 0 Nov 7 20:38 power
lrwxrwxrwx 1 root root 0 Jan 1 1970 subsystem -> ../../../bus/fsl-mc
-rw-r--r-- 1 root root 4096 Jan 1 1970 uevent

Thanks,

German


Alex

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/