Merge branch '24-drivers-net'
net: keystone: add missing statistics for k2l and k2e
This patch adds the missing statistics for k2l and k2e.
It also removes the ones that are not defined for these
platforms.
Signed-off-by: WingMan Kwok <w-kwok2@ti.com>
This patch adds the missing statistics for k2l and k2e.
It also removes the ones that are not defined for these
platforms.
Signed-off-by: WingMan Kwok <w-kwok2@ti.com>
net: keystone: add support of setting hw address live
This patch adds support of setting hw address live.
When doing so, the netcp needs to update the lower
modules cpsw and pa to update their database accordingly,
i.e. setting up their receive filters.
Signed-off-by: WingMan Kwok <w-kwok2@ti.com>
This patch adds support of setting hw address live.
When doing so, the netcp needs to update the lower
modules cpsw and pa to update their database accordingly,
i.e. setting up their receive filters.
Signed-off-by: WingMan Kwok <w-kwok2@ti.com>
net: keystone: add support of additional 1G sgmii mode configurations
This patch adds support of 3 1G sgmii mode configurations
1. MAC-to-PHY master (SGMII_LINK_MAC_PHY_MASTER)
2. MAC-to-PHY master NO MDIO (SGMII_LINK_MAC_PHY_MASTER_NO_MDIO)
- SGMII is in master mode and auto-nego enabled
- use this mode to work around link down/up
issue observed on K2E/L.
- these 2 modes supports only gigabit fullduplex connections.
3. MAC-to-MAC Auto-negotiation Slave (SGMII_LINK_MAC_MAC_AN_SLAVE)
- When connected 2 EVMs back-to-back and one
side is configured as MAC-to-MAC Auto-negotiation master
the other side needs to be configured as auto-nego slave.
Signed-off-by: WingMan Kwok <w-kwok2@ti.com>
This patch adds support of 3 1G sgmii mode configurations
1. MAC-to-PHY master (SGMII_LINK_MAC_PHY_MASTER)
2. MAC-to-PHY master NO MDIO (SGMII_LINK_MAC_PHY_MASTER_NO_MDIO)
- SGMII is in master mode and auto-nego enabled
- use this mode to work around link down/up
issue observed on K2E/L.
- these 2 modes supports only gigabit fullduplex connections.
3. MAC-to-MAC Auto-negotiation Slave (SGMII_LINK_MAC_MAC_AN_SLAVE)
- When connected 2 EVMs back-to-back and one
side is configured as MAC-to-MAC Auto-negotiation master
the other side needs to be configured as auto-nego slave.
Signed-off-by: WingMan Kwok <w-kwok2@ti.com>
net: keystone: clean up slave port configurations
In multi-if mode:
When MDIO/PHY is enabled, carrier on/off is reported
to upper layer by the phy state machine, hence cpsw
driver needs to report carrier on/off when the link
interface type is other than MAC-to-PHY.
Also, in the MAC-to-PHY case, in addition to checking
the sgmii link status register, cpsw driver needs to
check the bit that corresponds to the phy connected to
the slave port in the phy link state variable in netcp
in order to conclude the sgmii link status. Only when
both of these two statuses show an up state can the cpsw
driver conclude the link is up. Before this
patch, it checks the aggregated value of the phy link
state variable.
In the case of MAC-to-MAC, the cpsw driver is responsible
to report the carrier on/off status to upper layers.
Signed-off-by: WingMan Kwok <w-kwok2@ti.com>
In multi-if mode:
When MDIO/PHY is enabled, carrier on/off is reported
to upper layer by the phy state machine, hence cpsw
driver needs to report carrier on/off when the link
interface type is other than MAC-to-PHY.
Also, in the MAC-to-PHY case, in addition to checking
the sgmii link status register, cpsw driver needs to
check the bit that corresponds to the phy connected to
the slave port in the phy link state variable in netcp
in order to conclude the sgmii link status. Only when
both of these two statuses show an up state can the cpsw
driver conclude the link is up. Before this
patch, it checks the aggregated value of the phy link
state variable.
In the case of MAC-to-MAC, the cpsw driver is responsible
to report the carrier on/off status to upper layers.
Signed-off-by: WingMan Kwok <w-kwok2@ti.com>
Merge branch 'v3.10.61/rebuild/24-drivers-net' into v3.10.61/master
net: keystone: store network statistics in 64 bits
Previously the network statistics were stored in 32 bit u_ints
which can cause some stats to roll over after several minutes of
high traffic. This implements 64 bit storage so larger numbers
can be stored.
Signed-off-by: Michael Scherban <m-scherban@ti.com>
Previously the network statistics were stored in 32 bit u_ints
which can cause some stats to roll over after several minutes of
high traffic. This implements 64 bit storage so larger numbers
can be stored.
Signed-off-by: Michael Scherban <m-scherban@ti.com>
Merge branch 'master/rebuild/24-drivers-net' into master/master
net: keystone: Add TX queue depth resizing to NetCP QoS
This patch makes the TX queue depths (really the number of DMA
descriptors available) visible and modifiable in sysfs. This
also exposes queue name and device multi-interface mode.
This patch provides these features in the NetCP QoS module ONLY,
and does not apply to other NetCP modules (PA, SA, etc).
Signed-off-by: Reece R. Pollack <x0183204@ti.com>
This patch makes the TX queue depths (really the number of DMA
descriptors available) visible and modifiable in sysfs. This
also exposes queue name and device multi-interface mode.
This patch provides these features in the NetCP QoS module ONLY,
and does not apply to other NetCP modules (PA, SA, etc).
Signed-off-by: Reece R. Pollack <x0183204@ti.com>
6 years agoMerge branch 'master/rebuild/24-drivers-net' into master/master v3.10.61/master K2_LINUX_03.10.61_15.02
Merge branch 'master/rebuild/24-drivers-net' into master/master
Revert "net: keystone: Add TX queue depth resizing to NetCP QoS"
This feature was not intended for the current release, and thus is
being reverted. It will appear in the next release.
This reverts commit 7710b4b7519ec0162d18fce7d85f6b22dd07fc7f.
This feature was not intended for the current release, and thus is
being reverted. It will appear in the next release.
This reverts commit 7710b4b7519ec0162d18fce7d85f6b22dd07fc7f.
Merge branch 'master/rebuild/24-drivers-net' into master/master
Merge branch 'master/rebuild/20-firmware' into master/master
net: keystone: Add TX queue depth resizing to NetCP QoS
This patch makes the TX queue depths (really the number of DMA
descriptors available) visible and modifiable in sysfs. Also
exposed queue name and device multi-interface mode.
This change affects ONLY the NetCP QoS module, and does not
apply to other NetCP modules (PA, SA, etc).
Signed-off-by: Reece R. Pollack <x0183204@ti.com>
This patch makes the TX queue depths (really the number of DMA
descriptors available) visible and modifiable in sysfs. Also
exposed queue name and device multi-interface mode.
This change affects ONLY the NetCP QoS module, and does not
apply to other NetCP modules (PA, SA, etc).
Signed-off-by: Reece R. Pollack <x0183204@ti.com>
firmware: keystone: Update NetCP PA PDSP firmware to 3.0.1.4
This patch updates the NetCP PA PDSP firmware to rev 3.0.1.4.
Signed-off-by: Reece R. Pollack <x0183204@ti.com>
This patch updates the NetCP PA PDSP firmware to rev 3.0.1.4.
Signed-off-by: Reece R. Pollack <x0183204@ti.com>
Merge branch 'master/rebuild/24-drivers-net' into master/master
Merge branch 'master/rebuild/23-drivers-dmaengine' into master/master
Merge branch 'master/rebuild/22-drivers-hwqueue' into master/master
net: keystone: Remove NetCP CPSW ALE VLAN configuration
An early implementation of the NetCP CPSW module configured the
Address Lookup Engine (ALE) to be VLAN-aware. This was later
determined to be undesirable, and the VLAN-aware bit in the ALE
Control register was changed to 0. However, the code to configure
VLAN-specific entries remained. This patch removes this unneeded
code, and addresses a NULL pointer dereference in the process.
Signed-off-by: Reece R. Pollack <x0183204@ti.com>
An early implementation of the NetCP CPSW module configured the
Address Lookup Engine (ALE) to be VLAN-aware. This was later
determined to be undesirable, and the VLAN-aware bit in the ALE
Control register was changed to 0. However, the code to configure
VLAN-specific entries remained. This patch removes this unneeded
code, and addresses a NULL pointer dereference in the process.
Signed-off-by: Reece R. Pollack <x0183204@ti.com>
net: keystone: Fix memory leak in CPSW ALE configuration
Prior to this patch, the CPSW ALE context was created when the first
interface on a device was opened, but it was not destroyed when the
last interface was closed (it was stopped instead). This resulted in
a memory leak. This patch corrects this.
Also, the ALE Slaves were being shut down after the ALE context was
being destroyed. This could result in a NULL pointer reference. This
patch fixes this too.
Finally, the ALE reference count in keystone_xgess.c was a non-atomic
integer, while the other modules used an atomic. This patch fixes this
and includes some minor restructuring so the code looks more like the
other two modules.
Signed-off-by: Reece R. Pollack <x0183204@ti.com>
Prior to this patch, the CPSW ALE context was created when the first
interface on a device was opened, but it was not destroyed when the
last interface was closed (it was stopped instead). This resulted in
a memory leak. This patch corrects this.
Also, the ALE Slaves were being shut down after the ALE context was
being destroyed. This could result in a NULL pointer reference. This
patch fixes this too.
Finally, the ALE reference count in keystone_xgess.c was a non-atomic
integer, while the other modules used an atomic. This patch fixes this
and includes some minor restructuring so the code looks more like the
other two modules.
Signed-off-by: Reece R. Pollack <x0183204@ti.com>
net: keystone: Remove erroneous dmaengine_pause calls in PA shutdown
This patch removes erroneous calls to dmaengine_pause() in the NetCP
PA shutdown sequence. This function should be called to stop DMA
completion notifications that would trigger later dma_poll() calls
from a softIRQ or tasklet. If the interrupt is to be serviced from
the notifier routine, then we should not be pausing the channel
even if we're shutting it down.
Signed-off-by: Reece R. Pollack <x0183204@ti.com>
This patch removes erroneous calls to dmaengine_pause() in the NetCP
PA shutdown sequence. This function should be called to stop DMA
completion notifications that would trigger later dma_poll() calls
from a softIRQ or tasklet. If the interrupt is to be serviced from
the notifier routine, then we should not be pausing the channel
even if we're shutting it down.
Signed-off-by: Reece R. Pollack <x0183204@ti.com>
net: keystone: k2e k2l changes paired with k2hk
This patch pairs some changes made for k2hk in two commits
before but not on k2e and k2l.
Original k2hk commit logs:
net: keystone: Don't re-initialize CPSW host port and ALE
Prior to this patch, every time an interface was brought up
the CPSW host port and a number of ALE configurations were re-
initialized. This is unnecessary and interferes with some uses
of the CPSW by DSPs. This patch causes the CPSW host port and
ALE to be configured only when the first interface on the CPSW
is brought up.
Note that if all of the interfaces on the CPSW are brought down,
the clocks driving the CPSW (and other parts of the NetCP) are
shut off for power consumption, which is assumed to cause a loss
of configuration. Thus the CPSW must be re-initialized when the
first interface is brought back up.
net: keystone: Clean up network interface shutdown
This patch also asserts SGMII RTRESET during shutdown to avoid
having the hardware wedge when shutting down with high incoming
traffic rates. This is cleared when the interface is brought
back up.
Signed-off-by: WingMan Kwok <w-kwok2@ti.com>
This patch pairs some changes made for k2hk in two commits
before but not on k2e and k2l.
Original k2hk commit logs:
net: keystone: Don't re-initialize CPSW host port and ALE
Prior to this patch, every time an interface was brought up
the CPSW host port and a number of ALE configurations were re-
initialized. This is unnecessary and interferes with some uses
of the CPSW by DSPs. This patch causes the CPSW host port and
ALE to be configured only when the first interface on the CPSW
is brought up.
Note that if all of the interfaces on the CPSW are brought down,
the clocks driving the CPSW (and other parts of the NetCP) are
shut off for power consumption, which is assumed to cause a loss
of configuration. Thus the CPSW must be re-initialized when the
first interface is brought back up.
net: keystone: Clean up network interface shutdown
This patch also asserts SGMII RTRESET during shutdown to avoid
having the hardware wedge when shutting down with high incoming
traffic rates. This is cleared when the interface is brought
back up.
Signed-off-by: WingMan Kwok <w-kwok2@ti.com>
dma: keystone: Fix memory leak freeing DMA descriptors
This patch corrects a memory leak when freeing software DMA
descriptors. The loop containing the error was intended to
identify any hardware DMA descriptors which did not get freed
by the previous loop, but do to missing braces ({..}) it always
set "leaked" to "true" which prevented the software descriptor
array from being freed.
Signed-off-by: Reece R. Pollack <x0183204@ti.com>
This patch corrects a memory leak when freeing software DMA
descriptors. The loop containing the error was intended to
identify any hardware DMA descriptors which did not get freed
by the previous loop, but do to missing braces ({..}) it always
set "leaked" to "true" which prevented the software descriptor
array from being freed.
Signed-off-by: Reece R. Pollack <x0183204@ti.com>
hwqueue: Fix race in disabling interrupt notifications
Prior to this patch, there existed a race condition between
disabling of notifications in hwqueue_disable_notifier() and
hwqueue_notify(). In this race, the delivery of an interrupt
after the notifier was marked disabled but before disabling
the interrupt would result in the interrupt service routine
not calling the notifier function. Thus the interrupt persists
which prevents or severely delays the disabling of the interrupt.
This patch synchronizes the entire notifier disable sequence
against the delivery of an interrupt notification by the use
of a spinlock. Synchronization is also provided against the
enable sequence. Note that the use of atomic operations does
not suffice in this situation.
Signed-off-by: Reece R. Pollack <x0183204@ti.com>
Prior to this patch, there existed a race condition between
disabling of notifications in hwqueue_disable_notifier() and
hwqueue_notify(). In this race, the delivery of an interrupt
after the notifier was marked disabled but before disabling
the interrupt would result in the interrupt service routine
not calling the notifier function. Thus the interrupt persists
which prevents or severely delays the disabling of the interrupt.
This patch synchronizes the entire notifier disable sequence
against the delivery of an interrupt notification by the use
of a spinlock. Synchronization is also provided against the
enable sequence. Note that the use of atomic operations does
not suffice in this situation.
Signed-off-by: Reece R. Pollack <x0183204@ti.com>
Merge branch 'master/rebuild/01-upstream' into master/master
net: Fix skb->protocol setting for mixed IPsec tunnels
When processing fragmented packets in a mixed-protocol tunnel
(i.e. IPv6 inner and IPv4 outer, or IPv4 inner and IPv6 outer),
the skb->protocol field is being set to the wrong value. This
patch sets the skb->protocol value according to the IP header
version of the packet it's carrying.
Signed-off-by: Reece R. Pollack <x0183204@ti.com>
When processing fragmented packets in a mixed-protocol tunnel
(i.e. IPv6 inner and IPv4 outer, or IPv4 inner and IPv6 outer),
the skb->protocol field is being set to the wrong value. This
patch sets the skb->protocol value according to the IP header
version of the packet it's carrying.
Signed-off-by: Reece R. Pollack <x0183204@ti.com>
net: Add IPv4 ICMP support to GSO
This patch adds support for IPv4 ICMP to Generic Segementation
Offload. This permits inner fragmentation of ICMP packets sent
over certain IPsec tunnels, rather than requiring fragmentation
of the over-sized IPsec packets.
Signed-off-by: Reece R. Pollack <x0183204@ti.com>
This patch adds support for IPv4 ICMP to Generic Segementation
Offload. This permits inner fragmentation of ICMP packets sent
over certain IPsec tunnels, rather than requiring fragmentation
of the over-sized IPsec packets.
Signed-off-by: Reece R. Pollack <x0183204@ti.com>
Merge branch 'master/rebuild/20-firmware' into master/master
firmware: keystone: Update NetCP PA 3.0.1.3 firmware (several bugfixes)
This patch updates the NetCP PA firmware rev 3.0.1.3 to help address
several bugs reported in the LLD (DSP) software.
Signed-off-by: Reece R. Pollack <x0183204@ti.com>
This patch updates the NetCP PA firmware rev 3.0.1.3 to help address
several bugs reported in the LLD (DSP) software.
Signed-off-by: Reece R. Pollack <x0183204@ti.com>
Merge branch 'v3.10.61/rebuild/24-drivers-net' into v3.10.61/master
Merge branch 'v3.10.61/rebuild/12-keystone-machine' into v3.10.61/master
net: keystone: disable slave port state on ifdown
Currently the slave port state is not updated when interface is
brought down. This patch fixes this.
Signed-off-by: Murali Karicheri <m-karicheri2@ti.com>
Currently the slave port state is not updated when interface is
brought down. This patch fixes this.
Signed-off-by: Murali Karicheri <m-karicheri2@ti.com>
ARM: keystone: add a work around to handle external abort
Currently on some devices, an async external abort happens first time
exception handlers are enabled in kernel before switching to user space.
This patch add a workaround to handle this once and allow any subsequent
faults to be caught by the handler.
Signed-off-by: Murali Karicheri <m-karicheri2@ti.com>
Currently on some devices, an async external abort happens first time
exception handlers are enabled in kernel before switching to user space.
This patch add a workaround to handle this once and allow any subsequent
faults to be caught by the handler.
Signed-off-by: Murali Karicheri <m-karicheri2@ti.com>
Merge branch 'v3.10.61/rebuild/24-drivers-net' into v3.10.61/master
Merge branch 'v3.10.61/rebuild/20-firmware' into v3.10.61/master
Merge branch 'v3.10.61/rebuild/12-keystone-machine' into v3.10.61/master
net: keystone: ale: fix sysfs attribute issue when debug options are enabled
Currently when CONFIG_DEBUG_LOCKDEP is enabled, following errors are
thrown by the kernel.
"BUG: key ebc25d10 not in .data!"
This patch fixes this issue by using sysfs_attr_init() to initialize the
dynamically allocated attributes. Kernel otherwise expects this to be
declared statically and passed to device_create_file().
Signed-off-by: Murali Karicheri <m-karicheri2@ti.com>
Currently when CONFIG_DEBUG_LOCKDEP is enabled, following errors are
thrown by the kernel.
"BUG: key ebc25d10 not in .data!"
This patch fixes this issue by using sysfs_attr_init() to initialize the
dynamically allocated attributes. Kernel otherwise expects this to be
declared statically and passed to device_create_file().
Signed-off-by: Murali Karicheri <m-karicheri2@ti.com>
ARM: keystone: allow FORCE_MAX_ZONEORDER to be configurable on Keystone
Currently adding CONFIG_FORCE_MAX_ZONEORDER option in defconfig
doesn't change the MAX_ZONEORDER used in defconfig. User require
tuning of this on a target board. So fix this.
Signed-off-by: Murali Karicheri <m-karicheri2@ti.com>
Currently adding CONFIG_FORCE_MAX_ZONEORDER option in defconfig
doesn't change the MAX_ZONEORDER used in defconfig. User require
tuning of this on a target board. So fix this.
Signed-off-by: Murali Karicheri <m-karicheri2@ti.com>
net: keystone: Update NetCP PA2 PDSP constant for 3.0.1.3 firmware
This update the constant to match with 3.0.1.3
Signed-off-by: Murali Karicheri <m-karicheri2@ti.com>
This update the constant to match with 3.0.1.3
Signed-off-by: Murali Karicheri <m-karicheri2@ti.com>
firmware: keystone: Update NetCP PDSP firmware to 3.0.1.3
This patch updates the NetCP PDSP firmware to rev 3.0.1.3. It
requires a companion patch to update the PA2 PDSP constants.
Signed-off-by: Murali Karicheri <m-karicheri2@ti.com>
This patch updates the NetCP PDSP firmware to rev 3.0.1.3. It
requires a companion patch to update the PA2 PDSP constants.
Signed-off-by: Murali Karicheri <m-karicheri2@ti.com>
arm: keystone2: add default config and DTS for recovery kernel
Signed-off-by: Vitaly Andrianov <vitalya@ti.com>
Signed-off-by: Vitaly Andrianov <vitalya@ti.com>
arm: keystone2: kexec: change load address for recovery kernel
The recovery kernel has to be loaded in to the different address.
Signed-off-by: Vitaly Andrianov <vitalya@ti.com>
The recovery kernel has to be loaded in to the different address.
Signed-off-by: Vitaly Andrianov <vitalya@ti.com>
arm: keystone2: defconfig: enable KEXEC and CRASH_DUMP
Add the KEXEC and CRASH_DUMP by default
Signed-off-by: Vitaly Andrianov <vitalya@ti.com>
Add the KEXEC and CRASH_DUMP by default
Signed-off-by: Vitaly Andrianov <vitalya@ti.com>
arm: keystone2: use ks2 aliased physical address for cpu_reset
KS2 system uses physical addresses outside of first 4GB memory range.
Once the cpu_reset() disables MMU that memory cannot be used.
To let the cpu_reset() successfully restart CPU we need to run it from
KS2 aliased memory address space.
Signed-off-by: Vitaly Andrianov <vitalya@ti.com>
KS2 system uses physical addresses outside of first 4GB memory range.
Once the cpu_reset() disables MMU that memory cannot be used.
To let the cpu_reset() successfully restart CPU we need to run it from
KS2 aliased memory address space.
Signed-off-by: Vitaly Andrianov <vitalya@ti.com>
arm: keystone2: kexec: convert physical to aliased addresses and back
This patch converts physical addresses and pages that are used for kexec
functionality to the corresponding aliased addresses and pages.
It is required because:
- Keystone2 SoC DDR3 addresses are outside the first 4GB of address range.
In order to access the first 4GB of the memory on boot time before
enabling MMU HW provide memory range aliasing (See KS2 TRM for details).
Before rebooting the kernel we need to convert all physical addresses,
which are used by recovery kernel to the corresponding aliased values.
- Before enabling MMU ARM uses 32 bit addresses. Even if we need a real
physical address instead of aliased one, we still convert it to aliased
address in the working kernel and restore back to physical in the recovery
kernel.
- kexec user utility uses 32 bit variables to pass addresses to the
kernel. So, we have to use aliased addresses as well and convert them to
physical in kernel
Signed-off-by: Vitaly Andrianov <vitalya@ti.com>
This patch converts physical addresses and pages that are used for kexec
functionality to the corresponding aliased addresses and pages.
It is required because:
- Keystone2 SoC DDR3 addresses are outside the first 4GB of address range.
In order to access the first 4GB of the memory on boot time before
enabling MMU HW provide memory range aliasing (See KS2 TRM for details).
Before rebooting the kernel we need to convert all physical addresses,
which are used by recovery kernel to the corresponding aliased values.
- Before enabling MMU ARM uses 32 bit addresses. Even if we need a real
physical address instead of aliased one, we still convert it to aliased
address in the working kernel and restore back to physical in the recovery
kernel.
- kexec user utility uses 32 bit variables to pass addresses to the
kernel. So, we have to use aliased addresses as well and convert them to
physical in kernel
Signed-off-by: Vitaly Andrianov <vitalya@ti.com>
Merge branch '15-dts' into master2
keystone: dts: add psci command definition
This commit adds definition for cpu_on, cpu_off and cpu_suspend commands.
These definitions must match the corresponding PSCI definitions in
boot monitor.
Having those command and corresponding PSCI support in boot monitor allows
run time CPU hot plugin.
Signed-off-by: Vitaly Andrianov <vitalya@ti.com>
This commit adds definition for cpu_on, cpu_off and cpu_suspend commands.
These definitions must match the corresponding PSCI definitions in
boot monitor.
Having those command and corresponding PSCI support in boot monitor allows
run time CPU hot plugin.
Signed-off-by: Vitaly Andrianov <vitalya@ti.com>
Merge branch '13-defconfig' into master2
Merge branch '12-mach' into master2
ARM: keystone: defconfig: add ARM_PSCI and HOTPLUG_CPU support
Signed-off-by: Vitaly Andrianov <vitalya@ti.com>
Signed-off-by: Vitaly Andrianov <vitalya@ti.com>
keystone: psci: adds cpu_die implementation
This commit add cpu_die implementation using psci api
Signed-off-by: Vitaly Andrianov <vitalya@ti.com>
This commit add cpu_die implementation using psci api
Signed-off-by: Vitaly Andrianov <vitalya@ti.com>
Merge branch 'master/rebuild/15-keystone-devicetree' into master/master
k2e: dts: add srss uio support
Adds device tree bindings to enable Smart Reflex Sub-System register
access and temperature threshold point interrupt via UIO for K2E device.
Signed-off-by: Hao Zhang <hzhang@ti.com>
Adds device tree bindings to enable Smart Reflex Sub-System register
access and temperature threshold point interrupt via UIO for K2E device.
Signed-off-by: Hao Zhang <hzhang@ti.com>
Merge branch 'v3.10.61/rebuild/13-keystone-defconfig' into v3.10.61/master
ARM: keystone: defconfig: enable AES GCM option
In the defconfig enable AES GCM by default.
Signed-off-by: Murali Karicheri <m-karicheri2@ti.com>
In the defconfig enable AES GCM by default.
Signed-off-by: Murali Karicheri <m-karicheri2@ti.com>
Merge branch 'v3.10.61/rebuild/15-keystone-devicetree' into v3.10.61/master
keystone: dts: disable PCIe by default for K2L EVM
K2L EVM has by default SGMII configured to use the two serdes lanes and
the same is not available for PCIe. Currently both SGMII driver and
PCI driver is configured to use the SerDes. This patch disables PCIe-0
by default in keystone.dtsi and enable it only for K2HK and K2E. For K2L
it will remain disabled to match with hardware configuration. To enable
PCI-0, status needs to be set to "ok" on K2L based boards that has mux in
configured for PCIe to use SerDes lanes. For PCI-1, we don't have the
support enabled in DTS. So no issue.
Signed-off-by: Murali Karicheri <m-karicheri2@ti.com>
K2L EVM has by default SGMII configured to use the two serdes lanes and
the same is not available for PCIe. Currently both SGMII driver and
PCI driver is configured to use the SerDes. This patch disables PCIe-0
by default in keystone.dtsi and enable it only for K2HK and K2E. For K2L
it will remain disabled to match with hardware configuration. To enable
PCI-0, status needs to be set to "ok" on K2L based boards that has mux in
configured for PCIe to use SerDes lanes. For PCI-1, we don't have the
support enabled in DTS. So no issue.
Signed-off-by: Murali Karicheri <m-karicheri2@ti.com>
Merge branch 'v3.10.61/rebuild/34-drivers-crypto' into v3.10.61/master
crypto: keystone: Add support for authenc - hmac(sha1),ecb(cipher_null) algorithms
This patch adds support for following algorithm implmentations in the
kernel crypto framework:
- authenc(hmac(sha1),ecb(cipher_null))
Signed-off-by: Tinku Mannan <tmannan@ti.com>
This patch adds support for following algorithm implmentations in the
kernel crypto framework:
- authenc(hmac(sha1),ecb(cipher_null))
Signed-off-by: Tinku Mannan <tmannan@ti.com>
Merge branch 'rebuild/29-drivers-rproc' into v3.10/master
remoteproc: patch for aligning uio address and size
- Uio driver now restricts the mmap to aligned addresses
- This patch is to pass aligned addresses to uio driver.
Signed-off-by: Ivan Pang <i-pang@ti.com>
Signed-off-by: Sam Nelson <sam.nelson@ti.com>
- Uio driver now restricts the mmap to aligned addresses
- This patch is to pass aligned addresses to uio driver.
Signed-off-by: Ivan Pang <i-pang@ti.com>
Signed-off-by: Sam Nelson <sam.nelson@ti.com>
Merge branch 'master/rebuild/24-drivers-net' into master/master
Merge branch 'master/rebuild/20-firmware' into master/master
net: keystone: Update NetCP PA2 PDSP constants for 3.0.1.2 firmware
This patch updates NetCP v2 PA PDSP constants used by the 3.0.1.2 firmware
committed in a separate patch.
Signed-off-by: Reece R. Pollack <x0183204@ti.com>
This patch updates NetCP v2 PA PDSP constants used by the 3.0.1.2 firmware
committed in a separate patch.
Signed-off-by: Reece R. Pollack <x0183204@ti.com>
firmware: keystone: Update NetCP PDSP firmware to 3.0.1.2
This patch updates the NetCP PDSP firmware to rev 3.0.1.2. It
requires a companion patch to update the PA2 PDSP constants.
Signed-off-by: Reece R. Pollack <x0183204@ti.com>
This patch updates the NetCP PDSP firmware to rev 3.0.1.2. It
requires a companion patch to update the PA2 PDSP constants.
Signed-off-by: Reece R. Pollack <x0183204@ti.com>
Merge branch 'master/rebuild/24-drivers-net' into master/master
Merge branch 'rebuild/15-keystone-devicetree'
Merge branch 'rebuild/13-keystone-defconfig'
Merge branch 'rebuild/31-drivers-usb'
keystone: dts: add bindings for second usb controller on K2E
Since the USB connector for USB1 on K2E EVM is an USB
3.0 micro AB connector, adapter is needed for using it
in host mode. Hence the devicetree bindings for USB1
is disabled by default.
Signed-off-by: WingMan Kwok <w-kwok2@ti.com>
Since the USB connector for USB1 on K2E EVM is an USB
3.0 micro AB connector, adapter is needed for using it
in host mode. Hence the devicetree bindings for USB1
is disabled by default.
Signed-off-by: WingMan Kwok <w-kwok2@ti.com>
keystone: dts: add bindings for dwc3 core driver and phy driver
This binding is applicable to K2HK, K2L and K2E since each
platform has at least one usb host controller.
Signed-off-by: WingMan Kwok <w-kwok2@ti.com>
This binding is applicable to K2HK, K2L and K2E since each
platform has at least one usb host controller.
Signed-off-by: WingMan Kwok <w-kwok2@ti.com>
net: keystone: Update K2 NetCP PA PDSP constants for 3.0.1.1 firmware
A related commit updated the K2 NetCP PA PDSP firmware to 3.0.1.1, but
the constant values were not updated to match. This patch updates those
constants.
Signed-off-by: Reece R. Pollack <x0183204@ti.com>
A related commit updated the K2 NetCP PA PDSP firmware to 3.0.1.1, but
the constant values were not updated to match. This patch updates those
constants.
Signed-off-by: Reece R. Pollack <x0183204@ti.com>
ARM: keystone2: enable usb phy driver by default
Signed-off-by: WingMan Kwok <w-kwok2@ti.com>
Signed-off-by: WingMan Kwok <w-kwok2@ti.com>
usb: keystone: dts instantiation of platform specific phy and dwc3 core drivers
Current implementation registers and starts the generic
nop phy driver and dwc3 core driver from within the
dwc3 keystone specific glue driver. This is not scalable
in the sense that supporting more than one usb controller
would be difficult. This patch adds a keystone specific
phy driver. Both of this phy driver and the dwc3 core driver
are instantiated through devicetree bindings. This
approach makes it easier to implement the support of more
than one USB controller.
This is is the same approach taken in the upstreamed version
of the keystone usb driver. The upstreamed version cannot be
backported cleanly due to API changes between kernel versions.
Signed-off-by: WingMan Kwok <w-kwok2@ti.com>
Current implementation registers and starts the generic
nop phy driver and dwc3 core driver from within the
dwc3 keystone specific glue driver. This is not scalable
in the sense that supporting more than one usb controller
would be difficult. This patch adds a keystone specific
phy driver. Both of this phy driver and the dwc3 core driver
are instantiated through devicetree bindings. This
approach makes it easier to implement the support of more
than one USB controller.
This is is the same approach taken in the upstreamed version
of the keystone usb driver. The upstreamed version cannot be
backported cleanly due to API changes between kernel versions.
Signed-off-by: WingMan Kwok <w-kwok2@ti.com>
usb: keystone: handle irq directly instead of through irq-chip
Currently the usb irq is handled through the implementation of
an irq-chip. But since the irq is solely for usb, there is no
need to handle the irq through such an indirect route. This patch
removes the irq-chip implementation and allow the driver handles
irq directly. Direct handling should improve the performance
and have cleaner usb driver code.
Signed-off-by: WingMan Kwok <w-kwok2@ti.com>
Currently the usb irq is handled through the implementation of
an irq-chip. But since the irq is solely for usb, there is no
need to handle the irq through such an indirect route. This patch
removes the irq-chip implementation and allow the driver handles
irq directly. Direct handling should improve the performance
and have cleaner usb driver code.
Signed-off-by: WingMan Kwok <w-kwok2@ti.com>
usb: dwc3: revert back to original version
Signed-off-by: WingMan Kwok <w-kwok2@ti.com>
Signed-off-by: WingMan Kwok <w-kwok2@ti.com>
xhci: remove compile warning
This patch removes the following compile warning
when CONFIG_USB_DEFAULT_PERSIST is defined.
drivers/usb/host/xhci.c: In function 'xhci_free_dev':
drivers/usb/host/xhci.c:3506:17: warning: unused variable 'dev' [-Wunused-variable]
drivers/usb/host/xhci.c: In function 'xhci_alloc_dev':
drivers/usb/host/xhci.c:3592:17: warning: unused variable 'dev' [-Wunused-variable]
Signed-off-by: WingMan Kwok <w-kwok2@ti.com>
This patch removes the following compile warning
when CONFIG_USB_DEFAULT_PERSIST is defined.
drivers/usb/host/xhci.c: In function 'xhci_free_dev':
drivers/usb/host/xhci.c:3506:17: warning: unused variable 'dev' [-Wunused-variable]
drivers/usb/host/xhci.c: In function 'xhci_alloc_dev':
drivers/usb/host/xhci.c:3592:17: warning: unused variable 'dev' [-Wunused-variable]
Signed-off-by: WingMan Kwok <w-kwok2@ti.com>
xhci: remove compile warning
This patch removes the following compile warning
when CONFIG_USB_DEFAULT_PERSIST is defined.
drivers/usb/host/xhci.c: In function 'xhci_free_dev':
drivers/usb/host/xhci.c:3506:17: warning: unused variable 'dev' [-Wunused-variable]
drivers/usb/host/xhci.c: In function 'xhci_alloc_dev':
drivers/usb/host/xhci.c:3592:17: warning: unused variable 'dev' [-Wunused-variable]
Signed-off-by: WingMan Kwok <w-kwok2@ti.com>
This patch removes the following compile warning
when CONFIG_USB_DEFAULT_PERSIST is defined.
drivers/usb/host/xhci.c: In function 'xhci_free_dev':
drivers/usb/host/xhci.c:3506:17: warning: unused variable 'dev' [-Wunused-variable]
drivers/usb/host/xhci.c: In function 'xhci_alloc_dev':
drivers/usb/host/xhci.c:3592:17: warning: unused variable 'dev' [-Wunused-variable]
Signed-off-by: WingMan Kwok <w-kwok2@ti.com>
Merge branch 'v3.10.61/rebuild/34-drivers-crypto' into v3.10.61/master
Merge branch 'v3.10.61/rebuild/33-drivers-pcie' into v3.10.61/master
Merge branch 'v3.10.61/rebuild/32-drivers-rpmsg' into v3.10.61/master
Merge branch 'v3.10.61/rebuild/31-drivers-usb' into v3.10.61/master
Merge branch 'v3.10.61/rebuild/30-drivers-uio' into v3.10.61/master
Merge branch 'v3.10.61/rebuild/29-drivers-rproc' into v3.10.61/master
Merge branch 'v3.10.61/rebuild/28-drivers-mtd' into v3.10.61/master
Merge branch 'v3.10.61/rebuild/27-drivers-common-clk' into v3.10.61/master
Merge branch 'v3.10.61/rebuild/26-drivers-misc' into v3.10.61/master
Merge branch 'v3.10.61/rebuild/24-drivers-net' into v3.10.61/master
Merge branch 'v3.10.61/rebuild/23-drivers-dmaengine' into v3.10.61/master
Merge branch 'v3.10.61/rebuild/22-drivers-hwqueue' into v3.10.61/master
Merge branch 'v3.10.61/rebuild/21-drivers-virtio' into v3.10.61/master
Merge branch 'v3.10.61/rebuild/20-firmware' into v3.10.61/master
Merge branch 'v3.10.61/rebuild/15-keystone-devicetree' into v3.10.61/master
Merge branch 'v3.10.61/rebuild/13-keystone-defconfig' into v3.10.61/master
Merge branch 'v3.10.61/rebuild/12-keystone-machine' into v3.10.61/master
Merge branch 'v3.10.61/rebuild/11-keystone-misc' into v3.10.61/master
Merge branch 'v3.10.61/rebuild/10-keystone-lpae' into v3.10.61/master
Merge branch 'v3.10.61/rebuild/05-davinci-common-clk' into v3.10.61/master
Merge branch 'v3.10.61/rebuild/02-no-upstream' into v3.10.61/master
crypto: keystone: Fix size argument being passed to find_first_free_zero_bit()
find_first_zero_bit() second argument expects the size in amount of bits (512),
but sizeof() is passed so it is passing the number of bytes, causing SA
sideband contexts >64 to be dropped. The patch changes the second argument to
pass in the number of bits.
Signed-off-by: Tinku Mannan <tmannan@ti.com>
find_first_zero_bit() second argument expects the size in amount of bits (512),
but sizeof() is passed so it is passing the number of bytes, causing SA
sideband contexts >64 to be dropped. The patch changes the second argument to
pass in the number of bits.
Signed-off-by: Tinku Mannan <tmannan@ti.com>