summaryrefslogtreecommitdiff
path: root/rtemsbsd
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2017-06-27 12:51:07 +0200
committerSebastian Huber <sebastian.huber@embedded-brains.de>2017-10-23 09:24:07 +0200
commite3dc39ee0cc025cb66baae8ab5d9ccb7bdbcd57c (patch)
tree9882bd6803ca766c585d19c8f7727bbc79c4a83c /rtemsbsd
parent9789434e2127185fad5ad2fa4f3eb219c6c698ec (diff)
dpaa: Add <soc/fsl/dpaa.h>
Diffstat (limited to 'rtemsbsd')
-rw-r--r--rtemsbsd/powerpc/include/soc/fsl/dpaa.h53
-rw-r--r--rtemsbsd/sys/powerpc/drivers/net/ethernet/freescale/dpaa/if_fmanmac.c11
2 files changed, 64 insertions, 0 deletions
diff --git a/rtemsbsd/powerpc/include/soc/fsl/dpaa.h b/rtemsbsd/powerpc/include/soc/fsl/dpaa.h
new file mode 100644
index 00000000..1e9a6762
--- /dev/null
+++ b/rtemsbsd/powerpc/include/soc/fsl/dpaa.h
@@ -0,0 +1,53 @@
+/*-
+ * Copyright (c) 2017 embedded brains GmbH
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#ifndef _SOC_FSL_DPAA_H
+#define _SOC_FSL_DPAA_H
+
+#include <sys/cdefs.h>
+#include <linux/types.h>
+#include <asm/byteorder.h>
+#include <soc/fsl/bman.h>
+
+__BEGIN_DECLS
+
+struct dpaa_priv;
+struct ifnet;
+struct mbuf;
+
+struct dpaa_priv *dpaa_get_priv_of_ifp(struct ifnet *);
+
+typedef struct {
+ size_t count;
+ struct bm_buffer bmb[8];
+} dpaa_buffer_recycle_context;
+
+void dpaa_recycle_mcluster(struct dpaa_priv *,
+ dpaa_buffer_recycle_context *, struct mbuf *);
+
+__END_DECLS
+
+#endif /* _SOC_FSL_DPAA_H */
diff --git a/rtemsbsd/sys/powerpc/drivers/net/ethernet/freescale/dpaa/if_fmanmac.c b/rtemsbsd/sys/powerpc/drivers/net/ethernet/freescale/dpaa/if_fmanmac.c
index e5c11834..c71a73c4 100644
--- a/rtemsbsd/sys/powerpc/drivers/net/ethernet/freescale/dpaa/if_fmanmac.c
+++ b/rtemsbsd/sys/powerpc/drivers/net/ethernet/freescale/dpaa/if_fmanmac.c
@@ -44,6 +44,8 @@
#include <linux/phy.h>
+#include <soc/fsl/dpaa.h>
+
#include "../../../../../../../../linux/drivers/net/ethernet/freescale/dpaa/dpaa_eth.h"
#define FMAN_MAC_LOCK(sc) mtx_lock(&(sc)->mtx)
@@ -579,3 +581,12 @@ void dpaa_cleanup_tx_fd(struct ifnet *ifp, const struct qm_fd *fd)
m_freem(sgt->m);
uma_zfree(sc->sgt_zone, sgt);
}
+
+struct dpaa_priv *
+dpaa_get_priv_of_ifp(struct ifnet *ifp)
+{
+ struct fman_mac_softc *sc;
+
+ sc = ifp->if_softc;
+ return (netdev_priv(&sc->mac_dev.net_dev));
+}