]> Gitweb @ Texas Instruments - Open Source Git Repositories - git.TI.com/gitweb - ti-linux-kernel/ti-linux-kernel-next.git/log
ti-linux-kernel/ti-linux-kernel-next.git
4 years agoMerged TI feature rpmsg_next into ti-linux-4.19.y-next ti-linux-4.19.y-next-20190912
LCPD Auto Merger [Thu, 12 Sep 2019 07:24:40 +0000 (02:24 -0500)]
Merged TI feature rpmsg_next into ti-linux-4.19.y-next

TI-Feature: rpmsg_next
TI-Tree: git://git.ti.com/rpmsg/rpmsg.git
TI-Branch: rpmsg-ti-linux-4.19.y-next

* 'rpmsg-ti-linux-4.19.y-next' of git://git.ti.com/rpmsg/rpmsg:
  soc: ti: pruss: update pruss_get() to retrieve a PRUSS id
  soc: ti: pruss: store the pruss instance id
  remoteproc/pru: Use an enum for PRU core type

Signed-off-by: LCPD Auto Merger <lcpd_integration@list.ti.com>
4 years agoMerged TI feature connectivity_next into ti-linux-4.19.y-next
LCPD Auto Merger [Thu, 12 Sep 2019 07:24:38 +0000 (02:24 -0500)]
Merged TI feature connectivity_next into ti-linux-4.19.y-next

TI-Feature: connectivity_next
TI-Tree: ssh://git@bitbucket.itg.ti.com/~a0875516/ti-linux-kernel.git
TI-Branch: connectivity-next

* 'connectivity-next' of ssh://bitbucket.itg.ti.com/~a0875516/ti-linux-kernel:
  net: ethernet: ti: introduce j721e virt cpsw-nuss mac driver
  dt-bindings: net: Add binding for ti,j721e-cpsw-virt-mac device
  rpmsg-kdrv: add support for remote eth device
  dmaengine: ti: k3-navss-udma: add support for remote/virt udma channels
  dmaengine: ti: k3-navss-udma: drop need_tisci_free
  dmaengine: ti: k3-navss-udma: fix k3_nav_udmax_release_rx_flow()
  dmaengine: ti: k3-navss-udma: fix gp rflow freeing in k3_nav_udmax_release_rx_chn()
  dmaengine: ti: k3-navss-udma: fix access to udmax in k3_nav_udmax_release_rx_chn()

Signed-off-by: LCPD Auto Merger <lcpd_integration@list.ti.com>
4 years agosoc: ti: pruss: update pruss_get() to retrieve a PRUSS id
Suman Anna [Mon, 17 Jun 2019 21:15:41 +0000 (16:15 -0500)]
soc: ti: pruss: update pruss_get() to retrieve a PRUSS id

Update the pruss_get() function to take in an additional integer
pointer argument in which the PRUSS instance id is filled in and
provided back to the callers. This allows the drivers to add some
instance-specific logic/customization in their code, as the PRUSS
handle is not useful to build this logic.

The already existing usage within both the regular PRU Ethernet
and the ICSSG PRU Ethernet drivers have also been updated accordingly,
and this will cater to its need for supporting switching between
different Ethernet protocols dynamically per instance. The invocation
within the PRU Soft UART driver has also been updated, with this
driver not needing the PRUSS instance id at present.

Signed-off-by: Suman Anna <s-anna@ti.com>
4 years agosoc: ti: pruss: store the pruss instance id
Suman Anna [Thu, 2 May 2019 22:18:05 +0000 (17:18 -0500)]
soc: ti: pruss: store the pruss instance id

Add logic to the PRUSS platform driver to store the instance id
of a PRUSS instance. This is being added to enable support for
the PRU Ethernet driver to be able to switch between different
Ethernet protocols dynamically per instance.

The values for instance ids are not always zero-indexed on all
SoCs, they were chosen to match the numbering used in the TRMs.
The instance ids are computed assigned using the PRUSS memory
region base address lookup table. The base address matching
logic is not robust for long-term for newer SoCs, but is okay
for currently supported SoCs as all the addresses are unique.
This is done this way to retain the current usage of minimal
static data and to avoid having to introduce the instance
specific static data just for the instance id data.

Signed-off-by: Suman Anna <s-anna@ti.com>
4 years agoremoteproc/pru: Use an enum for PRU core type
Suman Anna [Wed, 11 Sep 2019 20:00:23 +0000 (15:00 -0500)]
remoteproc/pru: Use an enum for PRU core type

The K3 SoCs have different types of PRU cores and the is_rtu and
is_tx_pru flags are used to identify these at present. Replace
these with a single pru_type enum.

Signed-off-by: Suman Anna <s-anna@ti.com>
4 years agoMerged TI feature rpmsg into ti-linux-4.19.y
LCPD Auto Merger [Wed, 11 Sep 2019 23:38:10 +0000 (18:38 -0500)]
Merged TI feature rpmsg into ti-linux-4.19.y

* 'rpmsg-ti-linux-4.19.y-intg' of git://git.ti.com/rpmsg/rpmsg:
  arm64: dts: ti: k3-j721e-main: Add ICSSG MDIO nodes
  arm64: dts: ti: k3-j721e-main: Add PRU system events for virtio
  arm64: dts: ti: k3-j721e-main: Add ICSSG nodes
  remoteproc/pru: Add support for various PRU cores on K3 J721E SoCs
  dt-bindings: remoteproc: pru: Update bindings for K3 J721E SoCs
  irqchip/irq-pruss-intc: Add support for ICSSG INTC on K3 J721E SoCs
  dt-bindings: irqchip: pruss-intc: Update bindings for K3 J721E SoCs
  soc: ti: pruss: Enable support for ICSSG subsystems on K3 J721E SoCs
  dt-bindings: soc: ti: pruss: Update bindings for K3 J721E SoCs

Signed-off-by: LCPD Auto Merger <lcpd_integration@list.ti.com>
4 years agoarm64: dts: ti: k3-j721e-main: Add ICSSG MDIO nodes
Suman Anna [Mon, 9 Sep 2019 21:08:22 +0000 (16:08 -0500)]
arm64: dts: ti: k3-j721e-main: Add ICSSG MDIO nodes

The ICSSGs on K3 J721E SoCs contain an MDIO controller that can
be used to control external PHYs associated with the Industrial
Ethernet peripherals within each ICSSG instance. The MDIO module
used within the ICSSG is similar to the MDIO Controller used
in TI Davinci SoCs. A bus frequency of 1 MHz is chosen for the
MDIO operations.

The nodes are added to the common k3-j721e-main.dtsi file and are
disabled. These need to be enabled in the respective board files
supporting J721E SoCs and where the ethernet is pinned out and
connected properly.

Signed-off-by: Suman Anna <s-anna@ti.com>
Reviewed-by: Roger Quadros <rogerq@ti.com>
4 years agoarm64: dts: ti: k3-j721e-main: Add PRU system events for virtio
Suman Anna [Mon, 9 Sep 2019 20:52:37 +0000 (15:52 -0500)]
arm64: dts: ti: k3-j721e-main: Add PRU system events for virtio

Two PRU system events "vring" and "kick" have been added to each
PRU and RTU node in each of the ICSSG0 and ICSSG1 remote processor
subsystems to enable the virtio/rpmsg communication between MPU and
that PRU/RTU core. No events have been added to the Tx_PRU cores
at present. The additions are done in the base k3-j721e-main.dtsi,
and so are inherited by all the K3 J721E boards.

The PRU system events is the preferred approach over using TI
mailboxes, as it eliminates an external peripheral access from
the PRU/RTU-side, and keeps the interrupt generation internal to
the ICSSG. The difference from MPU would be minimal in using one
versus the other.

Mailboxes can still be used if desired, but currently there is
no support on firmware-side for K3 SoCs to use mailboxes. Either
approach would require that an appropriate firmware image is
loaded/booted on the PRU.

Signed-off-by: Suman Anna <s-anna@ti.com>
Reviewed-by: Roger Quadros <rogerq@ti.com>
4 years agoarm64: dts: ti: k3-j721e-main: Add ICSSG nodes
Suman Anna [Mon, 9 Sep 2019 18:54:46 +0000 (13:54 -0500)]
arm64: dts: ti: k3-j721e-main: Add ICSSG nodes

Add the DT nodes for the ICSSG0 and ICSSG1 processor subsystems that are
present on the K3 J721E SoCs. The two ICSSGs are identical to each other
for the most part, with the ICSSG1 supporting slightly enhanced features
for supporting SGMII PRU Ethernet. Each ICSSG instance is represented by
a pruss-soc-bus node and a child PRUSS subsystem node. These nodes are
enabled by default.

The ICSSGs on K3 J721E SoCs are revised versions of the ICSSG on the
AM65x SoCs. The PRU IRAMs are slightly smaller, and the IP includes
two new auxiliary PRU cores called Tx_PRUs. The Tx_PRUs have 6 KB of
IRAMs and leverage the same host interrupts as the regular PRU cores.

The ICSSG subsystem node contains the entire address space and the
various interrupts generated towards the main MPU. The various
sub-modules of the ICSSG are represented as individual child nodes (so
platform devices themselves) of the PRUSS subsystem node. These include
the two PRU cores, two RTU cores, two Tx_PRU cores and the interrupt
controller. The two Industrial Ethernet Peripheral (IEP) instances, the
Real Time Media Independent Interface controller (MII_RT), the Gigabit
capable MII_G_RT and the CFG sub-module are represented as syscon nodes.
All the Data RAMs are represented within a child node of its own named
'memories' without any compatible. The CFG sub-module provides two
internal clock muxes, and these are represented by the coreclk_mux and
iepclk_mux nodes.

