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

Commit 1ca8c0a7 authored by Olof Johansson's avatar Olof Johansson
Browse files

Merge tag 'soc-fsl-for-4.19' of...

Merge tag 'soc-fsl-for-4.19' of git://git.kernel.org/pub/scm/linux/kernel/git/leo/linux into next/drivers

Various updates to soc/fsl for 4.19

Moves DPAA2 DPIO driver from staging to fsl/soc
Adds multiple-pin support to QE gpio driver

* tag 'soc-fsl-for-4.19' of git://git.kernel.org/pub/scm/linux/kernel/git/leo/linux

:
  soc: fsl: cleanup Kconfig menu
  soc: fsl: dpio: Convert DPIO documentation to .rst
  staging: fsl-mc: Remove remaining files
  staging: fsl-mc: Move DPIO from staging to drivers/soc/fsl
  staging: fsl-dpaa2: eth: move generic FD defines to DPIO
  soc: fsl: qe: gpio: Add qe_gpio_set_multiple

Signed-off-by: default avatarOlof Johansson <olof@lixom.net>
parents 92f06c38 46252108
Loading
Loading
Loading
Loading
+26 −3
Original line number Diff line number Diff line
Copyright 2016 NXP
.. include:: <isonum.txt>

DPAA2 DPIO (Data Path I/O) Overview
===================================

:Copyright: |copy| 2016-2018 NXP

This document provides an overview of the Freescale DPAA2 DPIO
drivers

Introduction
------------
============

A DPAA2 DPIO (Data Path I/O) is a hardware object that provides
interfaces to enqueue and dequeue frames to/from network interfaces
@@ -27,8 +35,11 @@ provides services that:

The Linux DPIO driver consists of 3 primary components--
   DPIO object driver-- fsl-mc driver that manages the DPIO object

   DPIO service-- provides APIs to other Linux drivers for services

   QBman portal interface-- sends portal commands, gets responses
::

          fsl-mc          other
           bus           drivers
@@ -45,8 +56,9 @@ The Linux DPIO driver consists of 3 primary components--
                            |
                         hardware


The diagram below shows how the DPIO driver components fit with the other
DPAA2 Linux driver components:
DPAA2 Linux driver components::
                                                   +------------+
                                                   | OS Network |
                                                   |   Stack    |
@@ -98,20 +110,29 @@ DPIO service (dpio-service.c, dpaa2-io.h)

   Notification handling
      dpaa2_io_service_register()

      dpaa2_io_service_deregister()

      dpaa2_io_service_rearm()

   Queuing
      dpaa2_io_service_pull_fq()

      dpaa2_io_service_pull_channel()

      dpaa2_io_service_enqueue_fq()

      dpaa2_io_service_enqueue_qd()

      dpaa2_io_store_create()

      dpaa2_io_store_destroy()

      dpaa2_io_store_next()

   Buffer pool management
      dpaa2_io_service_release()

      dpaa2_io_service_acquire()

QBman portal interface (qbman-portal.c)
@@ -120,7 +141,9 @@ QBman portal interface (qbman-portal.c)
   The qbman-portal component provides APIs to do the low level hardware
   bit twiddling for operations such as:
      -initializing Qman software portals

      -building and sending portal commands

      -portal interrupt configuration and processing

   The qbman-portal APIs are not public to other drivers, and are
+1 −0
Original line number Diff line number Diff line
@@ -6,3 +6,4 @@ DPAA2 Documentation
   :maxdepth: 1

   overview
   dpio-driver
+1 −1
Original line number Diff line number Diff line
@@ -4418,7 +4418,7 @@ DPAA2 DATAPATH I/O (DPIO) DRIVER
M:	Roy Pledge <Roy.Pledge@nxp.com>
L:	linux-kernel@vger.kernel.org
S:	Maintained
F:	drivers/staging/fsl-mc/bus/dpio
F:	drivers/soc/fsl/dpio

DPAA2 ETHERNET DRIVER
M:	Ioana Radulescu <ruxandra.radulescu@nxp.com>
+1 −1
Original line number Diff line number Diff line
@@ -35,7 +35,7 @@
#ifndef _SG_SW_QM2_H_
#define _SG_SW_QM2_H_

#include "../../../drivers/staging/fsl-mc/include/dpaa2-fd.h"
#include <soc/fsl/dpaa2-fd.h>

static inline void dma_to_qm_sg_one(struct dpaa2_sg_entry *qm_sg_ptr,
				    dma_addr_t dma, u32 len, u16 offset)
+1 −1
Original line number Diff line number Diff line
@@ -12,7 +12,7 @@
#include "ctrl.h"
#include "regs.h"
#include "sg_sw_qm2.h"
#include "../../../drivers/staging/fsl-mc/include/dpaa2-fd.h"
#include <soc/fsl/dpaa2-fd.h>

struct sec4_sg_entry {
	u64 ptr;
Loading