summaryrefslogtreecommitdiff
path: root/linux (follow)
AgeCommit message (Collapse)Author
2019-04-11Update due to API changesSebastian Huber
2018-09-21Update to FreeBSD head 2018-06-01Sebastian Huber
Git mirror commit fb63610a69b0eb7f69a201ba05c4c1a7a2739cf9. Update #3472.
2018-01-23sdk_dpaa: What to do with tail queue drop?Sebastian Huber
The issue is this: static int dpaa_eth_macless_probe(struct platform_device *_of_dev) { [...] INIT_LIST_HEAD(&priv->dpa_fq_list); err = dpa_fq_probe_macless(dev, &priv->dpa_fq_list, RX); if (!err) err = dpa_fq_probe_macless(dev, &priv->dpa_fq_list, TX); if (err < 0) goto fq_probe_failed; [...] /* Add the FQs to the interface, and make them active */ /* For MAC-less devices we only get here for RX frame queues * initialization, which are the TX queues of the other * partition. * It is safe to rely on one partition to set the FQ taildrop * threshold for the TX queues of the other partition * because the ERN notifications will be received by the * partition doing qman_enqueue. */ err = dpa_fqs_init(dev, &priv->dpa_fq_list, true); if (err < 0) goto fq_alloc_failed; [...] The priv->dpa_fq_list contains a list of FQ_TYPE_RX_PCD and FQ_TYPE_TX items. I don't understand what the "For MAC-less devices we only get here for RX frame queues initialization" means in this context. The td_enable == true in dpa_fqs_init(). So, we have: int dpa_fq_init(struct dpa_fq *dpa_fq, bool td_enable) { [...] if (dpa_fq->fq_type == FQ_TYPE_TX || dpa_fq->fq_type == FQ_TYPE_TX_CONFIRM || dpa_fq->fq_type == FQ_TYPE_TX_CONF_MQ) { [...] initfq.we_mask |= QM_INITFQ_WE_OAC; [...] } if (td_enable) { initfq.we_mask |= QM_INITFQ_WE_TDTHRESH; qm_fqd_taildrop_set(&initfq.fqd.td, DPA_FQ_TD, 1); initfq.fqd.fq_ctrl = QM_FQCTRL_TDE; } The td_enable == true && dpa_fq->fq_type == FQ_TYPE_TX causes later: int qman_init_fq(struct qman_fq *fq, u32 flags, struct qm_mcc_initfq *opts) { [...] if (opts && (opts->we_mask & QM_INITFQ_WE_OAC)) { /* And can't be set at the same time as TDTHRESH */ if (opts->we_mask & QM_INITFQ_WE_TDTHRESH) return -EINVAL; } This aborts the initialization of the MAC-less driver. I don't understand why this path doesn't happen on the SDK Linux system. Update #3277.
2018-01-23sdk_dpaa: Port to RTEMSSebastian Huber
Update #3277.
2018-01-23sdk_dpaa: Import from QorIQ SDK LinuxSebastian Huber
http://git.freescale.com/git/cgit.cgi/ppc/sdk/linux.git Commit 1ae843c08261402b2c35d83422e4fa1e313611f4 (fsl-sdk-v2.0-1703). Update #3277.
2018-01-23dpaa: QMan portal only initializationSebastian Huber
Update #3277.
2018-01-23dpaa: Add and use bman_new_pool_for_bpid()Sebastian Huber
Update #3277.
2018-01-23dpaa: Use device tree throughout in BMan initSebastian Huber
Update #3277.
2018-01-23dpaa: Add and use SDK_DPAA_COMPAT_STATICSebastian Huber
Update #3277.
2018-01-23dpaa: Support FQ_TYPE_RX_PCDSebastian Huber
Update #3277.
2018-01-23dpaa: Disable unused bman_pool membersSebastian Huber
Update #3277.
2018-01-23linux/of_address.h: of_address_to_resource()Sebastian Huber
Translate address in of_address_to_resource(). Update #3277.
2017-10-26Fix general PowerPC buildSebastian Huber
2017-10-23dpaa: Reduce receive buffer seedSebastian Huber
Seed the receive buffers of each affine software portal only with 8 mclusters (16KiB) and not 128 (256KiB). We have processor count affine software portals, see dpaa_bp_seed().
2017-10-23dpaa: Improve QMan portal initializationSebastian Huber
Be less dependent on the device tree content.
2017-10-23dpaa: Reduce PFDR space from 32MiB to 16MiBSebastian Huber
2017-10-23dpaa: Add "libbsd,dedicated-portal" to QMan portalsSebastian Huber
By default, the network interfaces use a pool channel, see dpaa_get_channel() in dpaa_eth_priv_probe(). To enable a dedicated QMan software portal, use libbsd,dedicated-portal = "enabled";. This option is useful for special purpose 10Gbit/s Ethernet processing. / { soc: soc@ffe000000 { fman0: fman@400000 { enet7: ethernet@f2000 { libbsd,dedicated-portal = "enabled"; }; }; }; };
2017-10-23dpaa: Add "libbsd,dequeue" to QMan portalsSebastian Huber
The dequeue support for processor affine QMan portals may be explicitly disabled. The dequeue support is responsible for receiving frames and completion of frame transmission, e.g. buffer recycling. Without at least one enabled dequeue support, there will be no networking. / { qman-portals@ff6000000 { qman-portal@0 { libbsd,dequeue = "disabled"; }; }; };
2017-10-23dpaa: Set portal interrupt affinitySebastian Huber
2017-10-23Update to Linux 4.12Sebastian Huber
Linux baseline 6f7da290413ba713f0cdd9ff1a2a9bb129ef4f6c (v4.12).
2017-10-23dpaa: Add <soc/fsl/dpaa.h>Sebastian Huber
2017-10-23soc/qbman: Simplify bman_release()Sebastian Huber
Get the affine portal only once for the complete transaction. Signed-off-by: Sebastian Huber <sebastian.huber@embedded-brains.de>
2017-10-23soc/qman: Do not enable stashing without PAMUSebastian Huber
Do not enable stashing in the QMan software portal configuration (QCSPi_CFG[RE, SE]) in case the PAMU support is not configured. Signed-off-by: Sebastian Huber <sebastian.huber@embedded-brains.de>
2017-10-23qman_api.c: Prevent false clearing of IRQ statusSebastian Huber
Adding (p->irq_sources & ~QM_PIRQ_CSCI) to the clear mask means for example we clear the QM_PIRQ_EQCI unconditionally. This is a problem in case this interrupt happens after the read of the interrupt status and before the interrupt status clear.
2017-10-23dpaa: Disable QMAN_VOLATILE_FLAG_WAIT_INTSebastian Huber
2017-10-23dpaa: Avoid QMan work queueSebastian Huber
2017-10-23dpaa: Use receive checksum offloadSebastian Huber
2017-10-23dpaa: Enable preemption in qm_mr_process_task()Sebastian Huber
2017-10-23dpaa: Disable unused CGR codeSebastian Huber
2017-10-23Linux update to 4.12-rc1+Sebastian Huber
Linux baseline b23afd384801711ab6dbccd259cc14cb09a1dcaf.
2017-10-23qbman: Fix platform_get_irq() error checksSebastian Huber
2017-10-23Linux update to 4.11-rc5Sebastian Huber
Linux baseline a71c9a1c779f2499fb2afc0553e543f18aff6edf (4.11-rc5).
2017-10-23Import DPAA driver snapshotSebastian Huber
Imported from Freescale Linux repository git://git.freescale.com/ppc/upstream/linux.git commit 2774c204cd8bfc56a200ff4dcdfc9cdf5b6fc161. Linux compatibility layer is partly from FreeBSD.