The DT nodes use all standard properties. The regs property in the
PRU/RTU nodes define the addresses for the Instruction RAM, the Debug
and Control sub-modules for that PRU core. The firmware for each
PRU/RTU/Tx_PRU core is defined through a 'firmware-name' property.
The default clock sources for the IEP clocks are also defined using
the assigned-clock-parents property.

The default names for the firmware images for each PRU, RTU and Tx_PRU
cores are defined as follows (these can be adjusted either in derivative
board dts files or through sysfs at runtime if required):
  ICSSG0 PRU0 Core: j7-pru0_0-fw ; ICSSG0 RTU0 Core: j7-rtu0_0-fw
  ICSSG0 PRU1 Core: j7-pru0_1-fw ; ICSSG0 RTU1 Core: j7-rtu0_1-fw
  ICSSG1 PRU0 Core: j7-pru1_0-fw ; ICSSG1 RTU0 Core: j7-rtu1_0-fw
  ICSSG1 PRU1 Core: j7-pru1_1-fw ; ICSSG1 RTU1 Core: j7-rtu1_1-fw
  ICSSG0 Tx_PRU0 Core: j7-txpru0_0-fw ; ICSSG0 Tx_PRU1 Core: j7-txpru0_1-fw
  ICSSG1 Tx_PRU0 Core: j7-txpru1_0-fw ; ICSSG1 Tx_PRU1 Core: j7-txpru1_1-fw

Signed-off-by: Suman Anna <s-anna@ti.com>
Reviewed-by: Roger Quadros <rogerq@ti.com>
4 years agoremoteproc/pru: Add support for various PRU cores on K3 J721E SoCs
Suman Anna [Wed, 4 Sep 2019 21:16:59 +0000 (16:16 -0500)]
remoteproc/pru: Add support for various PRU cores on K3 J721E SoCs

The K3 J721E family of SoCs have a revised version of the AM65x ICSSG IP
and contains two instances of this newer ICSSG IP. Each ICSSG processor
subsystem contains 2 primary PRU cores, 2 auxiliary PRU cores called RTUs,
and 2 new auxiliary cores called Transmit PRUs (Tx_PRUs).

Each RTU and Tx_PRU cores have their own dedicated IRAM (smaller than
a PRU), Control and debug feature sets, but is different in terms of
sub-modules integrated around it and does not have the full capabilities
associated with a PRU core. The RTU core is typically used to aid a
PRU core in accelerating data transfers, while the Tx_PRU cores is
normally used to control the TX L2 FIFO if enabled in Ethernet
applications. Both can also be used to run independent applications.
The RTU and Tx_PRU cores though share the same Data RAMs as the PRU
cores, so the memories have to be partitioned carefully between different
applications. The new cores also support a new sub-module called Task
Manager to support two different context thread executions.

Enhance the existing PRU remoteproc driver to support these new PRU
and RTU cores by using specific compatibles. The cores have the same
memory copying limitations as on AM65x, so reuses the custom ELF loader
function. The initial names for the firmware images for each PRU core
are retrieved from DT nodes, and can be adjusted through sysfs if
required.

Signed-off-by: Suman Anna <s-anna@ti.com>
Reviewed-by: Roger Quadros <rogerq@ti.com>
4 years agodt-bindings: remoteproc: pru: Update bindings for K3 J721E SoCs
Suman Anna [Wed, 4 Sep 2019 20:33:24 +0000 (15:33 -0500)]
dt-bindings: remoteproc: pru: Update bindings for K3 J721E SoCs

The K3 J721E SoCs have a revised version of the ICSSG IP present on K3
AM65x SoCs. The ICSSG IP on K3 J721E SoCs has the same set of two PRU
cores, two RTU cores and a new pair of custom auxiliary PRU cores called
Transmit PRUs (Tx_PRUs). Update the PRU remoteproc bindings for these
PRU cores on these newer ICSSG instances.

Signed-off-by: Suman Anna <s-anna@ti.com>
Reviewed-by: Roger Quadros <rogerq@ti.com>
4 years agoirqchip/irq-pruss-intc: Add support for ICSSG INTC on K3 J721E SoCs
Suman Anna [Wed, 4 Sep 2019 00:53:24 +0000 (19:53 -0500)]
irqchip/irq-pruss-intc: Add support for ICSSG INTC on K3 J721E SoCs

The K3 J721E SoCs have a revised version of the ICSSG IP present on K3
AM65x SoCs. The J721E ICSSG INTC is identical to that of the AM65x ICSSG
INTC despite the presence of two new additional auxiliary Tx_PRU cores.
The Tx_PRU cores reuse the same host interrupts as the regular PRU cores,
so the recommended approach is to use the interrupt mapping configuration
through the corresponding PRU core.

Enhance the PRUSS INTC driver to add support for this ICSSG INTC instance.
This support is adding using a new SoC-specific compatible and reusing
the AM65x support code.

Signed-off-by: Suman Anna <s-anna@ti.com>
Reviewed-by: Roger Quadros <rogerq@ti.com>
4 years agodt-bindings: irqchip: pruss-intc: Update bindings for K3 J721E SoCs
Suman Anna [Wed, 4 Sep 2019 00:41:11 +0000 (19:41 -0500)]
dt-bindings: irqchip: pruss-intc: Update bindings for K3 J721E SoCs

The K3 J721E SoCs have a revised version of the ICSSG IP present on K3
AM65x SoCs. The ICSSG interrupt controller is identical to that of the
INTC on AM65x SoCs despite the presence of two additional Tx_PRU cores,
and supports 20 host interrupts and 160 input events from various SoC
interrupt sources. Update the PRUSS interrupt controller bindings for
this INTC on J721E SoCs.

Signed-off-by: Suman Anna <s-anna@ti.com>
Reviewed-by: Roger Quadros <rogerq@ti.com>
4 years agosoc: ti: pruss: Enable support for ICSSG subsystems on K3 J721E SoCs
Suman Anna [Wed, 21 Aug 2019 00:39:43 +0000 (19:39 -0500)]
soc: ti: pruss: Enable support for ICSSG subsystems on K3 J721E SoCs

The K3 J721E family of SoCs have a revised version of the PRU-ICSS (ICSSG)
processor subsystem present on K3 AM65x SoCs. These SoCs contain typically
two ICSSG instances named ICSSG0 and ICSSG1. The two ICSSGs are identical
to each other for the most part with minor SoC integration differences and
capabilities. The ICSSG1 supports slightly enhanced features like SGMII
mode Ethernet, while the ICSSG0 instance is limited to MII mode only.

The ICSSGs on K3 J721E SoCs have two new additional auxiliary PRU cores
called Tx_PRUs in addition to the PRU and RTU cores present within the
K3 AM65x ICSSG instances. There is no change in the Interrupt Controller
w.r.t AM65x. All other integration aspects are very similar to the ICSSGs
on AM65x SoCs.

The existing pruss_soc_bus and pruss platform drivers have been updated to
support these new ICSSG instances through new J721E specific compatibles.

Signed-off-by: Suman Anna <s-anna@ti.com>
Reviewed-by: Roger Quadros <rogerq@ti.com>
4 years agodt-bindings: soc: ti: pruss: Update bindings for K3 J721E SoCs
Suman Anna [Wed, 21 Aug 2019 00:24:32 +0000 (19:24 -0500)]
dt-bindings: soc: ti: pruss: Update bindings for K3 J721E SoCs

The K3 J721E SoCs have a revised version of the ICSSG IP present on
AM65x. One of the chief differences is the presence of an additional
PRU core per slice called a Tx_PRU, while retaining almost all of the
sub-modules from AM65x. Update the PRUSS bindings for these newer ICSSG
instances.

Signed-off-by: Suman Anna <s-anna@ti.com>
Reviewed-by: Roger Quadros <rogerq@ti.com>
4 years agoMerged TI feature graphics into ti-linux-4.19.y
LCPD Auto Merger [Tue, 10 Sep 2019 21:14:01 +0000 (16:14 -0500)]
Merged TI feature graphics into ti-linux-4.19.y

* 'graphics-ti-linux-4.19.y' of ssh://bitbucket.itg.ti.com/lcpdpublicdom/graphics:
  gpu: HACK: Disable main_i2c4
  gpu: Add carveouts for virtual GPU driver

Signed-off-by: LCPD Auto Merger <lcpd_integration@list.ti.com>
4 years agogpu: HACK: Disable main_i2c4
Erick Narvaez [Thu, 5 Sep 2019 16:07:27 +0000 (11:07 -0500)]
gpu: HACK: Disable main_i2c4

Disables main_i2c4 to use it as an interrupt for a guest GPU. Since the
main GPU interrupt is already taken by root-cell in the jailhouse
configuration, a workaround was made to forward the interrupt to the
guests via the i2c4. This will be reverted once CLEC based routing is
enabled.

Signed-off-by: Erick Narvaez <e-narvaez@ti.com>
Signed-off-by: Gowtham Tammana <g-tammana@ti.com>
4 years agogpu: Add carveouts for virtual GPU driver
Erick Narvaez [Thu, 5 Sep 2019 16:07:26 +0000 (11:07 -0500)]
gpu: Add carveouts for virtual GPU driver

The GPU can be used by multiple virtual machines in a hypervisor
environment. Part of the setup requires that the GPU has contiguous
memory allocated for the host and guest firmwares, where each region is
the same size.

