- Jul 29, 2020
-
-
Lokesh Vutla authored
When PTP packets are received on ICSS ports, dual_emac firmware record the timestamps and appends the timestamp at the next 32 byte block after the end of packet. Add support for reading this timestamp from packet and pass it to userspace layer. Signed-off-by:
Lokesh Vutla <lokeshvutla@ti.com>
-
Lokesh Vutla authored
When PTP support is enabled in hsr firmware, the firmware timestamps the ptp packets that are going out via prueth ports. The timestamp value is copied to a shared memory location. After timestamping, a host irq is raised by the firmware as a notification to read the timestamp. Add support for handling this ptp tx irq, read the tx timestamp and pass it to userspace layer. Signed-off-by:
Lokesh Vutla <lokeshvutla@ti.com>
-
Lokesh Vutla authored
PTP tx timestamp events are raised to a different host irq that tx events. Update the DT bindings to include support for ptp tx interrupt for hsr firmware. Signed-off-by:
Lokesh Vutla <lokeshvutla@ti.com>
-
Lokesh Vutla authored
When PTP support is enabled in dual emac firmware, the firmware timestamps the ptp packets that are going out via prueth ports. The timestamp value is copied to a shared memory location. After timestamping, a host irq is raised by the firmware as a notification to read the timestamp. Add support for handling this ptp tx irq, read the tx timestamp and pass it to userspace layer. Signed-off-by:
Lokesh Vutla <lokeshvutla@ti.com> Signed-off-by:
Vignesh Raghavendra <vigneshr@ti.com>
-
Lokesh Vutla authored
PTP tx timestamp events are raised to a different host irq that tx events. Update the DT bindings to include support for ptp tx interrupt for dual emac firmware. Signed-off-by:
Lokesh Vutla <lokeshvutla@ti.com>
-
WingMan Kwok authored
Other than the normal receive timestamp, a packet received over a redundant network port may have an additional timestamp associated with. This is the transmit timestamp of the received packet over the other redundant network port due to the cut-through forwarding of underlying hardware device. The additional timestamp, or the red_hwtstamps in the shared redundant info area of the received skb, is forwarded to user space as SCM_RED_TIMESTAMPING type control message. Signed-off-by:
WingMan Kwok <w-kwok2@ti.com> Signed-off-by:
Murali Karicheri <m-karicheri2@ti.com> Signed-off-by:
Lokesh Vutla <lokeshvutla@ti.com>
-
WingMan Kwok authored
Redundant network info in control message of a submitted packet is consumed by the HSR/PRP layer to avoid duplication. Such packet will be sent out through the port indicated by the redundant network info. Signed-off-by:
WingMan Kwok <w-kwok2@ti.com> Signed-off-by:
Murali Karicheri <m-karicheri2@ti.com> Signed-off-by:
Lokesh Vutla <lokeshvutla@ti.com>
-
WingMan Kwok authored
Along the same idea as passing a packet's tx timestamp back to user space application through a socket's errqueue, this patch adds the passing of a packet's tx redundant network information back to user space application through a socket's errqueue. The redundant network information could include information from HSR TAG or PRP RCT, or the redundant network port on which the packet is sent. Signed-off-by:
WingMan Kwok <w-kwok2@ti.com> Signed-off-by:
Murali Karicheri <m-karicheri2@ti.com> Signed-off-by:
Lokesh Vutla <lokeshvutla@ti.com>
-
WingMan Kwok authored
This patch extends the skb shared info to include the redundant network information from packets sent/received in HSR/PRP networks. The redundant information includes information from the HSR TAG, PRP RCT and the redundant port on which the packet is sent/received. Redundant network information (HSR TAG or PRP RCT) saved in skb shared info struct is passed to user space application through control message area of the receive message struct. Signed-off-by:
WingMan Kwok <w-kwok2@ti.com> Signed-off-by:
Murali Karicheri <m-karicheri2@ti.com> Signed-off-by:
Lokesh Vutla <lokeshvutla@ti.com>
-
WingMan Kwok authored
For a received PTP event message, there may be a cut-through tx timestamp associated with it also. When the skb is stripped of the HSR tag and a new skb is created, the cut-through tx timestamp is saved in the shared redundant info area of the newly created skb. Signed-off-by:
WingMan Kwok <w-kwok2@ti.com> Signed-off-by:
Murali Karicheri <m-karicheri2@ti.com> Signed-off-by:
Lokesh Vutla <lokeshvutla@ti.com>
-
WingMan Kwok authored
Normally frames submitted to HSR interface are duplicated by the HSR layer and a copy of the duplicated frame is sent out through one slave port. This patch adds support of sending a submitted frame through a HSR slave port specified by the io_port field of the redundant network info submitted together with the frame without duplicating the frame, i.e. tx as directed by the redundant network info. In this case, the HSR tag of the out going frame is filled in by using information in the submitted redundant network info. Signed-off-by:
WingMan Kwok <w-kwok2@ti.com> Signed-off-by:
Murali Karicheri <m-karicheri2@ti.com> Signed-off-by:
Lokesh Vutla <lokeshvutla@ti.com>
-
WingMan Kwok authored
Add support of ethtool ops and net_device ops. Some ethtool ops or net_device ops need to be dispatched to slave port(s). Signed-off-by:
WingMan Kwok <w-kwok2@ti.com> Signed-off-by:
Murali Karicheri <m-karicheri2@ti.com> Signed-off-by:
Lokesh Vutla <lokeshvutla@ti.com>
-
WingMan Kwok authored
Before the tag is stripped from a received skb, the tag info and receive timestamp is saved in the shared info area of the skb so that upper core layer can pass the saved info to user application. In this patch the support of saving tag info and timestamp is added for HSR PTP packets over L2. Signed-off-by:
WingMan Kwok <w-kwok2@ti.com> Signed-off-by:
Murali Karicheri <m-karicheri2@ti.com> Signed-off-by:
Lokesh Vutla <lokeshvutla@ti.com>
-
WingMan Kwok authored
After a tag is created for an egress skb, the tag info and slave port info is saved in the skb's shared info area so that the saved info can be returned to user space application by upper core layer. In this patch, only the support of saving HSR tag info of HSR PTP over L2 skb is added. Signed-off-by:
WingMan Kwok <w-kwok2@ti.com> Signed-off-by:
Murali Karicheri <m-karicheri2@ti.com> Signed-off-by:
Lokesh Vutla <lokeshvutla@ti.com>
-
- Jul 28, 2020
-
-
LCPD Auto Merger authored
TI-Feature: platform_base TI-Branch: platform-ti-linux-5.4.y * 'platform-ti-linux-5.4.y' of ssh://bitbucket.itg.ti.com/lcpdpublicdom/platform : arm64: dts: ti: Add support for J7200 Common Processor Board arm64: dts: ti: Add support for J7200 SoC dt-bindings: arm: ti: Convert K3 board/soc bindings to DT schema dt-bindings: arm: ti: Add bindings for J7200 SoC Signed-off-by:
LCPD Auto Merger <lcpd_integration@list.ti.com>
-
Lokesh Vutla authored
Add support for J7200 Common Processor Board. The EVM architecture is very similar to J721E as follows: +------------------------------------------------------+ | +-------------------------------------------+ | | | | | | | Add-on Card 1 Options | | | | | | | +-------------------------------------------+ | | | | | | +-------------------+ | | | | | | | SOM | | | +--------------+ | | | | | | | | | | | Add-on | +-------------------+ | | | Card 2 | | Power Supply | | Options | | | | | | | | | +--------------+ | <--- +------------------------------------------------------+ Common Processor Board Common Processor board is the baseboard that has most of the actual connectors, power supply etc. A SOM (System on Module) is plugged on to the common processor board and this contains the SoC, PMIC, DDR and basic high speed components necessary for functionality. Note: * The minimum configuration required to boot up the board is System On Module(SOM) + Common Processor Board. * Since there is just a single SOM and Common Processor Board, we are maintaining common processor board as the base dts and SOM as the dtsi that we include. In the future as more SOM's appear, we should move common processor board as a dtsi and include configurations as dts. * All daughter cards beyond the basic boards shall be maintained as overlays. * Since J7200 is derivative of J721E re-using the CONFIG_ARCH_K3_J721E_SOC config for building J7200 dts files. Reviewed-by:
Suman Anna <s-anna@ti.com> Signed-off-by:
Lokesh Vutla <lokeshvutla@ti.com> Signed-off-by:
Peter Ujfalusi <peter.ujfalusi@ti.com>
-
Lokesh Vutla authored
The J7200 SoC is a part of the K3 Multicore SoC architecture platform. It is targeted for automotive gateway, vehicle compute systems, Vehicle-to-Vehicle (V2V) and Vehicle-to-Everything (V2X) applications. The SoC aims to meet the complex processing needs of modern embedded products. Some highlights of this SoC are: * Dual Cortex-A72s in a single cluster, two clusters of lockstep capable dual Cortex-R5F MCUs and a Centralized Device Management and Security Controller (DMSC). * Configurable L3 Cache and IO-coherent architecture with high data throughput capable distributed DMA architecture under NAVSS. * Integrated Ethernet switch supporting up to a total of 4 external ports in addition to legacy Ethernet switch of up to 2 ports. * Upto 1 PCIe-GEN3 controller, 1 USB3.0 Dual-role device subsystems, 20 MCANs, 3 McASP, eMMC and SD, OSPI/HyperBus memory controller, I3C and I2C, eCAP/eQEP, eHRPWM among other peripherals. * One hardware accelerator block containing AES/DES/SHA/MD5 called SA2UL management. See J7200 Technical Reference Manual (SPRUIU1, June 2020) for further details: https://www.ti.com/lit/pdf/spruiu1 Reviewed-by:
Suman Anna <s-anna@ti.com> Signed-off-by:
Lokesh Vutla <lokeshvutla@ti.com>
-
Lokesh Vutla authored
Convert TI K3 Board/SoC bindings to DT schema format. Signed-off-by:
Lokesh Vutla <lokeshvutla@ti.com>
-
Lokesh Vutla authored
The J7200 SoC is a part of the K3 Multicore SoC architecture platform. It is targeted for automotive gateway, vehicle compute systems, Vehicle-to-Vehicle (V2V) and Vehicle-to-Everything (V2X) applications. The SoC aims to meet the complex processing needs of modern embedded products. Some highlights of this SoC are: * Dual Cortex-A72s in a single cluster, two clusters of lockstep capable dual Cortex-R5F MCUs and a Centralized Device Management and Security Controller (DMSC). * Configurable L3 Cache and IO-coherent architecture with high data throughput capable distributed DMA architecture under NAVSS. * Integrated Ethernet switch supporting up to a total of 4 external ports in addition to legacy Ethernet switch of up to 2 ports. * Upto 1 PCIe-GEN3 controller, 1 USB3.0 Dual-role device subsystems, 20 MCANs, 3 McASP, eMMC and SD, OSPI/HyperBus memory controller, I3C and I2C, eCAP/eQEP, eHRPWM among other peripherals. * One hardware accelerator block containing AES/DES/SHA/MD5 called SA2UL management. See J7200 Technical Reference Manual (SPRUIU1, June 2020) for further details: https://www.ti.com/lit/pdf/spruiu1 Signed-off-by:
Lokesh Vutla <lokeshvutla@ti.com>
-
- Jul 24, 2020
-
-
LCPD Auto Merger authored
TI-Feature: platform_base TI-Branch: platform-ti-linux-5.4.y * 'platform-ti-linux-5.4.y' of ssh://bitbucket.itg.ti.com/lcpdpublicdom/platform : dmaengine: ti: k3-udma-glue: fix build warnng dmaengine: ti: k3-psil: fix deadlock on error path Signed-off-by:
LCPD Auto Merger <lcpd_integration@list.ti.com>
-
LCPD Auto Merger authored
TI-Feature: connectivity TI-Branch: connectivity-ti-linux-5.4.y * 'connectivity-ti-linux-5.4.y' of ssh://bitbucket.itg.ti.com/lcpdpublicdom/connectivity : net: ti: prueth_core: prp: drop rct for normal case net: ethernet: ti: am65-cpts: fix build warning net: ti: prueth_core: Add support for dumping FW's VLAN/MC table Signed-off-by:
LCPD Auto Merger <lcpd_integration@list.ti.com>
-
Grygorii Strashko authored
Fix build warning: k3-udma-glue.c: In function ‘k3_udma_glue_cfg_rx_flow’: k3-udma-glue.c:662:1: warning: label ‘err_ringrx_free’ defined but not used err_ringrx_free: ^~~~~~~~~~~~~~~ Fixes: 6a42ce8a ("dmaengine: ti: k3-udma: Switch to k3_ringacc_request_rings_pair") Signed-off-by:
Grygorii Strashko <grygorii.strashko@ti.com>
-
Grygorii Strashko authored
commit 172d59ec upstream. The mutex_unlock() is missed on error path of psil_get_ep_config() which causes deadlock. Add missed mutex_unlock(). Fixes: 8c6bb62f ("dmaengine: ti: k3 PSI-L remote endpoint configuration") Signed-off-by:
Grygorii Strashko <grygorii.strashko@ti.com> Acked-by:
Peter Ujfalusi <peter.ujfalusi@ti.com> Signed-off-by:
Vinod Koul <vkoul@kernel.org>
-
Currently RCT is part of the payload delivered to network stack which is not right. So drop Tag if transparent reception setting is IEC62439_3_TR_REMOVE_RCT. Fixes: a9b8608a ("net: ti: prueth_core: add HSR/PRP driver") Signed-off-by:
Murali Karicheri <m-karicheri2@ti.com> Signed-off-by:
Vignesh Raghavendra <vigneshr@ti.com>
-
Fix build warning for the case TI_AM65_CPTS=n Signed-off-by:
Grygorii Strashko <grygorii.strashko@ti.com> Signed-off-by:
Vignesh Raghavendra <vigneshr@ti.com>
-
Vignesh Raghavendra authored
Add support for userspace to dump VLAN and Multicast filter table maintained by PRUETH firmware via ethtool IOCTL's register dump interface. This is helpful in debugging issues around these filters. Signed-off-by:
Vignesh Raghavendra <vigneshr@ti.com> Acked-by:
Murali Karicheri <m-karicheri2@ti.com> Signed-off-by:
Vignesh Raghavendra <vigneshr@ti.com>
-
- Jul 23, 2020
-
-
LCPD Auto Merger authored
TI-Feature: connectivity TI-Branch: connectivity-ti-linux-5.4.y * 'connectivity-ti-linux-5.4.y' of ssh://bitbucket.itg.ti.com/lcpdpublicdom/connectivity : Revert "HACK: soc: ti: k3: add dma descriptors pool" net: ethernet: ti: j721e-cpsw-virt-mac: use lkml dma desc pool api net: ethernet: ti: icssg_prueth: use lkml dma desc pool api net: ethernet: ti: am65-cpsw: use lkml dma desc pool api net: ethernet: ti: add lkml version of dma descriptors pool net: ethernet: ti: am65-cpsw-nuss: enable am65x sr2.0 support Revert "net: ethernet: ti: am65-cpsw-nuss: enable am65x sr2.0 support" net: ethernet: ti: am65-cpsw-ethtool: configured critical setting only when no running netdevs net: ethernet: ti: am65-cpsw-ethtool: skip hw cfg when change p0-rx-ptype-rrobin net: ethernet: ti: am65-cpsw-nuss: fix ports mac sl initialization net: ethernet: ti: am65-cpsw: move to pf_p0_rx_ptype_rrobin init in probe ethernet: ti: am65-cpsw-qos: Use struct_size() in devm_kzalloc() net: ethernet: ti: am65-cpsw-nuss: use of_platform_device_create() for mdio dt-binding: ti: am65x-mcu-cpsw: sync to lkml arm64: dts: ti: k3-am65-mcu-cpsw: sync to lkml arm64: dts: ti: k3-j721e-mcu-cpsw: sync to lkml net: ethernet: ti: am65-cpsw: sync to lkml Signed-off-by:
LCPD Auto Merger <lcpd_integration@list.ti.com>
-
Dan Murphy authored
Merge tag 'v5.4.52' of http://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable into ti-linux-5.4.y This is the 5.4.52 stable release * tag 'v5.4.52' of http://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable : (920 commits) Linux 5.4.52 s390/maccess: add no DAT mode to kernel_write s390: Change s390_kernel_write() return type to match memcpy() pwm: jz4740: Fix build failure perf scripts python: exported-sql-viewer.py: Fix unexpanded 'Find' result perf scripts python: exported-sql-viewer.py: Fix zero id in call tree 'Find' result perf scripts python: exported-sql-viewer.py: Fix zero id in call graph 'Find' result perf scripts python: export-to-postgresql.py: Fix struct.pack() int argument dm writecache: reject asynchronous pmem devices blk-mq: consider non-idle request as "inflight" in blk_mq_rq_inflight() s390/mm: fix huge pte soft dirty copying s390/setup: init jump labels before command line parsing ARC: elf: use right ELF_ARCH ARC: entry: fix potential EFA clobber when TIF_SYSCALL_TRACE mmc: meson-gx: limit segments to 1 when dram-access-quirk is needed dm: use noio when sending kobject event drm/amdgpu: don't do soft recovery if gpu_recovery=0 drm/radeon: fix double free btrfs: fix double put of block group with nocow btrfs: fix fatal extent_buffer readahead vs releasepage race ... Signed-off-by:
Dan Murphy <dmurphy@ti.com> # Conflicts: # drivers/ntb/test/ntb_perf.c # drivers/ntb/test/ntb_tool.c
-
- Jul 21, 2020
-
-
LCPD Auto Merger authored
TI-Feature: platform_base TI-Branch: platform-ti-linux-5.4.y * 'platform-ti-linux-5.4.y' of ssh://bitbucket.itg.ti.com/lcpdpublicdom/platform : (26 commits) dmaengine: ti: k3-psil: Use soc_device_match to get the psil map dmaengine: ti: k3-udma: Switch to k3_ringacc_request_rings_pair soc: ti: k3-ringacc: separate soc specific initialization soc: ti: k3-ringacc: add request pair of rings api. soc: ti: k3-ringacc: add ring's flags to dump soc: ti: k3-ringacc: Move state tracking variables under a struct dt-bindings: soc: ti: k3-ringacc: convert bindings to json-schema dmaengine: ti: k3-udma: Query throughput level information from hardware dmaengine: ti: k3-udma: Use defines for capabilities register parsing dmaengine: ti: k3-udma: Use udma_chan instead of tchan/rchan for IO functions dmaengine: ti: k3-udma-private: Use udma_read/write for register access dmaengine: ti: k3-udma: Use common defines for TCHANRT/RCHANRT registers dmaengine: ti: k3-udma: Do not use ring_get_occ in udma_pop_from_ring dmaengine: ti: k3-udma: Remove dma_sync_single calls for descriptors dmaengine: ti: k3-udma: Fix cleanup code for alloc_chan_resources dmaengine: ti: k3-udma: Fix the running channel handling in alloc_chan_resources dmaengine: ti: k3-udma: Use proper return code in alloc_chan_resources dmaengine: ti: k3-udma: Remove udma_chan.in_ring_cnt dmaengine: ti: k3-udma: Add missing dma_sync call for rx flush descriptor dmaengine: Create debug directories for DMA devices ... Signed-off-by:
LCPD Auto Merger <lcpd_integration@list.ti.com>
-
Grygorii Strashko authored
This reverts commit c37937f4 . Replaced with LKML version. Signed-off-by:
Grygorii Strashko <grygorii.strashko@ti.com>
-
Grygorii Strashko authored
Use lkml dma desc pool api to sync MCU CPSW code to LKML version as max as possible. Signed-off-by:
Grygorii Strashko <grygorii.strashko@ti.com>
-
Grygorii Strashko authored
Use lkml dma desc pool api to sync MCU CPSW code to LKML version as max as possible. Signed-off-by:
Grygorii Strashko <grygorii.strashko@ti.com>
-
Grygorii Strashko authored
commit 93a76530 upstream. Use lkml dma desc pool api to sync MCU CPSW code to LKML version as max as possible. Used initial LKML commit to identify that code already upstream. Signed-off-by:
Grygorii Strashko <grygorii.strashko@ti.com>
-
Grygorii Strashko authored
commit 93a76530 upstream. Add lkml version of dma descriptors pool to sync MCU CPSW code to LKML version as max as possible. Used initial LKML commit to identify that code already upstream. Signed-off-by:
Grygorii Strashko <grygorii.strashko@ti.com>
-
Grygorii Strashko authored
commit 38389aa6 upstream. The AM65x SR2.0 MCU CPSW has fixed errata i2027 "CPSW: CPSW Does Not Support CPPI Receive Checksum (Host to Ethernet) Offload Feature". This errata also fixed for J271E SoC. Use SOC bus data for K3 SoC identification and apply i2027 errata w/a only for the AM65x SR1.0 SoC. Signed-off-by:
Grygorii Strashko <grygorii.strashko@ti.com> Signed-off-by:
David S. Miller <davem@davemloft.net>
-
Grygorii Strashko authored
This reverts commit a7a0fbd2 . Signed-off-by:
Grygorii Strashko <grygorii.strashko@ti.com>
-
Grygorii Strashko authored
commit 3d0fda90 upstream. Ensure that critical setting can only be configured when there are no running netdevs - all ports are down. Signed-off-by:
Grygorii Strashko <grygorii.strashko@ti.com> Signed-off-by:
David S. Miller <davem@davemloft.net>
-
Grygorii Strashko authored
commit 7d58d3eb upstream. Skip HW configuration when p0-rx-ptype-rrobin is changed as it will be done by .ndev_open(), Signed-off-by:
Grygorii Strashko <grygorii.strashko@ti.com> Signed-off-by:
David S. Miller <davem@davemloft.net>
-
Grygorii Strashko authored
commit d6d0aeaf upstream. The MAC SL has to be initialized for each port otherwise am65_cpsw_nuss_slave_disable_unused() will crash for disabled ports. Signed-off-by:
Grygorii Strashko <grygorii.strashko@ti.com> Signed-off-by:
David S. Miller <davem@davemloft.net>
-
Grygorii Strashko authored
commit 51824048 upstream. The pf_p0_rx_ptype_rrobin is global parameter so move its initialization in probe. Signed-off-by:
Grygorii Strashko <grygorii.strashko@ti.com> Signed-off-by:
David S. Miller <davem@davemloft.net>
-