- Aug 17, 2022
-
-
Copy the files from the 5.10 kernel, except for imx8mm.dtsi and imx8mm-pinfunc.h which come from the freescale devicetree directory in the 5.15 kernel.
-
- Jun 07, 2022
-
-
Ioana Ciornei authored
It seems that there are circumstances when access to QBMAN through the software portals will be delayed. Accessing some lower speeds interfaces while also QBMAN commands are issued from the kernel will lead to software timeouts happening in the dpaa2-eth driver. What we have observed is that management commands like re-arming the interrupts on a specific channel, waiting for a dequeue response to be available etc, will take a longer time to complete. All these commands have to wait for a valid bit to be set for the command to be interpreted as successfully completed. Increase the maximum number of times the Linux kernel drivers will busy poll for a successful result of one of these commands. Signed-off-by:
Ioana Ciornei <ioana.ciornei@nxp.com>
-
- Jun 06, 2022
-
-
Ioana Ciornei authored
Enable CONFIG_SFP for the Linux SFP infrastructure. Also, enable the Lynx 28G SerDes PHY driver which supports runtime reconfiguration of SerDes lanes. Signed-off-by:
Ioana Ciornei <ioana.ciornei@nxp.com>
-
Ioana Ciornei authored
There is a downstream patch which adds a new interface type - PHY_INTERFACE_MODE_2500SGMII (which is really the same one as PHY_INTERFACE_MODE_2500BASEX). We backported from upstream the following phylink patch which, of course, does not treat the PHY_INTERFACE_MODE_2500SGMII interface mode in a switch case statement. 34ae2c09 ("net: phylink: add generic validate implementation") Because of this, we get the following build warning. drivers/net/phy/phylink.c: In function ‘phylink_get_linkmodes’: drivers/net/phy/phylink.c:322:2: warning: enumeration value ‘PHY_INTERFACE_MODE_2500SGMII’ not handled in switch [-Wswitch] 322 | switch (interface) { | ^~~~~~ Fix it by treating the new interface mode in the switch-case statement. Signed-off-by:
Ioana Ciornei <ioana.ciornei@nxp.com>
-
- Jun 02, 2022
-
-
Camelia Groza authored
This reverts commit 6809b4d8. The patch causes kernel crashes on DPAA2. Revert the changes and reimplement at a later time. Signed-off-by:
Camelia Groza <camelia.groza@nxp.com>
-
Vladimir Oltean authored
Since the blamed commit, VCAP filters can appear on more than one list. If their action is "trap", they are chained on ocelot->traps via filter->trap_list. This is in addition to their normal placement on the VCAP block->rules list head. Therefore, when we free a VCAP filter, we must remove it from all lists it is a member of, including ocelot->traps. There are at least 2 bugs which are direct consequences of this design decision. First is the incorrect usage of list_empty(), meant to denote whether "filter" is chained into ocelot->traps via filter->trap_list. This does not do the correct thing, because list_empty() checks whether "head->next == head", but in our case, head->next == head->prev == NULL. So we dereference NULL pointers and die when we call list_del(). Second is the fact that not all places that should remove the filter from ocelot->traps do so. One example is ocelot_vcap_block_remove_filter(), which is where we have the main kfree(filter). By keeping freed filters in ocelot->traps we end up in a use-after-free in felix_update_trapping_destinations(). Attempting to fix all the buggy patterns is a whack-a-mole game which makes the driver unmaintainable. Actually this is what the previous patch version attempted to do: https://patchwork.kernel.org/project/netdevbpf/patch/20220503115728.834457-3-vladimir.oltean@nxp.com/ but it introduced another set of bugs, because there are other places in which create VCAP filters, not just ocelot_vcap_filter_create(): - ocelot_trap_add() - felix_tag_8021q_vlan_add_rx() - felix_tag_8021q_vlan_add_tx() Relying on the convention that all those code paths must call INIT_LIST_HEAD(&filter->trap_list) is not going to scale. So let's do what should have been done in the first place and keep a bool in struct ocelot_vcap_filter which denotes whether we are looking at a trapping rule or not. Iterating now happens over the main VCAP IS2 block->rules. The advantage is that we no longer risk having stale references to a freed filter, since it is only present in that list. Fixes: e42bd4ed ("net: mscc: ocelot: keep traps in a list") Signed-off-by:
Vladimir Oltean <vladimir.oltean@nxp.com> Signed-off-by:
Jakub Kicinski <kuba@kernel.org> (cherry picked from commit e1846cff) Signed-off-by:
Vladimir Oltean <vladimir.oltean@nxp.com>
-
Vladimir Oltean authored
This reverts commit 8146e2b6. It was fixed differently upstream, we'll use that. Signed-off-by:
Vladimir Oltean <vladimir.oltean@nxp.com>
-
Vladimir Oltean authored
This reverts commit 0e9c8bdf. This was fixed differently in upstream, we're going for that approach. Signed-off-by:
Vladimir Oltean <vladimir.oltean@nxp.com>
-
Vladimir Oltean authored
Downstream commit bbd95975 ("selftests: ocelot: tc_flower_chains: reorder interfaces") got merged upstream as 93196ef9 ("selftests: ocelot: tc_flower_chains: use conventional interface names"), with the difference that interfaces are ordered differently and traffic flows in the other direction. Eliminate this difference by copy-pasting the upstream version of the selftest. Signed-off-by:
Vladimir Oltean <vladimir.oltean@nxp.com>
-
- May 31, 2022
-
-
Chancel Liu authored
In order to use micfil correctly, uart3 is disabled in relating dts files. Reviewed-by:
Shengjiu Wang <shengjiu.wang@nxp.com> Signed-off-by:
Chancel Liu <chancel.liu@nxp.com> Acked-by:
Jason Liu <jason.hui.liu@nxp.com>
-
Vabhav Sharma authored
Read entropy-delay property from device tree for TRNG configuration. update the value if entry is missing in DT. Signed-off-by:
Vabhav Sharma <vabhav.sharma@nxp.com> Reviewed-by:
Gaurav Jain <gaurav.jain@nxp.com> Reviewed-by:
Horia Geanta <horia.geanta@nxp.com>
-
Vabhav Sharma authored
Add imx6sx entropy-delay property. TRNG self test are run to determine the correct entropy delay. firmware test is executed with different voltage and temperature to identify the worst case value for entropy delay. after adding a margin value(1000),entropy delay should be at least 12000. Signed-off-by:
Vabhav Sharma <vabhav.sharma@nxp.com> Reviewed-by:
Horia Geanta <horia.geanta@nxp.com> Reviewed-by:
Gaurav Jain <gaurav.jain@nxp.com>
-
Vabhav Sharma authored
Add entropy delay property which defines the length (in system clocks) of each Entropy sample taken for TRNG configuration. Signed-off-by:
Vabhav Sharma <vabhav.sharma@nxp.com> Reviewed-by:
Horia Geanta <horia.geanta@nxp.com> Reviewed-by:
Varun Sethi <v.sethi@nxp.com>
-
- May 30, 2022
-
-
Camelia Groza authored
Process 'fixed-link' flags under ACPI boot and configure the MACs and PHYs appropriately. Signed-off-by:
Vikas Singh <vikas.singh@puresoftware.com> Signed-off-by:
Camelia Groza <camelia.groza@nxp.com>
-
Camelia Groza authored
Add the fwnode_fixed_phy_register() call. The call is similar to the existing fixed_phy_register(). Signed-off-by:
Vikas Singh <vikas.singh@puresoftware.com> Signed-off-by:
Camelia Groza <camelia.groza@nxp.com>
-
AnjanaSuraj authored
Add ACPI support for the DPAA Ethernet driver when connecting to a PHY. Signed-off-by:
AnjanaSuraj <anjana.r@puresoftware.com> Signed-off-by:
Camelia Groza <camelia.groza@nxp.com>
-
Vikas Singh authored
Add support to get the internal PHY present on MDIO under ACPI. Signed-off-by:
Vikas Singh <vikas.singh@puresoftware.com> Signed-off-by:
Camelia Groza <camelia.groza@nxp.com>
-
AnjanaSuraj authored
Add ACPI support for the FMan MAC driver so that it can be probed in both DT and ACPI cases. Signed-off-by:
AnjanaSuraj <anjana.r@puresoftware.com> Signed-off-by:
Camelia Groza <camelia.groza@nxp.com>
-
Vikas Singh authored
Add ACPI support for the FMan Port driver so that it can be probed in both DT and ACPI cases. Signed-off-by:
Vikas Singh <vikas.singh@puresoftware.com> Signed-off-by:
Camelia Groza <camelia.groza@nxp.com>
-
AnjanaSuraj authored
Add ACPI support for the Frame Manager driver so that it can be probed in both DT and ACPI cases. Signed-off-by:
AnjanaSuraj <anjana.r@puresoftware.com> Signed-off-by:
Camelia Groza <camelia.groza@nxp.com>
-
Vikas Singh authored
Set up reserved memory regions for the QBMan devices under ACPI using Contiguous Memory Allocations (CMA) at probe. Changing the following default CMA kernel configs is required at build: (a) Set CONFIG_CMA_SIZE_MBYTES to 256 (b) Set CONFIG_CMA_ALIGNMENT to 12 The qbman_init_private_mem() API is updated to indicate which device is calling it (BMan or QMan). Signed-off-by:
Vikas Singh <vikas.singh@puresoftware.com> Signed-off-by:
Camelia Groza <camelia.groza@nxp.com>
-
Vikas Singh authored
Add ACPI support for the Queue Manager Portal driver so that it can be probed in both DT and ACPI cases. Signed-off-by:
Vikas Singh <vikas.singh@puresoftware.com> Signed-off-by:
Camelia Groza <camelia.groza@nxp.com>
-
Vikas Singh authored
Add ACPI support for the Queue Manager CCSR driver so that it can be probed in both DT and ACPI cases. Signed-off-by:
Vikas Singh <vikas.singh@puresoftware.com> Signed-off-by:
Camelia Groza <camelia.groza@nxp.com>
-
Vikas Singh authored
Add ACPI support for the Buffer Manager Portal driver so that it can be probed in both DT and ACPI cases. Signed-off-by:
Vikas Singh <vikas.singh@puresoftware.com> Signed-off-by:
Camelia Groza <camelia.groza@nxp.com>
-
Vikas Singh authored
Add ACPI support for the Buffer Manager CCSR driver so that it can be probed in both DT and ACPI cases. Signed-off-by:
Vikas Singh <vikas.singh@puresoftware.com> Signed-off-by:
Camelia Groza <camelia.groza@nxp.com>
-
AnjanaSuraj authored
Add ACPI support for QorIQ PTP clock so that it can be probed in both DT and ACPI cases. Signed-off-by:
AnjanaSuraj <anjana.r@puresoftware.com> Signed-off-by:
Camelia Groza <camelia.groza@nxp.com>
-
- May 26, 2022
-
-
Ioana Ciornei authored
DMA unmap the Scatter/Gather table before going through the array to unmap and free each of the header and data chunks. This is so we do not touch the data between the dma_map and dma_unmap calls. Fixes: 3dc709e0cd47 ("dpaa2-eth: add support for software TSO") Signed-off-by:
Ioana Ciornei <ioana.ciornei@nxp.com> Signed-off-by:
David S. Miller <davem@davemloft.net> (cherry picked from commit 0a09c5b8cb8f75344da7d90c771b84f7cdeaea04) Signed-off-by:
Ioana Ciornei <ioana.ciornei@nxp.com>
-
Ioana Ciornei authored
The incorrect software annotation field was being used, swa->sg.sgt_size instead of swa->tso.sgt_size, which meant that the SGT buffer was unmapped with a wrong size. This is also confirmed by the DMA API debug prints which showed the following: [ 38.962434] DMA-API: fsl_dpaa2_eth dpni.2: device driver frees DMA memory with different size [device address=0x0000fffffafba740] [map size=224 bytes] [unmap size=0 bytes] [ 38.980496] WARNING: CPU: 11 PID: 1131 at kernel/dma/debug.c:973 check_unmap+0x58c/0x9b0 [ 38.988586] Modules linked in: [ 38.991631] CPU: 11 PID: 1131 Comm: iperf3 Not tainted 5.18.0-rc7-00117-g59130eeb2b8f #1972 [ 38.999970] Hardware name: NXP Layerscape LX2160ARDB (DT) Fixes: 3dc709e0cd47 ("dpaa2-eth: add support for software TSO") Signed-off-by:
Ioana Ciornei <ioana.ciornei@nxp.com> Signed-off-by:
David S. Miller <davem@davemloft.net> (cherry picked from commit d5f4e19a85670b4e5697654f4a4e086e064f8a47) Signed-off-by:
Ioana Ciornei <ioana.ciornei@nxp.com>
-
Ioana Ciornei authored
The TSO header was DMA unmapped before the virtual address was retrieved and then used to free the buffer. This meant that we were actually removing the DMA map and then trying to search for it to help in retrieving the virtual address. This lead to a invalid virtual address being used in the kfree call. Fix this by calling dpaa2_iova_to_virt() prior to the dma_unmap call. [ 487.231819] Unable to handle kernel paging request at virtual address fffffd9807000008 (...) [ 487.354061] Hardware name: SolidRun LX2160A Honeycomb (DT) [ 487.359535] pstate: a0400005 (NzCv daif +PAN -UAO -TCO -DIT -SSBS BTYPE=--) [ 487.366485] pc : kfree+0xac/0x304 [ 487.369799] lr : kfree+0x204/0x304 [ 487.373191] sp : ffff80000c4eb120 [ 487.376493] x29: ffff80000c4eb120 x28: ffff662240c46400 x27: 0000000000000001 [ 487.383621] x26: 0000000000000001 x25: ffff662246da0cc0 x24: ffff66224af78000 [ 487.390748] x23: ffffad184f4ce008 x22: ffffad1850185000 x21: ffffad1838d13cec [ 487.397874] x20: ffff6601c0000000 x19: fffffd9807000000 x18: 0000000000000000 [ 487.405000] x17: ffffb910cdc49000 x16: ffffad184d7d9080 x15: 0000000000004000 [ 487.412126] x14: 0000000000000008 x13: 000000000000ffff x12: 0000000000000000 [ 487.419252] x11: 0000000000000004 x10: 0000000000000001 x9 : ffffad184d7d927c [ 487.426379] x8 : 0000000000000000 x7 : 0000000ffffffd1d x6 : ffff662240a94900 [ 487.433505] x5 : 0000000000000003 x4 : 0000000000000009 x3 : ffffad184f4ce008 [ 487.440632] x2 : ffff662243eec000 x1 : 0000000100000100 x0 : fffffc0000000000 [ 487.447758] Call trace: [ 487.450194] kfree+0xac/0x304 [ 487.453151] dpaa2_eth_free_tx_fd.isra.0+0x33c/0x3e0 [fsl_dpaa2_eth] [ 487.459507] dpaa2_eth_tx_conf+0x100/0x2e0 [fsl_dpaa2_eth] [ 487.464989] dpaa2_eth_poll+0xdc/0x380 [fsl_dpaa2_eth] Fixes: 3dc709e0cd47 ("dpaa2-eth: add support for software TSO") Link: https://bugzilla.kernel.org/show_bug.cgi?id=215886 Signed-off-by:
Ioana Ciornei <ioana.ciornei@nxp.com> Signed-off-by:
David S. Miller <davem@davemloft.net> (cherry picked from commit 06d129946a71f3159b3b40ee95549183edf2c79d) Signed-off-by:
Ioana Ciornei <ioana.ciornei@nxp.com>
-
- May 25, 2022
-
-
Alice Yuan authored
In the imx8mp-evk-os08a20.dts, just single os08a20 sensor is used. The i2c2 node is used but the other i2c3 sensor's node should be removed. If i2c3 sensor's node is not removed, this will lead a inaccurate variable. When do grep os08a20 /sys/firmware/devicetree/base/soc@0//i2c@/*/compatible", the return value is not correct. Signed-off-by:
Alice Yuan <alice.yuan@nxp.com> Reviewed-by:
Robby Cai <robby.cai@nxp.com> Acked-by:
Jason Liu <jason.hui.liu@nxp.com>
-
Haibo Chen authored
For sensor FXLS8974CFR3, in default, the int1 pad is pull down. But on imx8ulp-9x9-evk board, this int1 pad is shared with other two sensor's interrupt pad. If int1 is pull down, this will block the other shared interrupt. So for shared interrupt pad connection, need to config all these three interrupt pin as open-drain. Signed-off-by:
Haibo Chen <haibo.chen@nxp.com> Reviewed-by:
Clark Wang <xiaoning.wang@nxp.com> Acked-by:
Jason Liu <jason.hui.liu@nxp.com>
-
Haibo Chen authored
This patch add the support to set interrupt pin as open-drain even this interrupt pin is not used at all. There is a specail case on imx8ulp-9x9 evk board. Three sensors share their interrupt pin, and this pin belong to M core side, need M image implement the interrupt handler. So for linux on A core side, driver can't use this shared interrupt pin. But need to make sure all the three sensors interrupt pin is open-drain, otherwise may impact the share interrupt pad behavior. Signed-off-by:
Haibo Chen <haibo.chen@nxp.com> Reviewed-by:
Clark Wang <xiaoning.wang@nxp.com> Acked-by:
Jason Liu <jason.hui.liu@nxp.com>
-
- May 23, 2022
-
-
Jacky Bai authored
Update the copyright and license info for this newly added file. Signed-off-by:
Jacky Bai <ping.bai@nxp.com> Reviewed-by:
Ye Li <ye.li@nxp.com>
-
Jacky Bai authored
On i.MX8ULP 9*9 EVK baord, the GPIO used for SW4 is changed to port PTF26, so update the gpio key property to correct it. Signed-off-by:
Jacky Bai <ping.bai@nxp.com> Reviewed-by:
Ye Li <ye.li@nxp.com>
-
- May 20, 2022
-
-
Tomas Paukrt authored
This patch fixes a bug in scatterlist processing that may cause incorrect AES block encryption/decryption. Fixes: 2e6d793e ("crypto: mxs-dcp - Use sg_mapping_iter to copy data") Signed-off-by:
Tomas Paukrt <tomaspaukrt@email.cz> Signed-off-by:
Herbert Xu <herbert@gondor.apana.org.au> (cherry picked from commit 28e9b6d8)
-
Shengjiu Wang authored
Previously we only assigned clock rate for 44kHz series sample rate. But meet issue on i.MX8MM 16KHz case, the calculated mclk_freq is 512KHz, but because root clock divider range limitation, the smallest mclk rate is 768Hkz, then cause issue. so also assign mclk_freq for 48kHz series sample rates Fixes: 3a650ee6 ("LF-5909-2: ASoC: imx-card: fix DSD mclk frequency") Signed-off-by:
Shengjiu Wang <shengjiu.wang@nxp.com> Reviewed-by:
Chancel Liu <chancel.liu@nxp.com> Acked-by:
Jason Liu <jason.hui.liu@nxp.com>
-
Daniel Baluta authored
kzalloc order of parameters is wrong. Reviewed-by:
Paul Olaru <paul.olaru@nxp.com> Signed-off-by:
Daniel Baluta <daniel.baluta@nxp.com> Acked-by:
Jason Liu <jason.hui.liu@nxp.com>
-
- May 19, 2022
-
-
Shenwei Wang authored
The SC_PM_CLK_MISC0 clock is not available for the resources of ENET0/1 on imx8dxl. Using the clock device compatible string to identify the platform and only initiate the enetX_rgmii_rx_clk clock for non imx8dxl platform. Signed-off-by:
Shenwei Wang <shenwei.wang@nxp.com> Reviewed-by:
Ranjani Vaidyanathan <ranjani.vaidyanathan@nxp.com> Reviewed-by:
Jacky Bai <ping.bai@nxp.com> Acked-by:
Jason Liu <jason.hui.liu@nxp.com>
-
Shenwei Wang authored
The LPUART hardware doesn't zero out the parity bit on the received characters. This behavior won't impact the use cases of CS8 because the parity bit is the 9th bit which is not currently used by software. But the parity bit for CS7 must be zeroed out by software in order to get the correct raw data. Signed-off-by:
Shenwei Wang <shenwei.wang@nxp.com> Reviewed-by:
Sherry Sun <sherry.sun@nxp.com> Acked-by:
Jason Liu <jason.hui.liu@nxp.com>
-
- May 18, 2022
-