summaryrefslogtreecommitdiff
path: root/drivers/staging/fsl-mc/bus/dprc.c
AgeCommit message (Collapse)Author
2018-02-22staging: fsl-mc: Move core bus out of stagingBogdan Purcareata
Move the source files out of staging into their final locations: -mc.h include file in drivers/staging/fsl-mc/include go to include/linux/fsl -source files in drivers/staging/fsl-mc/bus go to drivers/bus/fsl-mc -overview.rst, providing an overview of DPAA2, goes to Documentation/networking/dpaa2/overview.rst Update or delete other remaining staging files -- Makefile, Kconfig, TODO. Update dpaa2_eth and dpio staging drivers. Add integration bits for the documentation build system. Signed-off-by: Stuart Yoder <stuyoder@gmail.com> [rebased, add dpaa2_eth and dpio #include updates] Signed-off-by: Laurentiu Tudor <laurentiu.tudor@nxp.com> [rebased, split irqchip to separate patch] Signed-off-by: Bogdan Purcareata <bogdan.purcareata@nxp.com> Cc: Thomas Gleixner <tglx@linutronix.de> Cc: Jason Cooper <jason@lakedaemon.net> Cc: Marc Zyngier <marc.zyngier@arm.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2018-01-22staging: fsl-mc: Add SPDX license identifiersBogdan Purcareata
The fsl-mc bus and dpio driver files use a combination of GPL-2.0 and GPL-2.0+ OR BSD-3-Clause licenses. Add SPDX tags and delete the full license text, keeping the existing license for each file. Add GPL-2.0 for Kconfig / Makefile, where not present. Signed-off-by: Bogdan Purcareata <bogdan.purcareata@nxp.com> Reviewed-by: Laurentiu Tudor <laurentiu.tudor@nxp.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2018-01-16staging: fsl-mc: Consolidate bus core header filesBogdan Purcareata
The DPAA2 objects involved (DPMNG, DPMCP, DPRC) are used by the fsl-mc bus infrastructure only, so group the APIs and structs into fsl-mc-private.h. Signed-off-by: Bogdan Purcareata <bogdan.purcareata@nxp.com> Reviewed-by: Laurentiu Tudor <laurentiu.tudor@nxp.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2018-01-16staging: fsl-mc: Cleanup dprc and dpmcp header filesBogdan Purcareata
A lot of API and associated structures are not used by current code, so remove them. Signed-off-by: Bogdan Purcareata <bogdan.purcareata@nxp.com> Reviewed-by: Laurentiu Tudor <laurentiu.tudor@nxp.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2017-11-27staging: fsl-mc: consistently use EXPORT_SYMBOL_GPL()Laurentiu Tudor
The bus driver is mixing EXPORT_SYMBOL()/EXPORT_SYMBOL_GPL() usage. Change it to consistently use EXPORT_SYMBOL_GPL(). Signed-off-by: Laurentiu Tudor <laurentiu.tudor@nxp.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2017-06-29staging: fsl-mc: make dprc.h header privateLaurentiu Tudor
dprc.h is only used in the mc bus driver so move it together with the sources thus making it private. Signed-off-by: Laurentiu Tudor <laurentiu.tudor@nxp.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2017-06-29staging: fsl-mc: move mc-cmd.h contents in the public headerLaurentiu Tudor
mc-cmd.h contains some low level functions used to encode and decode commands to the MC. They are used by the drivers so move them to the public headers and get rid of the mc-cmd.h header. Signed-off-by: Laurentiu Tudor <laurentiu.tudor@nxp.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2017-06-29staging: fsl-mc: move mc-sys.h contents in the public headerLaurentiu Tudor
mc-sys.h contains the API to send commands to the MC and is used by drivers. Move it to the public headers and get rid of the mc-sys.h header. Signed-off-by: Laurentiu Tudor <laurentiu.tudor@nxp.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2017-06-29staging: fsl-mc: fix a few implicit includesLaurentiu Tudor
Few files using byte order macros but did not explicitly included the required kernel header, so add it. Signed-off-by: Laurentiu Tudor <laurentiu.tudor@nxp.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2017-06-29staging: fsl-mc: decouple the mc-bus public headers from dprc.hLaurentiu Tudor
In its current form, the public headers of the mc-bus depend only on a structure "dprc_obj_desc" defined in dprc.h. Move it to the bus public header together with its associated defines and, in order to keep the naming prefixes consistent rename it to "fsl_mc_obj_desc". This will allow making dprc.h private in future patches. Signed-off-by: Laurentiu Tudor <laurentiu.tudor@nxp.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2017-06-26Revert "staging: fsl-mc: decouple the mc-bus public headers from dprc.h"Greg Kroah-Hartman
This reverts commit c6ce019edb0c9c09b8150011d4f66181952631e9. The whole series is broken, so back it all out. Reported-by: kbuild test robot <fengguang.wu@intel.com> Cc: Laurentiu Tudor <laurentiu.tudor@nxp.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2017-06-26Revert "staging: fsl-mc: fix a few implicit includes"Greg Kroah-Hartman
This reverts commit 5776aad3fe1bb87f3e4816cde8735647597da336. The whole series is broken, so back it all out. Reported-by: kbuild test robot <fengguang.wu@intel.com> Cc: Laurentiu Tudor <laurentiu.tudor@nxp.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2017-06-26Revert "staging: fsl-mc: move mc-sys.h contents in the public header"Greg Kroah-Hartman
This reverts commit 7d6e221d73904aedcbd46ce2db6a545be55d2296. The whole series is broken, so back it all out. Reported-by: kbuild test robot <fengguang.wu@intel.com> Cc: Laurentiu Tudor <laurentiu.tudor@nxp.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2017-06-26Revert "staging: fsl-mc: move mc-cmd.h contents in the public header"Greg Kroah-Hartman
This reverts commit 9b1aa45539fb8389deb79e4a939bfc05ee45aeb5. The whole series is broken, so back it all out. Reported-by: kbuild test robot <fengguang.wu@intel.com> Cc: Laurentiu Tudor <laurentiu.tudor@nxp.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2017-06-26Revert "staging: fsl-mc: make dprc.h header private"Greg Kroah-Hartman
This reverts commit 1877e4ba2d0890244284eea101681b6f990aa2be. The whole series is broken, so back it all out. Reported-by: kbuild test robot <fengguang.wu@intel.com> Cc: Laurentiu Tudor <laurentiu.tudor@nxp.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2017-06-23staging: fsl-mc: make dprc.h header privateLaurentiu Tudor
dprc.h is only used in the mc bus driver so move it together with the sources thus making it private. Signed-off-by: Laurentiu Tudor <laurentiu.tudor@nxp.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2017-06-23staging: fsl-mc: move mc-cmd.h contents in the public headerLaurentiu Tudor
mc-cmd.h contains some low level functions used to encode and decode commands to the MC. They are used by the drivers so move them to the public headers and get rid of the mc-cmd.h header. Signed-off-by: Laurentiu Tudor <laurentiu.tudor@nxp.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2017-06-23staging: fsl-mc: move mc-sys.h contents in the public headerLaurentiu Tudor
mc-sys.h contains the API to send commands to the MC and is used by drivers. Move it to the public headers and get rid of the mc-sys.h header. Signed-off-by: Laurentiu Tudor <laurentiu.tudor@nxp.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2017-06-23staging: fsl-mc: fix a few implicit includesLaurentiu Tudor
Few files using byte order macros but did not explicitly included the required kernel header, so add it. Signed-off-by: Laurentiu Tudor <laurentiu.tudor@nxp.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2017-06-23staging: fsl-mc: decouple the mc-bus public headers from dprc.hLaurentiu Tudor
In its current form, the public headers of the mc-bus depend only on a structure "dprc_obj_desc" defined in dprc.h. Move it to the bus public header together with its associated defines and, in order to keep the naming prefixes consistent rename it to "fsl_mc_obj_desc". This will allow making dprc.h private in future patches. Signed-off-by: Laurentiu Tudor <laurentiu.tudor@nxp.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2017-02-09staging: fsl-mc: dprc: drop unused APIsLaurentiu Tudor
Leave only APIs that area actually used in the bus driver. The patch is mostly mechanical, with a couple exceptions: - getters/setters were not removed even if only one of them is being used - versioning API was also left in place They will be added back on an as-needed basis. Signed-off-by: Laurentiu Tudor <laurentiu.tudor@nxp.com> Acked-by: Stuart Yoder <stuart.yoder@nxp.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2016-10-27staging: fsl-mc: uprev binary interface to match MC v10.xIoana Ciornei
DPAA2 will not support MC firmware versions prior to MC v10.x. Update the MC interface code and drivers to reflect this. -update the object .h files and code that builds commands to include the new command version in the command header -object versions are no longer available in the object attributes, so remove references to them and instead get the version from the new get_api_version() command -create/destroy commands for all objects have new arguments -dpmng_get_container_id() is replaced by dprc_get_container_id() This supports a hardware ABI change and thus to match the new ABI all the above changes need to happen in a single patch. All MC firmware versions >= 10 will be supported going forward. Signed-off-by: Ioana Ciornei <ioana.ciornei@nxp.com> Signed-off-by: Stuart Yoder <stuart.yoder@nxp.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2016-10-27staging: fsl-mc: cleanup comment styleStuart Yoder
Be consistent and use kernel-preferred multi-line comment style everywhere. Signed-off-by: Stuart Yoder <stuart.yoder@nxp.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2016-10-27staging: fsl-mc: whitespace cleanup: remove blank linesStuart Yoder
remove instances of multiple blank lines in comments Signed-off-by: Stuart Yoder <stuart.yoder@nxp.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2016-10-02Staging: fsl-mc: Fix unaligned * in block commentsRamiro Oliveira
Align the * in some block comments as reported by checkpatch. Signed-off-by: Ramiro Oliveira <roliveir@synopsys.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2016-09-01staging: fsl-mc: make order of includes consistentStuart Yoder
There are 3 kinds of headers included in the bus driver components-- misc linux/include files, public bus driver includes, and includes private to the bus driver. Cleanup the order and formatting of includes in the bus driver to be consistent: #include <linux/include/[file].h> #include ../include/[file].h // public bus driver includes (eventually // destined for: linux/include/fsl) [blank line] #include "[file].h" // private bus driver includes Signed-off-by: Stuart Yoder <stuart.yoder@nxp.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2016-06-26staging: fsl-mc: convert mc command build/parse to use C structsIoana Radulescu
The layer abstracting the building of commands and extracting responses is currently based on macros that shift and mask the command fields and requires exposing offset/size values as macro parameters and makes the code harder to read. For clarity and maintainability, instead use an implementation based on mapping the MC command definitions to C structures. These structures contain the hardware command fields (which are naturally-aligned) and individual fields are little-endian ordering (the byte ordering of the hardware). As such, there is no need to perform the conversion between core and hardware (LE) endianness in mc_send_command(), but instead each individual field in a command will be converted separately if needed by the function building the command or extracting the response. This patch does not introduce functional changes, both the hardware ABIs and the APIs exposed for the DPAA2 objects remain the same. Signed-off-by: Ioana Radulescu <ruxandra.radulescu@nxp.com> Signed-off-by: Stuart Yoder <stuart.yoder@nxp.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2016-04-29staging: fsl-mc: update dprc binary interface to v5.1Stuart Yoder
The meaning of the "status" parameter in dprc_get_irq_status has changed, and this patch updates the flib and caller of the API. Signed-off-by: Stuart Yoder <stuart.yoder@nxp.com> Acked-by: German Rivera <german.rivera@nxp.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2015-09-29staging: fsl-mc: Fixed uintX_t CHECK checkpatch warningsJ. German Rivera
Replaced all uses of uintX_t types to uX types, to be checkpatch clean. Signed-off-by: J. German Rivera <German.Rivera@freescale.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2015-09-29staging: fsl-mc: Moved kernel-doc comments to .c filesJ. German Rivera
Moved kernel-doc comments for non-inline functions from header files to .c files. Signed-off-by: J. German Rivera <German.Rivera@freescale.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2015-09-29staging: fsl-mc: up-rev dprc binary interface to v4.0J. German Rivera
Add cmd_flags parameter to all dprc APIs to comply with the dprc 4.0 MC interface. Updated MC version major number. Pass irq args in struct instead of separate args. dprc 4.0 uses MC-relative offsets to specify object regions, instead of physical addresses. So, translate_mc_addr() and struct fsl_mc_addr_translation_range need to be updated accordingly. Update commands for 4.0: add new commands 'set/get obj irq', 'set obj label', 'get obj descriptor'. Remove 'get portal paddr'. Signed-off-by: J. German Rivera <German.Rivera@freescale.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2015-03-06staging: fsl-mc: Added Freescale Management Complex APIsJ. German Rivera
APIs to access the Management Complex (MC) hardware module of Freescale LS2 SoCs. This patch includes APIs to check the MC firmware version and to manipulate DPRC objects in the MC. Signed-off-by: J. German Rivera <German.Rivera@freescale.com> Signed-off-by: Stuart Yoder <stuart.yoder@freescale.com> Acked-by: Alexander Graf <agraf@suse.de> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>