<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="/source/rss.xsl.xml"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/">
<channel>
    <title>Changes in bman_portals.c</title>
    <description></description>
    <language>en</language>
    <copyright>Copyright 2015</copyright>
    <generator>Java</generator><item>
        <title>7a40b8a89e7da2a7e8d8e132bc37885b22e9bfb1 - dpaa: Fix copyright headers</title>
        <link>http://kernelsources.org:8080/source/history/freebsd/sys/dev/dpaa/bman_portals.c#7a40b8a89e7da2a7e8d8e132bc37885b22e9bfb1</link>
        <description>dpaa: Fix copyright headersReported by:	ziaee@Fixes:	fd8d34ce27 (&quot;dpaa: Migrate from NCSW base to a home-grown driver&quot;)

            List of files:
            /freebsd/sys/dev/dpaa/bman_portals.c</description>
        <pubDate>Mon, 04 May 2026 03:43:44 +0200</pubDate>
        <dc:creator>Justin Hibbits &lt;jhibbits@FreeBSD.org&gt;</dc:creator>
    </item>
<item>
        <title>fd8d34ce272ba40f3e0218198ba542a29c390a4a - dpaa: Migrate from NCSW base to a home-grown driver</title>
        <link>http://kernelsources.org:8080/source/history/freebsd/sys/dev/dpaa/bman_portals.c#fd8d34ce272ba40f3e0218198ba542a29c390a4a</link>
        <description>dpaa: Migrate from NCSW base to a home-grown driverThe NCSW reference base requires tuning for each target, and currentlyis configured for FMANv2.  This doesn&apos;t readily work on FMANv3 devices,such as the T-series powerpc, or the LS1043 ARM.  Since Freescale/NXPabandoned the NCSW driver a decade ago, it makes sense to abandon itourselves as well.  This new driver uses a combination of the NCSWdriver and the Linux driver (BSD/GPL dual licensed) as a reference, butcontains no actual code from them.The DPAA (Data Path Acceleration Architecture) subsystem consists of thefollowing components:* BMan -- Buffer Manager.  Manages buffer pools of different sizes (one  size per pool, up to 64 pools)* QMan -- Queue Manager.  Manages the interfaces between DPAA-based  components and the CPU(s).* FMan -- Frame Manager.  Responsible for all ethernet-related  processing.  Consists itself of the following components:  * Ports -- interfaces to the QMan.  An ethernet interface consists of    2 ports.    Ports use &quot;Next-invoked action&quot; (NIA) descriptors to form a pipeline    for processing on receive and transmit.  * Parser -- performs protocol header parsing and validation.  Both    hardware and software parsers are available.  * KeyGen -- Key generator, used to start the classification process    (for the Policer), generating FQIDs and other keys based on the    frame input.  * Policer -- performs traffic shaping and classification* MAC -- SoC specific ethernet MAC (dTSEC, TGEC, mEMAC).  Currently  supports dTSEC and mEMAC, along with their MDIO blocks.Additional components not yet handled:SEC -- Security engine (crypto)RE -- RAID engineRapidIODCE -- Decompression/Compression engine, supports ZLIB, DEFLATE, andGZIP, as well as base64 encoding and decoding.BMan and QMan are accessed via cache-coherent portals, using ringbuffers as I/O.  The intent is for portals to be per-CPU (core/thread)to reduce locking contention and improve performance.  This driver pinsinterrupt handlers to the CPU &quot;owning&quot; a given portal, and uses criticalsections to prevent switching while accessing the portal.

            List of files:
            /freebsd/sys/dev/dpaa/bman_portals.c</description>
        <pubDate>Fri, 24 Apr 2026 05:38:19 +0200</pubDate>
        <dc:creator>Justin Hibbits &lt;jhibbits@FreeBSD.org&gt;</dc:creator>
    </item>
<item>
        <title>18250ec6c089c0c50cbd9fd87d78e03ff89916df - Replace calls to bus_generic_attach with bus_attach_children</title>
        <link>http://kernelsources.org:8080/source/history/freebsd/sys/dev/dpaa/bman_portals.c#18250ec6c089c0c50cbd9fd87d78e03ff89916df</link>
        <description>Replace calls to bus_generic_attach with bus_attach_childrenReviewed by:	impDifferential Revision:	https://reviews.freebsd.org/D47675

            List of files:
            /freebsd/sys/dev/dpaa/bman_portals.c</description>
        <pubDate>Fri, 06 Dec 2024 23:26:16 +0100</pubDate>
        <dc:creator>John Baldwin &lt;jhb@FreeBSD.org&gt;</dc:creator>
    </item>