Add the necessary carveouts to have the GPU firmware memory regions
reserved only if using the jailhouse setup.

Requires GPU to be enabled on the host/root-cell, so re-enable it in
the jailhouse overlay.

Acked-by: Nikhil Devshatwar <nikhil.nd@ti.com>
Signed-off-by: Erick Narvaez <e-narvaez@ti.com>
Signed-off-by: Gowtham Tammana <g-tammana@ti.com>
4 years agoMerged TI feature connectivity into ti-linux-4.19.y
LCPD Auto Merger [Tue, 10 Sep 2019 10:19:27 +0000 (05:19 -0500)]
Merged TI feature connectivity into ti-linux-4.19.y

* 'connectivity-ti-linux-4.19.y' of ssh://bitbucket.itg.ti.com/lcpdpublicdom/connectivity:
  net: ethernet: ti: am65-cpsw-nuss: enable 10Mbps link speed in rgmii mode
  ethernet: ti: am65-cpsw: allow hwts for ptp sync msgs and others
  Revert "HACK: arm64: dts: ti: k3-j721e-main: Drop dma-coherent for usb0"
  arm64: dts: ti: k3-j721e: usb: Sync with driver changes
  usb: cdns3: gadget: Fix full-speed mode
  usb: cdns3: fix cdns3_core_init_role()
  usb: cdns3: Add TI specific wrapper driver
  usb:cdns3 Fix for stuck packets in on-chip OUT buffer.
  usb:cdns3 Add Cadence USB3 DRD Driver
  usb:common Simplify usb_decode_get_set_descriptor function.
  usb:common Patch simplify usb_decode_set_clear_feature function.
  usb:common Separated decoding functions from dwc3 driver.
  dt-bindings: add binding for USBSS-DRD controller.
  usb: cdns3: Remove Cadence usb driver
  Revert "usb:common Separated decoding functions from dwc3 driver."
  Revert "usb:common Patch simplify usb_decode_set_clear_feature function."
  Revert "usb:common Simplify usb_decode_get_set_descriptor function."
  Revert "usb: cdns3: Add TI specific wrapper driver"

Signed-off-by: LCPD Auto Merger <lcpd_integration@list.ti.com>
4 years agonet: ethernet: ti: introduce j721e virt cpsw-nuss mac driver
Grygorii Strashko [Wed, 4 Sep 2019 18:11:06 +0000 (21:11 +0300)]
net: ethernet: ti: introduce j721e virt cpsw-nuss mac driver

This patch introduces virtual CPSW MAC driver which implements standard
Linux netdev interface and uses RPC services provided by rpmsg-kdrv Eth
switch device which provides RPC interface to the Eth switch firmware
running on the one of R5F cores and fully controls J721E CPSW9G hardware
module.

Once probed the virtual CPSW MAC driver attaches itself to the Eth switch
FW and requests:
- TX and RX UDMA resources;
- set supported fetures;
- MAC address.

After this the virtual CPSW MAC driver allows to receive and send regular
nework traffic using dedicated UDMA TX channel and RX flow allocated for
Linux Host by Eth switch FW through the standard Linux netdev intf. Hence,
CPSW9G HW does not support redirection of broadcast traffic to muliple CPU
cores - it's required that Eth switch FW should implemnt ARP support for
cases when remote network hosts send ARP request to obtain MAC address of
the virtual CPSW MAC device. For such purposes the virtual CPSW MAC driver
registers itself for IPv4 address assignment notifications and passes pairs
of <IP>:<MAC> to the Eth switch FW.

Supported features:
- ifconfig dev up/down
- ifconfig dev <IP>
- ifconfig dev hw ether <MAC> -- only when intf is down
- ethtool -k dev

Reviewed-by: Roger Quadros <rogerq@ti.com>
Signed-off-by: Grygorii Strashko <grygorii.strashko@ti.com>
Signed-off-by: Sekhar Nori <nsekhar@ti.com>
4 years agodt-bindings: net: Add binding for ti,j721e-cpsw-virt-mac device
Grygorii Strashko [Wed, 4 Sep 2019 18:11:05 +0000 (21:11 +0300)]
dt-bindings: net: Add binding for ti,j721e-cpsw-virt-mac device

This is the DT binding document for the TI J721E VIRT CPSWxg Ethernet mac
device.

Acked-by: Roger Quadros <rogerq@ti.com>
Signed-off-by: Grygorii Strashko <grygorii.strashko@ti.com>
Signed-off-by: Sekhar Nori <nsekhar@ti.com>
4 years agorpmsg-kdrv: add support for remote eth device
Grygorii Strashko [Wed, 4 Sep 2019 18:11:04 +0000 (21:11 +0300)]
rpmsg-kdrv: add support for remote eth device

In J721E, the remote R5F can run firmware which controls 9-port CPSW9G NUSS
module - Eth switch fw. Only the Eth Switch FW has full control over J721E
CPSW9G and allows segregate Ethernet traffic for each attached Remote CPU
by using programable ALE classifiers and exclusive UDMA TX channels and RX
flows. The Eth switch FW supports rpmsg-kdrv protocol and presents itself
as rpmsg-kdrv device, which provides CPSW9g resource management and
debugging functions for each attached Remote CPU:
- DMA resources allocation: TX UDMA channel and RX Flow
- MAC addresses assignment
- ARP helper for ARP requests processing from remote Net Hosts
- dbg: IPC ping
- dbg: CPSW9G register access
- dbg: statistic print request on R5F console (ioctl)

Reviewed-by: Roger Quadros <rogerq@ti.com>
Signed-off-by: Grygorii Strashko <grygorii.strashko@ti.com>
Signed-off-by: Sekhar Nori <nsekhar@ti.com>
4 years agodmaengine: ti: k3-navss-udma: add support for remote/virt udma channels
Grygorii Strashko [Wed, 4 Sep 2019 18:11:03 +0000 (21:11 +0300)]
dmaengine: ti: k3-navss-udma: add support for remote/virt udma channels

To support remote/virt UDMA channels to CPS9G which is under control of
firmware running on remote core:

- TX side: virt-net driver will access and fully control dedicated TX udma
channel. Hence, TX channel is dedicated - no changhes required on TX side.

- RX side: RX udma channel is under full control of RPC, and only dedicated
RX udma flows are allocated for Linux Host. So, when connecting to remote
UDMA channel - the UDMA RX channel should not be to touched, just dedicated
RX flows added and configured. The RX UDMA flow RX and RX FDQ rings have to
be switched to invalid rings IDs for disabling/enabling RX UDMA flow.

This patch implements above behavior.

Acked-by: Peter Ujfalusi <peter.ujfalusi@ti.com>
Signed-off-by: Grygorii Strashko <grygorii.strashko@ti.com>
Signed-off-by: Sekhar Nori <nsekhar@ti.com>
4 years agodmaengine: ti: k3-navss-udma: drop need_tisci_free
Grygorii Strashko [Wed, 4 Sep 2019 18:11:02 +0000 (21:11 +0300)]
dmaengine: ti: k3-navss-udma: drop need_tisci_free

The need_tisci_free is obsolete after TI SCI API.
Hence - drop it.

Acked-by: Peter Ujfalusi <peter.ujfalusi@ti.com>
Signed-off-by: Grygorii Strashko <grygorii.strashko@ti.com>
Signed-off-by: Sekhar Nori <nsekhar@ti.com>
4 years agodmaengine: ti: k3-navss-udma: fix k3_nav_udmax_release_rx_flow()
Grygorii Strashko [Wed, 4 Sep 2019 18:11:01 +0000 (21:11 +0300)]
dmaengine: ti: k3-navss-udma: fix k3_nav_udmax_release_rx_flow()

Reset struct k3_nav_udmax_rx_flow->udma_rflow to avoid double calling of
xudma_rflow_put().

Acked-by: Peter Ujfalusi <peter.ujfalusi@ti.com>
Signed-off-by: Grygorii Strashko <grygorii.strashko@ti.com>
Signed-off-by: Sekhar Nori <nsekhar@ti.com>
4 years agodmaengine: ti: k3-navss-udma: fix gp rflow freeing in k3_nav_udmax_release_rx_chn()
Grygorii Strashko [Wed, 4 Sep 2019 18:11:00 +0000 (21:11 +0300)]
dmaengine: ti: k3-navss-udma: fix gp rflow freeing in k3_nav_udmax_release_rx_chn()

The GP rflows have to be freed only if they previously were allocated.
Hence check if low_id_base belongs to GP rflow range before calling
xudma_free_gp_rflow_range().

Acked-by: Peter Ujfalusi <peter.ujfalusi@ti.com>
Signed-off-by: Grygorii Strashko <grygorii.strashko@ti.com>
Signed-off-by: Sekhar Nori <nsekhar@ti.com>
4 years agodmaengine: ti: k3-navss-udma: fix access to udmax in k3_nav_udmax_release_rx_chn()
Grygorii Strashko [Wed, 4 Sep 2019 18:10:59 +0000 (21:10 +0300)]
dmaengine: ti: k3-navss-udma: fix access to udmax in k3_nav_udmax_release_rx_chn()

The struct k3_nav_udmax_rx_channel->common.udmax has to be checked before
accessing it. Hence move corresponding check to the beginning of the
k3_nav_udmax_release_rx_chn().

Acked-by: Peter Ujfalusi <peter.ujfalusi@ti.com>
Signed-off-by: Grygorii Strashko <grygorii.strashko@ti.com>
Signed-off-by: Sekhar Nori <nsekhar@ti.com>
4 years agoMerged TI feature platform_base into ti-linux-4.19.y
LCPD Auto Merger [Tue, 10 Sep 2019 07:39:31 +0000 (02:39 -0500)]
Merged TI feature platform_base into ti-linux-4.19.y

* 'platform-ti-linux-4.19.y' of ssh://bitbucket.itg.ti.com/lcpdpublicdom/platform:
  arm64: dts: ti: k3-j721e: Add support for pm2 som

Signed-off-by: LCPD Auto Merger <lcpd_integration@list.ti.com>
4 years agoMerged TI feature multimedia into ti-linux-4.19.y
LCPD Auto Merger [Mon, 9 Sep 2019 18:39:24 +0000 (13:39 -0500)]
Merged TI feature multimedia into ti-linux-4.19.y

* 'multimedia-ti-linux-4.19.y' of ssh://bitbucket.itg.ti.com/lcpdpublicdom/multimedia:
  ti_config_fragments: multimedia.cfg: Add video encode configuration
  drivers: media: platorm: Kconfig: Add Video encoder kconfig entries
  arm64: dts: ti: k3-j721e-main.dtsi: Add VXE384 node
  dt-bindings: Add binding for img,vxe384 for J721E

Signed-off-by: LCPD Auto Merger <lcpd_integration@list.ti.com>
4 years agoti_config_fragments: multimedia.cfg: Add video encode configuration
Angela Stegmaier [Thu, 5 Sep 2019 23:13:30 +0000 (23:13 +0000)]
ti_config_fragments: multimedia.cfg: Add video encode configuration

Add vxe384 vxe_enc configurations to multimedia.cfg

Signed-off-by: Angela Stegmaier <angelabaker@ti.com>
Reviewed-by: Benoit Parrot <bparrot@ti.com>
4 years agodrivers: media: platorm: Kconfig: Add Video encoder kconfig entries
Angela Stegmaier [Thu, 5 Sep 2019 23:13:29 +0000 (23:13 +0000)]
drivers: media: platorm: Kconfig: Add Video encoder kconfig entries

Add video encoder basic config to Kconfig
and select the required V4L2 modules.

Signed-off-by: Angela Stegmaier <angelabaker@ti.com>
Reviewed-by: Benoit Parrot <bparrot@ti.com>
4 years agoarm64: dts: ti: k3-j721e-main.dtsi: Add VXE384 node
Angela Stegmaier [Thu, 5 Sep 2019 23:13:28 +0000 (23:13 +0000)]
arm64: dts: ti: k3-j721e-main.dtsi: Add VXE384 node

Add VXE384 video encoder node for J721E.

Signed-off-by: Angela Stegmaier <angelabaker@ti.com>
Reviewed-by: Benoit Parrot <bparrot@ti.com>
4 years agodt-bindings: Add binding for img,vxe384 for J721E
Angela Stegmaier [Thu, 5 Sep 2019 23:13:27 +0000 (23:13 +0000)]
dt-bindings: Add binding for img,vxe384 for J721E

Add the dt-binding for the img,vxe384 node for J721E.

Signed-off-by: Angela Stegmaier <angelabaker@ti.com>
Reviewed-by: Benoit Parrot <bparrot@ti.com>
4 years agonet: ethernet: ti: am65-cpsw-nuss: enable 10Mbps link speed in rgmii mode
Grygorii Strashko [Thu, 5 Sep 2019 18:46:38 +0000 (21:46 +0300)]
net: ethernet: ti: am65-cpsw-nuss: enable 10Mbps link speed in rgmii mode

In RGMII mode the 10Mbps link speed is supported only when CPSW2G MAC SL is
configured for External Control ("in band") mode
CPSW_PN_MAC_CONTROL_REG.CTL_EN(18) = 1.

Hence update am65_cpsw_nuss_adjust_link() to follow documentation.

Signed-off-by: Grygorii Strashko <grygorii.strashko@ti.com>
Signed-off-by: Sekhar Nori <nsekhar@ti.com>
4 years agoethernet: ti: am65-cpsw: allow hwts for ptp sync msgs and others
Ivan Khoronzhuk [Wed, 4 Sep 2019 19:51:55 +0000 (22:51 +0300)]
ethernet: ti: am65-cpsw: allow hwts for ptp sync msgs and others

Since am65-cpsw supports rx hardware timestamps for any packet
(HWTSTAMP_FILTER_ALL), allow hardware timestamp at least for existent
rx filters. Despite of this, hw supports only two filter modes:
HWTSTAMP_FILTER_NONE and HWTSTAMP_FILTER_ALL that is still shown with
"ethtool -T inf_name".

Acked-by: Grygorii Strashko <grygorii.strashko@ti.com>
Signed-off-by: Ivan Khoronzhuk <ivan.khoronzhuk@linaro.org>
Signed-off-by: Sekhar Nori <nsekhar@ti.com>
4 years agoarm64: dts: ti: k3-j721e: Add support for pm2 som
Keerthy [Mon, 9 Sep 2019 06:09:58 +0000 (11:39 +0530)]
arm64: dts: ti: k3-j721e: Add support for pm2 som

The Beta EVMs will be having pm2 SoM which is mainly having Leo PMIC
instead of the prior pm1 SoM which has TPS65917 PMIC. Long term
support is for pm2 SoM.

So k3-j721e-som-p0.dtsi now points to the pm2 SoM &
k3-j721e-common-proc-board is pointing to the boards with pm2 SoM.

The older TPS65917 based pm1 SoMs are renamed to k3-j721e-som-tps65917.dtsi
& ti/k3-j721e-proc-board-tps65917.dts respectively.

Signed-off-by: Keerthy <j-keerthy@ti.com>
Acked-by: Nikhil Devshatwar <nikhil.nd@ti.com>
4 years agoMerged TI feature platform_base into ti-linux-4.19.y
LCPD Auto Merger [Mon, 9 Sep 2019 08:39:59 +0000 (03:39 -0500)]
Merged TI feature platform_base into ti-linux-4.19.y

* 'platform-ti-linux-4.19.y' of ssh://bitbucket.itg.ti.com/lcpdpublicdom/platform:
  HACK: ti_config_fragments: v8_baseport: Enable DMA-BUF export driver
  HACK: ti_config_fragments: baseport: Enable DMA-BUF export driver
  HACK: misc: Add dma-buf to physical address exporter
  HACK: dt-bindings: misc: Add ti,dma_buf_phys binding doc
  ti_config_fragments: v8_baseport: Enable PAT driver
  soc: ti: Add Support for the TI Page-based Address Translator (PAT)
  arm64: dts: ti: k3-j721e-main: Add MAIN domain PAT nodes
  dt-bindings: soc: ti: Add TI PAT bindings
  dma-buf: Make mmap callback actually optional
  dma-buf: Remove requirement for ops->map() from dma_buf_export
  crypto: sa2ul: Correct the length of payload that is transferred to rx_chan2
  crypto: sa2ul: Add support for basic sha1/sha256 algorithms
  crypto: tcrypt: Fix speed test case for hash to set up sg buffer size equal to payload
  crypto: sa2ul: Add software fallback support

Signed-off-by: LCPD Auto Merger <lcpd_integration@list.ti.com>
4 years agoHACK: ti_config_fragments: v8_baseport: Enable DMA-BUF export driver
Andrew F. Davis [Thu, 5 Sep 2019 13:09:18 +0000 (09:09 -0400)]
HACK: ti_config_fragments: v8_baseport: Enable DMA-BUF export driver

Enable DMA-BUF export driver used by OpenCL/OpenVX usecases.

Signed-off-by: Andrew F. Davis <afd@ti.com>
4 years agoHACK: ti_config_fragments: baseport: Enable DMA-BUF export driver
Andrew F. Davis [Thu, 5 Sep 2019 13:09:17 +0000 (09:09 -0400)]
HACK: ti_config_fragments: baseport: Enable DMA-BUF export driver

Enable DMA-BUF export driver used by OpenCL/OpenVX usecases.

Signed-off-by: Andrew F. Davis <afd@ti.com>
4 years agoHACK: misc: Add dma-buf to physical address exporter
Andrew F. Davis [Thu, 5 Sep 2019 13:09:16 +0000 (09:09 -0400)]
HACK: misc: Add dma-buf to physical address exporter

This is driver allows user-space to attach a DMA-BUF and
receive back its CPU physical address. This is a temporary
solution to allow CMEM like functionality from ION allocated
buffers. This is a hack and this will be removed when proper
solutions are implemented.

Signed-off-by: Andrew F. Davis <afd@ti.com>
4 years agoHACK: dt-bindings: misc: Add ti,dma_buf_phys binding doc
Andrew F. Davis [Thu, 5 Sep 2019 13:09:15 +0000 (09:09 -0400)]
HACK: dt-bindings: misc: Add ti,dma_buf_phys binding doc

Driver allowing user-space attaching of DMA-BUFs returning CPU physical
addresses. The reasoning for making this act like a regular device
described by DT is so the virtual device that binds the buffer can be
made to act as if it is out on a bus or behind an IOMMU, for example.

Add this binding here.

Signed-off-by: Andrew F. Davis <afd@ti.com>
4 years agoti_config_fragments: v8_baseport: Enable PAT driver
Andrew F. Davis [Wed, 7 Aug 2019 19:17:12 +0000 (15:17 -0400)]
ti_config_fragments: v8_baseport: Enable PAT driver

Enable PAT in v8 config.

Signed-off-by: Andrew F. Davis <afd@ti.com>
4 years agosoc: ti: Add Support for the TI Page-based Address Translator (PAT)
Andrew F. Davis [Wed, 7 Aug 2019 19:17:11 +0000 (15:17 -0400)]
soc: ti: Add Support for the TI Page-based Address Translator (PAT)