<item>
        <title>fdafd315ad0d0f28a11b9fb4476a9ab059c62b92 - sys: Automated cleanup of cdefs and other formatting</title>
        <link>http://kernelsources.org:8080/source/history/freebsd/sys/dev/dpaa/bman_portals.c#fdafd315ad0d0f28a11b9fb4476a9ab059c62b92</link>
        <description>sys: Automated cleanup of cdefs and other formattingApply the following automated changes to try to eliminateno-longer-needed sys/cdefs.h includes as well as now-emptyblank lines in a row.Remove /^#if.*\n#endif.*\n#include\s+&lt;sys/cdefs.h&gt;.*\n/Remove /\n+#include\s+&lt;sys/cdefs.h&gt;.*\n+#if.*\n#endif.*\n+/Remove /\n+#if.*\n#endif.*\n+/Remove /^#if.*\n#endif.*\n/Remove /\n+#include\s+&lt;sys/cdefs.h&gt;\n#include\s+&lt;sys/types.h&gt;/Remove /\n+#include\s+&lt;sys/cdefs.h&gt;\n#include\s+&lt;sys/param.h&gt;/Remove /\n+#include\s+&lt;sys/cdefs.h&gt;\n#include\s+&lt;sys/capsicum.h&gt;/Sponsored by:		Netflix

            List of files:
            /freebsd/sys/dev/dpaa/bman_portals.c</description>
        <pubDate>Fri, 24 Nov 2023 21:12:57 +0100</pubDate>
        <dc:creator>Warner Losh &lt;imp@FreeBSD.org&gt;</dc:creator>
    </item>
<item>
        <title>685dc743dc3b5645e34836464128e1c0558b404b - sys: Remove $FreeBSD$: one-line .c pattern</title>
        <link>http://kernelsources.org:8080/source/history/freebsd/sys/dev/dpaa/bman_portals.c#685dc743dc3b5645e34836464128e1c0558b404b</link>
        <description>sys: Remove $FreeBSD$: one-line .c patternRemove /^[\s*]*__FBSDID\(&quot;\$FreeBSD\$&quot;\);?\s*\n/

            List of files:
            /freebsd/sys/dev/dpaa/bman_portals.c</description>
        <pubDate>Wed, 16 Aug 2023 19:54:36 +0200</pubDate>
        <dc:creator>Warner Losh &lt;imp@FreeBSD.org&gt;</dc:creator>
    </item>
<item>
        <title>1029dab63457f23dace4dab3b698f1c177939b93 - mi_switch(): clean up switch types and their usage</title>
        <link>http://kernelsources.org:8080/source/history/freebsd/sys/dev/dpaa/bman_portals.c#1029dab63457f23dace4dab3b698f1c177939b93</link>
        <description>mi_switch(): clean up switch types and their usageOverall, this is a non-functional change, except for kernels built withSCHED_STATS. However, the switch types are useful for communicating theintent of the caller.1. Ensure that every caller provides a type. In most cases, we upgrade   the basic yield to sched_relinquish() aka SWT_RELINQUISH.2. The case of sched_bind() is distinct, so add a new switch type SWT_BIND.3. Remove the two unused types, SWT_PREEMPT and SWT_SLEEPQTIMO.4. Remove SWT_NONE altogether and assert that callers always provide   a type flag.5. Reference the mi_switch(9) man page in the comments, as these flags   will be documented there.Reviewed by:	kib, markjSponsored by:	The FreeBSD FoundationDifferential Revision:	https://reviews.freebsd.org/D38184

            List of files:
            /freebsd/sys/dev/dpaa/bman_portals.c</description>
        <pubDate>Thu, 09 Feb 2023 16:40:29 +0100</pubDate>
        <dc:creator>Mitchell Horne &lt;mhorne@FreeBSD.org&gt;</dc:creator>
    </item>
<item>
        <title>686bcb5c14aba6e67524be84e125bfdd3514db9e - schedlock 4/4</title>
        <link>http://kernelsources.org:8080/source/history/freebsd/sys/dev/dpaa/bman_portals.c#686bcb5c14aba6e67524be84e125bfdd3514db9e</link>
        <description>schedlock 4/4Don&apos;t hold the scheduler lock while doing context switches.  Instead weunlock after selecting the new thread and switch within a spinlocksection leaving interrupts and preemption disabled to prevent localconcurrency.  This means that mi_switch() is entered with the threadlocked but returns without.  This dramatically simplifies schedulerlocking because we will not hold the schedlock while spinning onblocked lock in switch.This change has not been made to 4BSD but in principle it would bemore straightforward.Discussed with:	markjReviewed by:	kibTested by:	phoDifferential Revision: https://reviews.freebsd.org/D22778

            List of files:
            /freebsd/sys/dev/dpaa/bman_portals.c</description>
        <pubDate>Sun, 15 Dec 2019 22:26:50 +0100</pubDate>
        <dc:creator>Jeff Roberson &lt;jeff@FreeBSD.org&gt;</dc:creator>
    </item>
<item>
        <title>5763f79695f9b1ffacce55a8594cb7be08c3f31c - Merge ^/head r307383 through r307735.</title>
        <link>http://kernelsources.org:8080/source/history/freebsd/sys/dev/dpaa/bman_portals.c#5763f79695f9b1ffacce55a8594cb7be08c3f31c</link>
        <description>Merge ^/head r307383 through r307735.

            List of files:
            /freebsd/sys/dev/dpaa/bman_portals.c</description>
        <pubDate>Fri, 21 Oct 2016 18:29:40 +0200</pubDate>
        <dc:creator>Dimitry Andric &lt;dim@FreeBSD.org&gt;</dc:creator>
    </item>