This patch adds a driver for the Page-based Address Translator (PAT)
present on various TI SoCs. A PAT device performs address translation
using tables stored in an internal SRAM. Each PAT supports a set number
of pages, each occupying a programmable 4KB, 16KB, 64KB, or 1MB of
addresses in a window for which an incoming transaction will be
translated.

Signed-off-by: Andrew F. Davis <afd@ti.com>
[t-kristo@ti.com: added depends on ARCH_K3 to Kconfig]
Signed-off-by: Tero Kristo <t-kristo@ti.com>
4 years agoarm64: dts: ti: k3-j721e-main: Add MAIN domain PAT nodes
Andrew F. Davis [Wed, 7 Aug 2019 19:17:10 +0000 (15:17 -0400)]
arm64: dts: ti: k3-j721e-main: Add MAIN domain PAT nodes

The NAVSS may contain page-based address translators (PAT) that perform
address translation using tables stored in an internal SRAM. Each PAT
supports a set number of pages, each occupying a programmable 4KB, 16KB,
64KB, or 1MB address window for which an incoming transaction will be
translated. J721E MAIN domain NAVSS contains 5 PAT instances, add DT
nodes for this here.

Signed-off-by: Andrew F. Davis <afd@ti.com>
4 years agodt-bindings: soc: ti: Add TI PAT bindings
Andrew F. Davis [Wed, 7 Aug 2019 19:17:09 +0000 (15:17 -0400)]
dt-bindings: soc: ti: Add TI PAT bindings

This patch adds the bindings for the Page-based Address Translator (PAT)
present on various TI SoCs. A Page-based Address Translator (PAT) device
performs address translation using tables stored in an internal SRAM.
Each PAT supports a set number of pages, each occupying a programmable
4KB, 16KB, 64KB, or 1MB of addresses in a window for which an incoming
transaction will be translated.

Signed-off-by: Andrew F. Davis <afd@ti.com>
4 years agodma-buf: Make mmap callback actually optional
Andrew F. Davis [Wed, 7 Aug 2019 19:17:08 +0000 (15:17 -0400)]
dma-buf: Make mmap callback actually optional

commit e3a9d6c53195591303b7f165f3bb0226741f911e upstream.

The docs state the callback is optional but it is not, make it optional.

Signed-off-by: Andrew F. Davis <afd@ti.com>
Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Reviewed-by: Christian König <christian.koenig@amd.com>
Signed-off-by: Sumit Semwal <sumit.semwal@linaro.org>
Link: https://patchwork.freedesktop.org/patch/msgid/20190329165201.16233-1-afd@ti.com
4 years agodma-buf: Remove requirement for ops->map() from dma_buf_export
Chris Wilson [Wed, 7 Aug 2019 19:17:07 +0000 (15:17 -0400)]
dma-buf: Remove requirement for ops->map() from dma_buf_export

commit f82aab2d521e4c1d4f9f98450b4a9a8abeaff1c4 upstream.

Since commit 9ea0dfbf972 ("dma-buf: make map_atomic and map function
pointers optional"), the core provides the no-op functions when map and
map_atomic are not provided, so we no longer need assert that are
supplied by a dma-buf exporter.

Fixes: 09ea0dfbf972 ("dma-buf: make map_atomic and map function pointers optional")
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Link: http://patchwork.freedesktop.org/patch/msgid/20180807183647.22626-1-chris@chris-wilson.co.uk
Cc: Daniel Vetter <daniel@ffwll.ch>
Cc: Gerd Hoffmann <kraxel@redhat.com>
Cc: Sumit Semwal <sumit.semwal@linaro.org>
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
4 years agoMerged TI feature audio-display into ti-linux-4.19.y
LCPD Auto Merger [Thu, 5 Sep 2019 11:28:55 +0000 (06:28 -0500)]
Merged TI feature audio-display into ti-linux-4.19.y

* 'audio_display-ti-linux-4.19.y' of git.ti.com:~jyrisarha/ti-linux-kernel/jyrisarhas-audio-video-linux-feature-tree: (22 commits)
  phy: ti: j721e-wiz: Fix "warning: unused variable ‘reg’"
  drm/bridge: cdns-mhdp-common: remove unneeded semicolons
  drm/bridge: cdns-mhdp: Do not pack the scrambler and SSC to lane count
  drm/bridge: cdns-mhdp: Use new detect_ctx() instead of obsolete detect() cb
  drm/bridge: cdns-mhdp: fail if fast LT is used
  drm/bridge: cdns-mhdp: clean up debug prints
  drm/bridge: cdns-mhdp-j721e: remove useless debug prints
  drm/bridge: cdns-mhdp: drop uses of cdns_mhdp_set_video_status
  phy: phy-cadence-dp: fix typo
  drm/bridge: cdns-mhdp: disable framer on bridge_disable
  drm/bridge: cdns-mhdp: enable/disable VIF clk/rst
  drm/bridge: cdns-mhdp: fix h/v sync polarities
  drm/bridge: cdns-mhdp: fix CDNS_DP_FRAMER_GLOBAL_CONFIG handling
  drm/bridge: cdns-mhdp: remove CDNS_DP_SW_RESET (unused)
  drm/omap: hdmi5: automatically choose limited/full range output
  arm64: dts: ti: k3-j721e-common-proc-board: Switch to custom audio support
  ti_config_fragments: audio_display.cfg: Enable custom audio driver for j721e-evm
  ASoC: ti: Add custom machine driver for j721e Common Processor Board
  bindings: sound: Add documentation for TI j721e Common Processor Board
  ASoC: pcm3168a: Allow reconfiguration of tdm_slots and slot_width
  ...

Signed-off-by: LCPD Auto Merger <lcpd_integration@list.ti.com>
4 years agoMerge branch 'ti/4.19-pull' of https://bitbucket.itg.ti.com/scm/~a0400822/linux into...
Jyri Sarha [Thu, 5 Sep 2019 10:16:55 +0000 (13:16 +0300)]
Merge branch 'ti/4.19-pull' of https://bitbucket.itg.ti.com/scm/~a0400822/linux into audio_display-ti-linux-4.19.y

DP patches for .04

* 'ti/4.19-pull' of https://bitbucket.itg.ti.com/scm/~a0400822/linux:
  phy: ti: j721e-wiz: Fix "warning: unused variable ‘reg’"
  drm/bridge: cdns-mhdp-common: remove unneeded semicolons
  drm/bridge: cdns-mhdp: Do not pack the scrambler and SSC to lane count
  drm/bridge: cdns-mhdp: Use new detect_ctx() instead of obsolete detect() cb
  drm/bridge: cdns-mhdp: fail if fast LT is used
  drm/bridge: cdns-mhdp: clean up debug prints
  drm/bridge: cdns-mhdp-j721e: remove useless debug prints
  drm/bridge: cdns-mhdp: drop uses of cdns_mhdp_set_video_status
  phy: phy-cadence-dp: fix typo
  drm/bridge: cdns-mhdp: disable framer on bridge_disable
  drm/bridge: cdns-mhdp: enable/disable VIF clk/rst
  drm/bridge: cdns-mhdp: fix h/v sync polarities
  drm/bridge: cdns-mhdp: fix CDNS_DP_FRAMER_GLOBAL_CONFIG handling
  drm/bridge: cdns-mhdp: remove CDNS_DP_SW_RESET (unused)

4 years agoMerge branch 'peter/ti-linux-4.19.y/topic/audio' of https://github.com/omap-audio...
Jyri Sarha [Thu, 5 Sep 2019 10:15:22 +0000 (13:15 +0300)]
Merge branch 'peter/ti-linux-4.19.y/topic/audio' of https://github.com/omap-audio/linux-audio into audio_display-ti-linux-4.19.y

new ASoC machine driver for j721e CPB

* 'peter/ti-linux-4.19.y/topic/audio' of https://github.com/omap-audio/linux-audio:
  arm64: dts: ti: k3-j721e-common-proc-board: Switch to custom audio support
  ti_config_fragments: audio_display.cfg: Enable custom audio driver for j721e-evm
  ASoC: ti: Add custom machine driver for j721e Common Processor Board
  bindings: sound: Add documentation for TI j721e Common Processor Board
  ASoC: pcm3168a: Allow reconfiguration of tdm_slots and slot_width
  ASoC: pcm3168a: Retain the independence of DAC and ADC side of the codec
  ASoC: core: Move pcm_mutex up to card level from snd_soc_pcm_runtime

4 years agocrypto: sa2ul: Correct the length of payload that is transferred to rx_chan2
Keerthy [Tue, 3 Sep 2019 05:30:42 +0000 (11:00 +0530)]
crypto: sa2ul: Correct the length of payload that is transferred to rx_chan2

The rx channel 2 becomes active as soon as the payload is greater
than or equal to 256 bytes so correct that.

Signed-off-by: Keerthy <j-keerthy@ti.com>
4 years agocrypto: sa2ul: Add support for basic sha1/sha256 algorithms
Keerthy [Tue, 3 Sep 2019 05:30:41 +0000 (11:00 +0530)]
crypto: sa2ul: Add support for basic sha1/sha256 algorithms

Add support for HW supported sha1/sha256 algorithms.
The HMAC basedsha1/sha256 are already supported.

Signed-off-by: Keerthy <j-keerthy@ti.com>
4 years agocrypto: tcrypt: Fix speed test case for hash to set up sg buffer size equal to payload
Keerthy [Tue, 3 Sep 2019 05:30:40 +0000 (11:00 +0530)]
crypto: tcrypt: Fix speed test case for hash to set up sg buffer size equal to payload

Fix speed test case to set up sg buffer size equal to payload.

Signed-off-by: Keerthy <j-keerthy@ti.com>
4 years agocrypto: sa2ul: Add software fallback support
Keerthy [Tue, 3 Sep 2019 05:30:39 +0000 (11:00 +0530)]
crypto: sa2ul: Add software fallback support

The sa2ul hardware mandates upfront knowledge of the total
number of bytes that will be hashed. This causes cases like
partial update to fail. Hence add software fallback.

So all the finup, final, update cases go via software hashing
utilizing cpu cycles.

Signed-off-by: Keerthy <j-keerthy@ti.com>
4 years agoRevert "HACK: arm64: dts: ti: k3-j721e-main: Drop dma-coherent for usb0"
Roger Quadros [Wed, 4 Sep 2019 11:42:56 +0000 (14:42 +0300)]
Revert "HACK: arm64: dts: ti: k3-j721e-main: Drop dma-coherent for usb0"

This reverts commit def54d782c324d7d6b5e972e9c368fd74ef483b8.
This is no longer required as driver has been fixed.

Signed-off-by: Roger Quadros <rogerq@ti.com>
Signed-off-by: Sekhar Nori <nsekhar@ti.com>
4 years agoarm64: dts: ti: k3-j721e: usb: Sync with driver changes
Roger Quadros [Wed, 4 Sep 2019 11:42:55 +0000 (14:42 +0300)]
arm64: dts: ti: k3-j721e: usb: Sync with driver changes

Adapt to changes in V10 of the cdns3 USB driver.

Signed-off-by: Roger Quadros <rogerq@ti.com>
Signed-off-by: Sekhar Nori <nsekhar@ti.com>
4 years agousb: cdns3: gadget: Fix full-speed mode
Roger Quadros [Wed, 4 Sep 2019 11:42:54 +0000 (14:42 +0300)]
usb: cdns3: gadget: Fix full-speed mode

We need to disable USB3 PHY for full-speed mode else
gadget mode is broken.

Signed-off-by: Roger Quadros <rogerq@ti.com>
Signed-off-by: Sekhar Nori <nsekhar@ti.com>
4 years agousb: cdns3: fix cdns3_core_init_role()
Roger Quadros [Wed, 4 Sep 2019 11:42:53 +0000 (14:42 +0300)]
usb: cdns3: fix cdns3_core_init_role()

At startup we should trigger the HW state machine
only if it is OTG mode. Otherwise we should just
start the respective role.

Initialize idle role by default. If we don't do this then
cdns3_idle_role_stop() is not called when switching to
host/device role and so lane switch mechanism
doesn't work. This results to super-speed device not working
in one orientation if it was plugged before driver probe.

Signed-off-by: Roger Quadros <rogerq@ti.com>
Signed-off-by: Sekhar Nori <nsekhar@ti.com>
4 years agousb: cdns3: Add TI specific wrapper driver
Roger Quadros [Wed, 4 Sep 2019 11:42:52 +0000 (14:42 +0300)]
usb: cdns3: Add TI specific wrapper driver

The J721e platform comes with 2 Cadence USB3 controller
instances. This driver supports the TI specific wrapper
on this platform.

Signed-off-by: Roger Quadros <rogerq@ti.com>
Signed-off-by: Sekhar Nori <nsekhar@ti.com>
4 years agousb:cdns3 Fix for stuck packets in on-chip OUT buffer.
Pawel Laszczak [Wed, 4 Sep 2019 11:42:51 +0000 (14:42 +0300)]
usb:cdns3 Fix for stuck packets in on-chip OUT buffer.

Controller for OUT endpoints has shared on-chip buffers for all incoming
packets, including ep0out. It's FIFO buffer, so packets must be handled
by DMA in correct order. If the first packet in the buffer will not be
handled, then the following packets directed for other endpoints and
functions will be blocked.

Additionally the packets directed to one endpoint can block entire on-chip
buffers. In this case transfer to other endpoints also will blocked.

To resolve this issue after raising the descriptor missing interrupt
driver prepares internal usb_request object and use it to arm DMA
transfer.

The problematic situation was observed in case when endpoint has
been enabled but no usb_request were queued. Driver try detects
such endpoints and will use this workaround only for these endpoint.

Driver use limited number of buffer. This number can be set by macro
CDNS_WA2_NUM_BUFFERS.

Such blocking situation was observed on ACM gadget. For this function
host send OUT data packet but ACM function is not prepared for
this packet. It's cause that buffer placed in on chip memory block
transfer to other endpoints.

Issue has been fixed for DEV_VER_V2 version of controller.

Signed-off-by: Pawel Laszczak <pawell@cadence.com>
Signed-off-by: Sekhar Nori <nsekhar@ti.com>
4 years agousb:cdns3 Add Cadence USB3 DRD Driver
Pawel Laszczak [Wed, 4 Sep 2019 11:42:50 +0000 (14:42 +0300)]
usb:cdns3 Add Cadence USB3 DRD Driver

This patch introduce new Cadence USBSS DRD driver to Linux kernel.

The Cadence USBSS DRD Controller is a highly configurable IP Core which
can be instantiated as Dual-Role Device (DRD), Peripheral Only and
Host Only (XHCI)configurations.

The current driver has been validated with FPGA platform. We have
support for PCIe bus, which is used on FPGA prototyping.

The host side of USBSS-DRD controller is compliant with XHCI
specification, so it works with standard XHCI Linux driver.

Signed-off-by: Pawel Laszczak <pawell@cadence.com>
Signed-off-by: Sekhar Nori <nsekhar@ti.com>
4 years agousb:common Simplify usb_decode_get_set_descriptor function.
Pawel Laszczak [Wed, 4 Sep 2019 11:42:49 +0000 (14:42 +0300)]
usb:common Simplify usb_decode_get_set_descriptor function.

Patch moves switch responsible for decoding descriptor type
outside snprintf. It improves code readability a little.

Signed-off-by: Pawel Laszczak <pawell@cadence.com>
Signed-off-by: Sekhar Nori <nsekhar@ti.com>
4 years agousb:common Patch simplify usb_decode_set_clear_feature function.
Pawel Laszczak [Wed, 4 Sep 2019 11:42:48 +0000 (14:42 +0300)]
usb:common Patch simplify usb_decode_set_clear_feature function.

Patch adds usb_decode_test_mode and usb_decode_device_feature functions,
which allow to make more readable and simplify the
usb_decode_set_clear_feature function.

Signed-off-by: Pawel Laszczak <pawell@cadence.com>
Signed-off-by: Sekhar Nori <nsekhar@ti.com>
4 years agousb:common Separated decoding functions from dwc3 driver.
Pawel Laszczak [Wed, 4 Sep 2019 11:42:47 +0000 (14:42 +0300)]
usb:common Separated decoding functions from dwc3 driver.

Patch moves some decoding functions from driver/usb/dwc3/debug.h driver
to driver/usb/common/debug.c file. These moved functions include:
    dwc3_decode_get_status
    dwc3_decode_set_clear_feature
    dwc3_decode_set_address
    dwc3_decode_get_set_descriptor
    dwc3_decode_get_configuration
    dwc3_decode_set_configuration
    dwc3_decode_get_intf
    dwc3_decode_set_intf
    dwc3_decode_synch_frame
    dwc3_decode_set_sel
    dwc3_decode_set_isoch_delay
    dwc3_decode_ctrl

These functions are used also in inroduced cdns3 driver.

All functions prefixes were changed from dwc3 to usb.
Also, function's parameters has been extended according to the name
of fields in standard SETUP packet.
Additionally, patch adds usb_decode_ctrl function to
include/linux/usb/ch9.h file.

Signed-off-by: Pawel Laszczak <pawell@cadence.com>
Signed-off-by: Sekhar Nori <nsekhar@ti.com>
4 years agodt-bindings: add binding for USBSS-DRD controller.
Pawel Laszczak [Wed, 4 Sep 2019 11:42:46 +0000 (14:42 +0300)]
dt-bindings: add binding for USBSS-DRD controller.

This patch aim at documenting USB related dt-bindings for the
Cadence USBSS-DRD controller.

Signed-off-by: Pawel Laszczak <pawell@cadence.com>
Reviewed-by: Rob Herring <robh@kernel.org>
Signed-off-by: Sekhar Nori <nsekhar@ti.com>
4 years agousb: cdns3: Remove Cadence usb driver
Roger Quadros [Wed, 4 Sep 2019 11:42:45 +0000 (14:42 +0300)]
usb: cdns3: Remove Cadence usb driver

This is to prepare for upgrade to v11 of the driver.

Signed-off-by: Roger Quadros <rogerq@ti.com>
Signed-off-by: Sekhar Nori <nsekhar@ti.com>
4 years agoRevert "usb:common Separated decoding functions from dwc3 driver."
Roger Quadros [Wed, 4 Sep 2019 11:42:44 +0000 (14:42 +0300)]
Revert "usb:common Separated decoding functions from dwc3 driver."

This reverts commit 191b62b8537ab55a9de324e8c256b933b0f69f20.

Signed-off-by: Sekhar Nori <nsekhar@ti.com>
4 years agoRevert "usb:common Patch simplify usb_decode_set_clear_feature function."
Roger Quadros [Wed, 4 Sep 2019 11:42:43 +0000 (14:42 +0300)]
Revert "usb:common Patch simplify usb_decode_set_clear_feature function."

This reverts commit b93c0c91de5ac4025917dcad3b830aba2b808e22.

Signed-off-by: Sekhar Nori <nsekhar@ti.com>
4 years agoRevert "usb:common Simplify usb_decode_get_set_descriptor function."
Roger Quadros [Wed, 4 Sep 2019 11:42:42 +0000 (14:42 +0300)]
Revert "usb:common Simplify usb_decode_get_set_descriptor function."

This reverts commit c2852d4cd9af909aef47df9c1f390a663d112462.

Signed-off-by: Sekhar Nori <nsekhar@ti.com>
4 years agoRevert "usb: cdns3: Add TI specific wrapper driver"
Roger Quadros [Wed, 4 Sep 2019 11:42:41 +0000 (14:42 +0300)]
Revert "usb: cdns3: Add TI specific wrapper driver"

This reverts commit d9b9925c0235166f284051ecac9bef53c22218f2.

Signed-off-by: Roger Quadros <rogerq@ti.com>
Signed-off-by: Sekhar Nori <nsekhar@ti.com>
4 years agoMerged TI feature rpmsg into ti-linux-4.19.y
LCPD Auto Merger [Wed, 4 Sep 2019 21:21:12 +0000 (16:21 -0500)]
Merged TI feature rpmsg into ti-linux-4.19.y

* 'rpmsg-ti-linux-4.19.y-intg' of git://git.ti.com/rpmsg/rpmsg:
  remoteproc: Add a sysfs interface for name
  rpmsg: virtio_rpmsg_bus: replace "%p" with "%pK"
  rpmsg: core: fix comments
  samples/rpmsg: Replace print_hex_dump() with print_hex_dump_debug()

Signed-off-by: LCPD Auto Merger <lcpd_integration@list.ti.com>
4 years agoMerge branch 'rpmsg-ti-linux-4.19.y' of git://git.ti.com/rpmsg/rpmsg into rpmsg-ti...
Suman Anna [Wed, 4 Sep 2019 20:02:30 +0000 (15:02 -0500)]
Merge branch 'rpmsg-ti-linux-4.19.y' of git://git.ti.com/rpmsg/rpmsg into rpmsg-ti-linux-4.19.y-intg

Signed-off-by: Suman Anna <s-anna@ti.com>
4 years agoMerge branch 'rproc-linux-4.19.y' of git://git.ti.com/rpmsg/remoteproc into rpmsg...
Suman Anna [Wed, 4 Sep 2019 19:32:26 +0000 (14:32 -0500)]
Merge branch 'rproc-linux-4.19.y' of git://git.ti.com/rpmsg/remoteproc into rpmsg-ti-linux-4.19.y

Pull in the updated remoteproc feature branch that adds a new sysfs
file 'name' to allow userspace to easily identify a remoteproc. An
equivalent file was already present in debugfs as well, but sysfs
provides a more standardized userspace interface since debugfs is
optional.

* 'rproc-linux-4.19.y' of git://git.ti.com/rpmsg/remoteproc:
  remoteproc: Add a sysfs interface for name

Signed-off-by: Suman Anna <s-anna@ti.com>
4 years agoMerge branch 'rpmsg-linux-4.19.y' of git://git.ti.com/rpmsg/rpmsg into rpmsg-ti-linux...
Suman Anna [Wed, 4 Sep 2019 19:26:36 +0000 (14:26 -0500)]
Merge branch 'rpmsg-linux-4.19.y' of git://git.ti.com/rpmsg/rpmsg into rpmsg-ti-linux-4.19.y

Pull in the updated rpmsg base feature branch that includes minor
typo fixes in the rpmsg core and minor dynamic-debug related printk
improvements to the virtio_rpmsg_bus and rpmsg_client_sample drivers.

* 'rpmsg-linux-4.19.y' of git://git.ti.com/rpmsg/rpmsg:
  rpmsg: virtio_rpmsg_bus: replace "%p" with "%pK"
  rpmsg: core: fix comments
  samples/rpmsg: Replace print_hex_dump() with print_hex_dump_debug()

Signed-off-by: Suman Anna <s-anna@ti.com>
4 years agoMerged TI feature connectivity into ti-linux-4.19.y
LCPD Auto Merger [Wed, 4 Sep 2019 16:39:43 +0000 (11:39 -0500)]
Merged TI feature connectivity into ti-linux-4.19.y

* 'connectivity-ti-linux-4.19.y' of ssh://bitbucket.itg.ti.com/lcpdpublicdom/connectivity:
  ARM: dts: k3-j721e-common-proc-board: Update MMC1 pinmux from the latest pinmux tool
  phy: ti: j721e-wiz: Fix build warning
  phy: cadence: Sierra: Fix build warning

Signed-off-by: LCPD Auto Merger <lcpd_integration@list.ti.com>
4 years agoMerged TI feature platform_base into ti-linux-4.19.y
LCPD Auto Merger [Wed, 4 Sep 2019 13:38:50 +0000 (08:38 -0500)]
Merged TI feature platform_base into ti-linux-4.19.y

* 'platform-ti-linux-4.19.y' of ssh://bitbucket.itg.ti.com/lcpdpublicdom/platform:
  arm64: dts: ti: k3-j721e-main: Add ti,notdpkt flag to sa2ul psil-config
  arm64: dts: ti: k3-am65-main: Add ti,notdpkt flag to sa2ul psil-config
  crypto: sa2ul: Export function to enable trng
  crypto: sa2ul: Add a member to store base address
  char: hw_random: Kconfig: For ARCH_K3 add a dependency on SA2UL
  dmaengine: ti: k3-udma: Add support for suppressing TDC message
  dt-bindings: dma: ti: k3-udma: Add option to suppress TDCM
  dmaengine: ti: k3-udma: Helper function to reset udma_chan parameters
  dmaengine: ti: k3-udma: Use different byte counters in tx_status
  dmaengine: ti: k3-udma: In case of error in filter_fn, reset the direction
  dmaengine: ti: k3-udma: rework rflow management code
  dmaengine: ti: k3-navss-udma: drop skip_psil cfg option
  dmaengine: ti: k3-udma: print board res ranges
  dmaengine: ti: k3-navss-udma: improve err print on rflow reservation
  soc: ti: k3-ringacc: fix k3_ringacc_ring_reset_dma
  arm64: dts: k3-j721e: jailhouse: Disable SW10 from root cell
  arm64: dts: k3-j721e: Add gpio-keys on common processor board

Signed-off-by: LCPD Auto Merger <lcpd_integration@list.ti.com>
4 years agophy: ti: j721e-wiz: Fix "warning: unused variable ‘reg’"
Jyri Sarha [Thu, 29 Aug 2019 07:21:48 +0000 (10:21 +0300)]
phy: ti: j721e-wiz: Fix "warning: unused variable ‘reg’"

There is an unused varaiable in wiz_phy_reset_deassert() that causes:
drivers/phy/ti/phy-j721e-wiz.c:692:7: warning: unused variable ‘reg’

Fixes: fa06d29814d07 ("phy: ti: j721e-wiz: Manage typec-gpio-dir")
Signed-off-by: Jyri Sarha <jsarha@ti.com>
Acked-by: Roger Quadros <rogerq@ti.com>
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
4 years agodrm/bridge: cdns-mhdp-common: remove unneeded semicolons
Tomi Valkeinen [Mon, 2 Sep 2019 06:51:41 +0000 (09:51 +0300)]
drm/bridge: cdns-mhdp-common: remove unneeded semicolons

Fix coccinelle warnings:

drivers/gpu/drm/bridge/cdns-mhdp-common.c:789:2-3: Unneeded semicolon
drivers/gpu/drm/bridge/cdns-mhdp-common.c:689:2-3: Unneeded semicolon
drivers/gpu/drm/bridge/cdns-mhdp-common.c:707:2-3: Unneeded semicolon

Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
4 years agodrm/bridge: cdns-mhdp: Do not pack the scrambler and SSC to lane count
Jyri Sarha [Wed, 21 Aug 2019 13:46:08 +0000 (16:46 +0300)]
drm/bridge: cdns-mhdp: Do not pack the scrambler and SSC to lane count

There is no need to pack scrambler and Spread Spectrum Clock setting
to lane_cnt data member in struct cdns_mhdp_host. Add separate
bit-fields for those and change the other true/false values to
bit-fields too.

Signed-off-by: Jyri Sarha <jsarha@ti.com>
Reviewed-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
4 years agodrm/bridge: cdns-mhdp: Use new detect_ctx() instead of obsolete detect() cb
Jyri Sarha [Wed, 21 Aug 2019 13:46:07 +0000 (16:46 +0300)]
drm/bridge: cdns-mhdp: Use new detect_ctx() instead of obsolete detect() cb

The atomic DRM driver are supposed use drm_connector_helper_funcs
detect_ctx() call back instead of the old drm_connector_funcs detect()
cb.

Signed-off-by: Jyri Sarha <jsarha@ti.com>
Reviewed-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
4 years agodrm/bridge: cdns-mhdp: fail if fast LT is used
Tomi Valkeinen [Wed, 28 Aug 2019 10:45:35 +0000 (13:45 +0300)]
drm/bridge: cdns-mhdp: fail if fast LT is used

Print an error and fail if fast LT is used. This should not happen as
fast LT is not supported, but it's better to fail than silently proceed.

Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
4 years agodrm/bridge: cdns-mhdp: clean up debug prints
Tomi Valkeinen [Wed, 28 Aug 2019 10:44:33 +0000 (13:44 +0300)]
drm/bridge: cdns-mhdp: clean up debug prints

Minor cleanups to debug prints.

Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
4 years agodrm/bridge: cdns-mhdp-j721e: remove useless debug prints
Tomi Valkeinen [Wed, 28 Aug 2019 10:33:24 +0000 (13:33 +0300)]
drm/bridge: cdns-mhdp-j721e: remove useless debug prints

Remove slightly spammy debug prints that provide little value.

Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
4 years agodrm/bridge: cdns-mhdp: drop uses of cdns_mhdp_set_video_status
Tomi Valkeinen [Wed, 28 Aug 2019 09:50:35 +0000 (12:50 +0300)]
drm/bridge: cdns-mhdp: drop uses of cdns_mhdp_set_video_status

cdns_mhdp_set_video_status() is not needed with the current FW, and not
supported in future FW. So drop the calls.

Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
4 years agophy: phy-cadence-dp: fix typo
Tomi Valkeinen [Wed, 28 Aug 2019 06:18:19 +0000 (09:18 +0300)]
phy: phy-cadence-dp: fix typo

Rename cdns_dp_phy_set_ppl_en to  cdns_dp_phy_set_pll_en.

Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
4 years agodrm/bridge: cdns-mhdp: disable framer on bridge_disable
Tomi Valkeinen [Thu, 22 Aug 2019 10:45:50 +0000 (13:45 +0300)]
drm/bridge: cdns-mhdp: disable framer on bridge_disable

Disable the DP framer at bridge_disable.

Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
4 years agodrm/bridge: cdns-mhdp: enable/disable VIF clk/rst
Tomi Valkeinen [Thu, 22 Aug 2019 10:07:09 +0000 (13:07 +0300)]
drm/bridge: cdns-mhdp: enable/disable VIF clk/rst

Currently the driver enables VIF stream 0 clk and deasserts reset at
probe time.

Improve the code to enable VIF stream 0 at bridge_enable, and disable it
at bridge disable.

Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
4 years agodrm/bridge: cdns-mhdp: fix h/v sync polarities
Tomi Valkeinen [Fri, 16 Aug 2019 08:13:01 +0000 (11:13 +0300)]
drm/bridge: cdns-mhdp: fix h/v sync polarities

CDNS_DP_FRAMER_SP address was wrong, and things worked by luck. Fixing
the register offset caused sync polarities to go wrong.

Drop the mode_fixup altogether, as we don't need to use hardcoded sync
polarities. It makes the code simpler if the input and output syncs are
the same.

Fix the code to write correct polarities to CDNS_HSYNC2VSYNC_POL_CTRL.

Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
Reported-by: Subhajit Paul <subhajit_paul@ti.com>
4 years agodrm/bridge: cdns-mhdp: fix CDNS_DP_FRAMER_GLOBAL_CONFIG handling
Tomi Valkeinen [Fri, 16 Aug 2019 06:44:27 +0000 (09:44 +0300)]
drm/bridge: cdns-mhdp: fix CDNS_DP_FRAMER_GLOBAL_CONFIG handling

Fix multiple issues with CDNS_DP_FRAMER_GLOBAL_CONFIG handling:

- be32_to_cpu() was used in one place to read the register, resulting in
always reading 0, and writing that 0 back to the register.
- CDNS_DP_WR_FAILING_EDGE_VSYNC is a debug feature per documentation,
but the driver was always setting it.
- CDNS_DP_NO_VIDEO_MODE was cleared accidentally due to the first issue,
but never cleared intentionally.

Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
Reported-by: Subhajit Paul <subhajit_paul@ti.com>
4 years agodrm/bridge: cdns-mhdp: remove CDNS_DP_SW_RESET (unused)
Tomi Valkeinen [Fri, 16 Aug 2019 06:24:10 +0000 (09:24 +0300)]
drm/bridge: cdns-mhdp: remove CDNS_DP_SW_RESET (unused)

The register is marked unused, we should not touch it.

Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
4 years agoarm64: dts: ti: k3-j721e-main: Add ti,notdpkt flag to sa2ul psil-config
Peter Ujfalusi [Tue, 27 Aug 2019 09:11:39 +0000 (12:11 +0300)]
arm64: dts: ti: k3-j721e-main: Add ti,notdpkt flag to sa2ul psil-config

SA2UL can not handle the teardown completion message, UDMA should suppress
sending it after the teardown completed.

Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com>
Reviewed-by: Keerthy <j-keerthy@ti.com>
4 years agoarm64: dts: ti: k3-am65-main: Add ti,notdpkt flag to sa2ul psil-config
Peter Ujfalusi [Tue, 27 Aug 2019 09:11:38 +0000 (12:11 +0300)]
arm64: dts: ti: k3-am65-main: Add ti,notdpkt flag to sa2ul psil-config

SA2UL can not handle the teardown completion message, UDMA should suppress
sending it after the teardown completed.

Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com>
Reviewed-by: Keerthy <j-keerthy@ti.com>
4 years agocrypto: sa2ul: Export function to enable trng
Keerthy [Wed, 28 Aug 2019 08:33:33 +0000 (14:03 +0530)]
crypto: sa2ul: Export function to enable trng

The trng module has enable bit in the sa2ul register
space. Hence Export a function for trng driver to enable
the trng module.

Signed-off-by: Keerthy <j-keerthy@ti.com>
Tested-by: Peter Ujfalusi <peter.ujfalusi@ti.com>
4 years agocrypto: sa2ul: Add a member to store base address
Keerthy [Wed, 28 Aug 2019 08:33:32 +0000 (14:03 +0530)]
crypto: sa2ul: Add a member to store base address

Add a member to store base address of sa2ul in the
sa_crypto_data struct.

Signed-off-by: Keerthy <j-keerthy@ti.com>
Tested-by: Peter Ujfalusi <peter.ujfalusi@ti.com>
4 years agochar: hw_random: Kconfig: For ARCH_K3 add a dependency on SA2UL
Keerthy [Wed, 28 Aug 2019 08:33:31 +0000 (14:03 +0530)]
char: hw_random: Kconfig: For ARCH_K3 add a dependency on SA2UL

The enable bit is the sa2ul crypto module register space.
Hence add a dependency for K3 family.

Signed-off-by: Keerthy <j-keerthy@ti.com>
Tested-by: Peter Ujfalusi <peter.ujfalusi@ti.com>
4 years agodmaengine: ti: k3-udma: Add support for suppressing TDC message
Peter Ujfalusi [Tue, 3 Sep 2019 11:29:52 +0000 (14:29 +0300)]
dmaengine: ti: k3-udma: Add support for suppressing TDC message

Some PSI-L peripheral can not or have identified issue with sending
Teardown Completion Message. For these threads adding ti,notdpkt will make
sure that it is suppressed.

Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com>
Tested-by: Keerthy <j-keerthy@ti.com>
4 years agoremoteproc: Add a sysfs interface for name
Suman Anna [Fri, 9 Aug 2019 22:20:57 +0000 (17:20 -0500)]
remoteproc: Add a sysfs interface for name

[ Upstream commit 6ed756aa0148a5ad0dbdced6f14f22e2f5748d35 ]

This patch adds a sysfs interface that provides the name of the
remote processor to userspace. This allows the userspace to identify
a remote processor as the remoteproc devices themselves are created
based on probe order and can change from one boot to another or
at runtime.

The name is made available in debugfs originally, and is being
retained for now. This can be cleaned up after couple of releases
once users get familiar with the new interface.

[s-anna@ti.com: cherry-pick commit '6ed756aa0148' from v5.4]
Signed-off-by: Suman Anna <s-anna@ti.com>
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
4 years agorpmsg: virtio_rpmsg_bus: replace "%p" with "%pK"
Suman Anna [Wed, 24 Oct 2018 01:19:09 +0000 (20:19 -0500)]
rpmsg: virtio_rpmsg_bus: replace "%p" with "%pK"

[ Upstream commit de4064af76537f13d74a814a962f4524e81436ac ]

The virtio_rpmsg_bus driver uses the "%p" format-specifier for
printing the vring buffer address. This prints only a hashed
pointer even for previliged users. Use "%pK" instead so that
the address can be printed during debug using kptr_restrict
sysctl.

[s-anna@ti.com: cherry-pick commit 'de4064af7653' from v5.4]
Signed-off-by: Suman Anna <s-anna@ti.com>
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
4 years agorpmsg: core: fix comments
Pierre-Louis Bossart [Sat, 23 Feb 2019 04:20:17 +0000 (22:20 -0600)]
rpmsg: core: fix comments

[ Upstream commit 9ff166def8c1f5759555c2c94ddd0fef11a18c2b ]

Minor typos, grammar and copy/paste issues. Fix for consistency. No
functional or semantic change.

Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
[s-anna@ti.com: cherry-pick commit '9ff166def8c1' from v5.4]
Signed-off-by: Suman Anna <s-anna@ti.com>
4 years agosamples/rpmsg: Replace print_hex_dump() with print_hex_dump_debug()
Suman Anna [Fri, 9 Aug 2019 16:27:09 +0000 (11:27 -0500)]
samples/rpmsg: Replace print_hex_dump() with print_hex_dump_debug()

[ Upstream commit 2519fbb39711e5e6696685f29fe049af93c5987c ]

Replace the raw print_hex_dump() call in the rpmsg_sample_cb() function
with the equivalent print_hex_dump_debug() better suited for dynamic
debug. This switch allows flexibility of controlling this trace through
dynamic debug when enabled.

[s-anna@ti.com: cherry-pick commit '2519fbb39711' from v5.4]
Signed-off-by: Suman Anna <s-anna@ti.com>
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>