<item>
        <title>f77405e334e38130afda97167c921422c3db18a5 - Use proper integer-pointer type conversions.</title>
        <link>http://kernelsources.org:8080/source/history/freebsd/sys/dev/dpaa/bman_portals.c#f77405e334e38130afda97167c921422c3db18a5</link>
        <description>Use proper integer-pointer type conversions.As part of an effort to extend Book-E to the 64-bit world, make the necessarychanges to the DPAA/dTSEC driver set to be integer-pointer conversion clean.This means no more casts to int, and use uintptr_t where needed.Since the NCSW source is effectively obsolete, direct changes to the source treeare safe.

            List of files:
            /freebsd/sys/dev/dpaa/bman_portals.c</description>
        <pubDate>Tue, 18 Oct 2016 02:55:15 +0200</pubDate>
        <dc:creator>Justin Hibbits &lt;jhibbits@FreeBSD.org&gt;</dc:creator>
    </item>
<item>
        <title>82aa34e6fa1cd5a4ad401383522daf51412ea4b2 - Merge ^/head r296007 through r296368.</title>
        <link>http://kernelsources.org:8080/source/history/freebsd/sys/dev/dpaa/bman_portals.c#82aa34e6fa1cd5a4ad401383522daf51412ea4b2</link>
        <description>Merge ^/head r296007 through r296368.

            List of files:
            /freebsd/sys/dev/dpaa/bman_portals.c</description>
        <pubDate>Fri, 04 Mar 2016 00:15:46 +0100</pubDate>
        <dc:creator>Dimitry Andric &lt;dim@FreeBSD.org&gt;</dc:creator>
    </item>
<item>
        <title>52259a98adba7622f236db46a330e61df0c84fb1 - MFH</title>
        <link>http://kernelsources.org:8080/source/history/freebsd/sys/dev/dpaa/bman_portals.c#52259a98adba7622f236db46a330e61df0c84fb1</link>
        <description>MFHSponsored by:	The FreeBSD Foundation

            List of files:
            /freebsd/sys/dev/dpaa/bman_portals.c</description>
        <pubDate>Wed, 02 Mar 2016 17:14:46 +0100</pubDate>
        <dc:creator>Glen Barber &lt;gjb@FreeBSD.org&gt;</dc:creator>
    </item>
<item>
        <title>0aeed3e99367bed5755068d9218cd8041644ff2b - Add support for the Freescale dTSEC DPAA-based ethernet controller.</title>
        <link>http://kernelsources.org:8080/source/history/freebsd/sys/dev/dpaa/bman_portals.c#0aeed3e99367bed5755068d9218cd8041644ff2b</link>
        <description>Add support for the Freescale dTSEC DPAA-based ethernet controller.Freescale&apos;s QorIQ line includes a new ethernet controller, based on theirDatapath Acceleration Architecture (DPAA).  This uses a combination of a Framemanager, Buffer manager, and Queue manager to improve performance across allinterfaces by being able to pass data directly between hardware accelerationinterfaces.As part of this import, Freescale&apos;s Netcomm Software (ncsw) driver is imported.This was an attempt by Freescale to create an OS-agnostic sub-driver formanaging the hardware, using shims to interface to the OS-specific APIs.  Thiswork was abandoned, and Freescale&apos;s primary work is in the Linux driver (dualBSD/GPL license).  Hence, this was imported directly to sys/contrib, rather thangoing through the vendor area.  Going forward, FreeBSD-specific changes may bemade to the ncsw code, diverging from the upstream in potentially incompatibleways.  An alternative could be to import the Linux driver itself, using thelinuxKPI layer, as that would maintain parity with the vendor-maintained driver.However, the Linux driver has not been evaluated for reliability yet, and mayhave issues with the import, whereas the ncsw-based driver in this commit wascompleted by Semihalf 4 years ago, and is very stable.Other SoC modules based on DPAA, which could be added in the future:* Security and Encryption engine (SEC4.x, SEC5.x)* RAID engineAdditional work to be done:* Implement polling mode* Test vlan support* Add support for the Pattern Matching Engine, which can do regular expression  matching on packets.This driver has been tested on the P5020 QorIQ SoC.  Others listed in thedtsec(4) manual page are expected to work as the same DPAA engine is included inall.Obtained from:	SemihalfRelnotes:	YesSponsored by:	Alex Perez/Inertial Computing

            List of files:
            /freebsd/sys/dev/dpaa/bman_portals.c</description>
        <pubDate>Mon, 29 Feb 2016 04:38:00 +0100</pubDate>
        <dc:creator>Justin Hibbits &lt;jhibbits@FreeBSD.org&gt;</dc:creator>
    </item>
</channel>
</rss>
