Age | Commit message (Collapse) | Author |
|
This reverts commit d2dfa8c0cdf585008cdf6a15c337c30e264f045e.
Change-Id: Ib5504c1600f99debc2654086781d9bf904e32f63
Reviewed-on: http://git.am.freescale.net:8181/24187
Reviewed-by: Richard Schmitt <richard.schmitt@freescale.com>
Tested-by: Richard Schmitt <richard.schmitt@freescale.com>
|
|
Duplicated code has already been extracted into an independent
function. Replace the code with a function call
Signed-off-by: Cristian Stoica <cristian.stoica@freescale.com>
Change-Id: Ieb70040fe4c13d27b7a5ab4450c7550b9b74f3b3
Reviewed-on: http://git.am.freescale.net:8181/19796
Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com>
Reviewed-by: Horia Ioan Geanta Neag <horia.geanta@freescale.com>
Reviewed-by: Mircea Pop <mircea.pop@freescale.com>
Reviewed-by: Richard Schmitt <richard.schmitt@freescale.com>
|
|
Change-Id: I37dbffe63e57af8a783b251d0f78087400b09d99
Signed-off-by: Mandy Lavi <mandy.lavi@freescale.com>
Reviewed-on: http://git.am.freescale.net:8181/23940
Reviewed-by: Eyal Harari <Eyal.Harari@freescale.com>
Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com>
Reviewed-by: Nir Erez <nir.erez@freescale.com>
Reviewed-by: Richard Schmitt <richard.schmitt@freescale.com>
|
|
The function is called with arguments known at compile time.
Remove runtime checks for out of bound values.
Signed-off-by: Cristian Stoica <cristian.stoica@freescale.com>
Change-Id: I2fe2e3d4bd3c63b81f99065b0db159a009f217e6
Reviewed-on: http://git.am.freescale.net:8181/19806
Reviewed-by: Horia Ioan Geanta Neag <horia.geanta@freescale.com>
Reviewed-by: Mircea Pop <mircea.pop@freescale.com>
Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com>
Reviewed-by: Matthew Weigel <Matthew.Weigel@freescale.com>
|
|
Memory allocated for ctx->jrdev is freed in all error paths except when
ahash_set_sh_desc(ahash) fails. Add a check for this case and free
memory as appropriate.
Signed-off-by: Cristian Stoica <cristian.stoica@freescale.com>
Change-Id: I1c4e45a8cfdc6d24d768e90a148bb398b3d09f52
Reviewed-on: http://git.am.freescale.net:8181/19803
Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com>
Reviewed-by: Horia Ioan Geanta Neag <horia.geanta@freescale.com>
Reviewed-by: Mircea Pop <mircea.pop@freescale.com>
Reviewed-by: Matthew Weigel <Matthew.Weigel@freescale.com>
|
|
This patch fixes a memory leak that appears when caam_jr module is unloaded.
Cc: <stable@vger.kernel.org> # 3.13+
Signed-off-by: Cristian Stoica <cristian.stoica@freescale.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
(cherry picked from commit 0378c9a855bfa395f595fbfb049707093e270f69)
Change-Id: I65f5e6d3611a007506d9c80c344e9467f6b20c84
Reviewed-on: http://git.am.freescale.net:8181/19794
Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com>
Reviewed-by: Horia Ioan Geanta Neag <horia.geanta@freescale.com>
Reviewed-by: Mircea Pop <mircea.pop@freescale.com>
Reviewed-by: Matthew Weigel <Matthew.Weigel@freescale.com>
|
|
Currently, devm_ managed memory only supports kzalloc.
Convert the devm_kzalloc implementation to devm_kmalloc and remove the
complete memset to 0 but still set the initial struct devres header and
whatever padding before data to 0.
Add the other normal alloc variants as static inlines with __GFP_ZERO
added to the gfp flag where appropriate:
devm_kzalloc
devm_kcalloc
devm_kmalloc_array
Add gfp.h to device.h for the newly added static inlines.
akpm: the current API forces us to replace kmalloc() with kzalloc() when
performing devm_ conversions. This adds a relatively minor overhead.
More significantly, it will defeat kmemcheck used-uninitialized checking,
and for a particular driver, losing used-uninitialised checking for their
core controlling data structures will significantly degrade kmemcheck
usefulness.
Signed-off-by: Joe Perches <joe@perches.com>
Cc: Tejun Heo <tj@kernel.org>
Cc: Sangjung Woo <sangjung.woo@samsung.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
(cherry picked from commit 64c862a839a8db2c02bbaa88b923d13e1208919d)
Change-Id: Ifb88e90e65f88dc4a06a0974fec86cbc7771c52a
Reviewed-on: http://git.am.freescale.net:8181/19793
Reviewed-by: Horia Ioan Geanta Neag <horia.geanta@freescale.com>
Reviewed-by: Mircea Pop <mircea.pop@freescale.com>
Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com>
Reviewed-by: Matthew Weigel <Matthew.Weigel@freescale.com>
|
|
In case hash key is bigger than algorithm block size, it is hashed.
In this case, memory is allocated to keep this hash in hashed_key.
hashed_key has to be freed on the key_dma dma mapping error path.
Signed-off-by: Horia Geanta <horia.geanta@freescale.com>
Reviewed-by: Marek Vasut <marex@denx.de>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
(cherry picked from commit 3d67be2761dc4b5b792037f296f3394a29581efc)
Change-Id: Ied6b875209839897e144e93f09b77431136c9703
Reviewed-on: http://git.am.freescale.net:8181/19765
Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com>
Reviewed-by: Mircea Pop <mircea.pop@freescale.com>
Reviewed-by: Matthew Weigel <Matthew.Weigel@freescale.com>
|
|
Replace equivalent (and partially incorrect) scatter-gather functions
with ones from crypto-API.
The replacement is motivated by page-faults in sg_copy_part triggered
by successive calls to crypto_hash_update. The following fault appears
after calling crypto_ahash_update twice, first with 13 and then
with 285 bytes:
Unable to handle kernel paging request for data at address 0x00000008
Faulting instruction address: 0xf9bf9a8c
Oops: Kernel access of bad area, sig: 11 [#1]
SMP NR_CPUS=8 CoreNet Generic
Modules linked in: tcrypt(+) caamhash caam_jr caam tls
CPU: 6 PID: 1497 Comm: cryptomgr_test Not tainted
3.12.19-rt30-QorIQ-SDK-V1.6+g9fda9f2 #75
task: e9308530 ti: e700e000 task.ti: e700e000
NIP: f9bf9a8c LR: f9bfcf28 CTR: c0019ea0
REGS: e700fb80 TRAP: 0300 Not tainted
(3.12.19-rt30-QorIQ-SDK-V1.6+g9fda9f2)
MSR: 00029002 <CE,EE,ME> CR: 44f92024 XER: 20000000
DEAR: 00000008, ESR: 00000000
GPR00: f9bfcf28 e700fc30 e9308530 e70b1e55 00000000 ffffffdd e70b1e54 0bebf888
GPR08: 902c7ef5 c0e771e2 00000002 00000888 c0019ea0 00000000 00000000 c07a4154
GPR16: c08d0000 e91a8f9c 00000001 e98fb400 00000100 e9c83028 e70b1e08 e70b1d48
GPR24: e992ce10 e70b1dc8 f9bfe4f4 e70b1e55 ffffffdd e70b1ce0 00000000 00000000
NIP [f9bf9a8c] sg_copy+0x1c/0x100 [caamhash]
LR [f9bfcf28] ahash_update_no_ctx+0x628/0x660 [caamhash]
Call Trace:
[e700fc30] [f9bf9c50] sg_copy_part+0xe0/0x160 [caamhash] (unreliable)
[e700fc50] [f9bfcf28] ahash_update_no_ctx+0x628/0x660 [caamhash]
[e700fcb0] [f954e19c] crypto_tls_genicv+0x13c/0x300 [tls]
[e700fd10] [f954e65c] crypto_tls_encrypt+0x5c/0x260 [tls]
[e700fd40] [c02250ec] __test_aead.constprop.9+0x2bc/0xb70
[e700fe40] [c02259f0] alg_test_aead+0x50/0xc0
[e700fe60] [c02241e4] alg_test+0x114/0x2e0
[e700fee0] [c022276c] cryptomgr_test+0x4c/0x60
[e700fef0] [c004f658] kthread+0x98/0xa0
[e700ff40] [c000fd04] ret_from_kernel_thread+0x5c/0x64
Signed-off-by: Cristian Stoica <cristian.stoica@freescale.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
(cherry picked from commit 307fd543f3d23f8f56850eca1b27b1be2fe71017)
Change-Id: I6d5822563f2437231def72c8a6ac37932a5139b8
Reviewed-on: http://git.am.freescale.net:8181/19763
Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com>
Reviewed-by: Horia Ioan Geanta Neag <horia.geanta@freescale.com>
Reviewed-by: Matthew Weigel <Matthew.Weigel@freescale.com>
|
|
desc_len(desc) returns a result masked by a seven bits mask representing
a descriptor length. The maximum length is 64 u32 words but masking
allows for larger but incorrect values.
This fix adds a bound check to the index of deco.descbuf array
(which is smaller than the maximum of 64 words), to avoid invalid
memory accesses.
(based on commit 05dbe2ed7da7d67cfd8915382c2559db684a0a29)
Signed-off-by: Cristian Stoica <cristian.stoica@freescale.com>
Signed-off-by: Matthew Weigel <matthew.weigel@freescale.com>
Change-Id: I05dbe2ed7da7d67cfd8915382c2559db684a0a29
Conflicts:
drivers/crypto/caam/ctrl.c
Reviewed-on: http://git.am.freescale.net:8181/19805
Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com>
Reviewed-by: Matthew Weigel <Matthew.Weigel@freescale.com>
|
|
Both error and normal paths call clrbits32 before returning. Put this
call in a single place to avoid code duplication
Signed-off-by: Cristian Stoica <cristian.stoica@freescale.com>
(cherry picked from commit c75e03a2d47583e39f46c2925abd0ca79a693086)
Signed-off-by: Matthew Weigel <Matthew.Weigel@freescale.com>
Conflicts:
drivers/crypto/caam/ctrl.c
Change-Id: I3c2ec1c34215b5d2a1ee036809beaeabf724ac48
Reviewed-on: http://git.am.freescale.net:8181/24179
Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com>
Reviewed-by: Matthew Weigel <Matthew.Weigel@freescale.com>
|
|
Signed-off-by: Cristian Stoica <cristian.stoica@freescale.com>
Change-Id: I0acac8a5fb22a0095ec1c347e4a100a277ac788f
Reviewed-on: http://git.am.freescale.net:8181/19810
Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com>
Reviewed-by: Mircea Pop <mircea.pop@freescale.com>
Reviewed-by: Matthew Weigel <Matthew.Weigel@freescale.com>
|
|
All arrays in question have six elements but the index is seven bits
wide. Make sure the index is bound by ARRAY_SIZE to avoid incorrect
memory accesses
Signed-off-by: Cristian Stoica <cristian.stoica@freescale.com>
Change-Id: Ic1a65f55e9aa76dc7828021010bac8ebac75b565
Reviewed-on: http://git.am.freescale.net:8181/19802
Reviewed-by: Horia Ioan Geanta Neag <horia.geanta@freescale.com>
Reviewed-by: Mircea Pop <mircea.pop@freescale.com>
Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com>
Reviewed-by: Matthew Weigel <Matthew.Weigel@freescale.com>
|
|
The offset field is 13 bits wide; make sure we don't overwrite more than
that in the caam hardware scatter gather structure
Signed-off-by: Cristian Stoica <cristian.stoica@freescale.com>
Change-Id: Id590d2aa9362d58e6920d9e54076ff6f184f3815
Reviewed-on: http://git.am.freescale.net:8181/19801
Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com>
Reviewed-by: Mircea Pop <mircea.pop@freescale.com>
Reviewed-by: Matthew Weigel <Matthew.Weigel@freescale.com>
|
|
In case sg_count is provided with a buffer length greater than
what is in the scatterlist, it will oops.
Stop the count of nents when sg is NULL.
Change-Id: I3fffdf901e602d11776e4fe5eb9322d2c186a612
Signed-off-by: Horia Geanta <horia.geanta@freescale.com>
Reviewed-on: http://git.am.freescale.net:8181/6467
Reviewed-by: Richard Schmitt <B43082@freescale.com>
Tested-by: Richard Schmitt <B43082@freescale.com>
Reviewed-on: http://git.am.freescale.net:8181/19787
Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com>
Reviewed-by: Matthew Weigel <Matthew.Weigel@freescale.com>
|
|
buf_0 and buf_1 in caam_hash_state are not next to each other.
Accessing buf_1 is incorrect from &buf_0 with an offset of only
size_of(buf_0). The same issue is also with buflen_0 and buflen_1
Cc: <stable@vger.kernel.org> # 3.13+
Signed-off-by: Cristian Stoica <cristian.stoica@freescale.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
(cherry picked from commit 4451d494b1910bf7b7f8381a637d0fe6d2142467)
Change-Id: Ibd092659780d8a918424e4cc753f3e83792406f8
Reviewed-on: http://git.am.freescale.net:8181/19764
Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com>
Reviewed-by: Horia Ioan Geanta Neag <horia.geanta@freescale.com>
Reviewed-by: Mircea Pop <mircea.pop@freescale.com>
Reviewed-by: Matthew Weigel <Matthew.Weigel@freescale.com>
|
|
The sampling of the oscillator can be done in multiple modes for
generating the entropy value. By default, this is set to von
Neumann. This patch changes the sampling to raw data, since it
has been discovered that the generated entropy has a better
'quality'.
Signed-off-by: Alex Porosanu <alexandru.porosanu@freescale.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
(cherry picked from commit e5ffbfc182bc148f44840bdd3970ea4c8bf80c3c)
Change-Id: Ib366aa7e0477b2793f648333f2798a5c7b59ec5f
Reviewed-on: http://git.am.freescale.net:8181/23839
Reviewed-by: Matthew Weigel <Matthew.Weigel@freescale.com>
Tested-by: Matthew Weigel <Matthew.Weigel@freescale.com>
|
|
The entropy delay (the length in system clocks of each
entropy sample) for the RNG4 block of CAAM is dependent
on the frequency of the SoC. By elaborate methods, it
has been determined that a good starting value for all
platforms integrating the CAAM IP is 3200. Using a
higher value has additional benefit of speeding up
the process of instantiating the RNG, since the entropy
delay will be increased and instantiation of the RNG
state handles will be reattempted by the driver. If the
starting value is low, for certain platforms, this can
lead to a quite lengthy process.
This patch changes the starting value of the length of
the entropy sample to 3200 system clocks.
In addition to this change, the attempted entropy delay
values are now printed on the console upon initialization
of the RNG block.
While here, a safeguard for yielding the processor was
added for ensuring that in very adverse cases,
the CPU isn't hogged by the instantiation loop.
Signed-off-by: Alex Porosanu <alexandru.porosanu@freescale.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
(cherry picked from commit eeaa1724a2e9c8958a8621b3c10d5ca0667e78fa)
Conflicts:
drivers/crypto/caam/ctrl.c
Change-Id: Ibc271d629cef3cab291ac8e5c8e7b68b0dc7c1e3
Reviewed-on: http://git.am.freescale.net:8181/23840
Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com>
Reviewed-by: Horia Ioan Geanta Neag <horia.geanta@freescale.com>
Reviewed-by: Matthew Weigel <Matthew.Weigel@freescale.com>
|
|
The rtfrqmax & rtfrqmin set the bounds of the expected frequency of the
oscillator, when SEC runs at its maximum frequency. For certain platforms
(f.i. T2080), the oscillator is very fast and thus if the SEC runs at
a lower than normal frequency, the ring oscillator is incorrectly detected
as being out of bounds.
This patch effectively disables the maximum frequency check, by setting a
high enough maximum allowable frequency for the oscillator. The reasoning
behind this is that usually a broken oscillator will run too slow
(i.e. not run at all) rather than run too fast.
Signed-off-by: Alex Porosanu <alexandru.porosanu@freescale.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
(cherry picked from commit b061f3fefcffa0cdcdc61ae2a1123a4e7697d452)
Change-Id: I796cf92bf08c66d0499bfe3962dcd67afd51a72e
Reviewed-on: http://git.am.freescale.net:8181/23838
Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com>
Reviewed-by: Horia Ioan Geanta Neag <horia.geanta@freescale.com>
Reviewed-by: Matthew Weigel <Matthew.Weigel@freescale.com>
|
|
ioctl_dma_map. String length check
Added check to ensure the string copied from user space is within
the length allowed for by the buffer and is null terminated.
qm_shutdown_fq. Remove deadcode
Removed the case statement label for QM_MCR_NP_STATE_OOS since
that condition is checked for earlier in the code and in that
case the function exits immediately.
ioctl_dma_lock. Remove NULL dereference
A pointer is made null and then there is an attempt to dereference one
of the members of the struct that it points to. This condition is never
reached normally, but in error conditions this path of execution may be
possible.
Added return -EFAULT to exit function safely and unlocked locked resources
usdpaa_get_unmapped_area. Arithmetic overflow protection
Added a check to ensure that memory length passed in does not result in
an invalid size to be passed because of a possible arithmetic overflow
that can occur in the subtraction in the macro USDPAA_MEM_ROUNDUP.
qman_ceetm_ccg_claim. If condition fix
Removed a check against an unsigned int value that checks if it is
below zero (negative). The unsigned value cannot be negative and the
compare will always fail in reality.
qman_create_portal. Add comment to clarify flow
Clarified why no check is made to ensure that qm_mr_current()
returned successfully. The addition of a redundant check was rejected
because it impairs the reader's understanding of the flow
by implying the possibility of a physically impossible path.
dpa_alloc_new. Fix memory leak in error conditions
Previously allocated memory which is passed by reference in
success (list_add_tail) is not freed in error conditions
that occur in other parts of the function. Added code to free
allocated memory in error cases.
qman_create_portal. Fix memory leak in error path
Added cleanup code that deletes malloced memory in case
of function failure after memory is allocated.
ioctl_dma_map. Input bound checks on values from USDPAA
Check the struct usdpaa_ioctl_dma_map, input, to ensure that values
copied from user space are valid input.
qman_init. Check init_pcfg return
Previously unused assignment is now being used. The return of
init_pcfg() was not checked for success. Now we check for success
and print an error message in case of failure.
There is a similar issue in bman_driver.
bman_init. Check init_pcfg return
Added check to ensure init_pcfg() is returning successfully.
Print an error message and return if in error case.
There is a similar issue in qman_driver.
Signed-off-by: Ahmed Mansour <Ahmed.Mansour@freescale.com>
Change-Id: I230678948c3e8e43aa5738045244c5dac0b5f5f5
Reviewed-on: http://git.am.freescale.net:8181/21381
Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com>
Reviewed-by: Jeffrey Ladouceur <Jeffrey.Ladouceur@freescale.com>
Reviewed-by: Matthew Weigel <Matthew.Weigel@freescale.com>
|
|
Set the affinity of the USDPAA IRQ to match the affinity of the
calling process
Signed-off-by: Roy Pledge <Roy.Pledge@freescale.com>
Change-Id: I077a48ae5a77fe35a77dfae65c298fa6fa2aecda
Reviewed-on: http://git.am.freescale.net:8181/23675
Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com>
Reviewed-by: Geoff Thorpe <Geoff.Thorpe@freescale.com>
Reviewed-by: Jeffrey Ladouceur <Jeffrey.Ladouceur@freescale.com>
Reviewed-by: Matthew Weigel <Matthew.Weigel@freescale.com>
|
|
SEC driver offers a function for geting the handle
to an available JR (caam_jr_alloc(...)
This is mainly needed for split-key calculation per
SA. There's no need to search for the JR in the
device tree. This patch removes the unneeded code
and replaces it with the proper SEC API call.
Change-Id: Ibc8b4b216d5699fe5ec7d3d49b8a3560ab79ede0
Signed-off-by: Alex Porosanu <alexandru.porosanu@freescale.com>
Reviewed-on: http://git.am.freescale.net:8181/23860
Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com>
Reviewed-by: Marian-Cornel Chereji <marian.chereji@freescale.com>
Reviewed-by: Horia Ioan Geanta Neag <horia.geanta@freescale.com>
Reviewed-by: Matthew Weigel <Matthew.Weigel@freescale.com>
|
|
Change-Id: I2d6cead7b62116cd6a264ec91d82f3bdc3a03c10
Signed-off-by: Mandy Lavi <mandy.lavi@freescale.com>
Reviewed-on: http://git.am.freescale.net:8181/23939
Reviewed-by: Igal Liberman <Igal.Liberman@freescale.com>
Tested-by: Richard Schmitt <richard.schmitt@freescale.com>
Reviewed-by: Richard Schmitt <richard.schmitt@freescale.com>
|
|
For HASH tables sometimes when a user modifies the key of an entry
the entry needs to be moved to a different bucket. The index management
list is sorted so that indexes are always ascending. When tempering with
the position of an entry in the internal Cc nodes for a HASH table, the
position of the entry in the index management list must also be
updated.
Change-Id: If4b48282c407ed248dfd389cc0c8ae856fb7db75
Signed-off-by: Marian Chereji <marian.chereji@freescale.com>
Reviewed-on: http://git.am.freescale.net:8181/23700
Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com>
Reviewed-by: Radu-Andrei Bulie <Radu.Bulie@freescale.com>
Reviewed-by: Matthew Weigel <Matthew.Weigel@freescale.com>
|
|
Since PHYs for dwc3 is optional (not all SoCs having PHYs for DWC3
should be programmed), do not return from probe if the USB PHY library
returns -ENODEV as that indicates the platform does not have a
programmable PHY.
While this can be considered as a temporary fix, a long term solution
would be to add 'nop' PHY for platforms that does not have programmable
PHY.
Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
Reviewed-by: Roger Quadros <rogerq@ti.com>
Signed-off-by: Felipe Balbi <balbi@ti.com>
---
Backported from open source linux
commit 122f06e60f90a43d9b2fb30662af688dfb759379
Change-Id: I69055c21ee4857db5ef941ad6eac20051f0d84fc
Reviewed-on: http://git.am.freescale.net:8181/23713
Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com>
Reviewed-by: Ramneek Mehresh <ramneek.mehresh@freescale.com>
Reviewed-by: Matthew Weigel <Matthew.Weigel@freescale.com>
|
|
Linux.
This patch is workaround for watchdog expiry problem on running
netperf client on DUT with UDP traffic with ASF enabled.
Change-Id: Ib9a9c8fd13e5ecb6f9daf30deb8f128b629c002d
Signed-off-by: Sahil Malhotra <sahilmalhotra@freescale.com>
CR:ENGR00336061
Reviewed-on: http://git.am.freescale.net:8181/23065
Reviewed-by: Sandeep Malik <Sandeep.Malik@freescale.com>
Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com>
Reviewed-by: Claudiu Manoil <claudiu.manoil@freescale.com>
Reviewed-by: Richard Schmitt <richard.schmitt@freescale.com>
|
|
Placing required compilation flags and hooks in gianfar
driver for both ARM and PowerPC platforms.
Signed-off-by: Ganga Negi <ganga.negi@freescale.com>
Change-Id: I2f6c8fe40a2223013559bc6909a60e8963aa2a96
CR:ENGR00338962
(cherry picked from commit 509f3236615193c77e07797cde4729ccc8cb2ef5)
Reviewed-on: http://git.am.freescale.net:8181/23585
Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com>
Reviewed-by: Claudiu Manoil <claudiu.manoil@freescale.com>
Reviewed-by: Richard Schmitt <richard.schmitt@freescale.com>
|
|
Flag CPU_BIG_ENDIAN is not defined in powerpc config
file so it is replace with __BIG_ENDIAN flag.
Signed-off-by: Alok Makhariya <B46187@freescale.com>
Change-Id: I8cf0b83ab53a6dd544de81cf17ad0441ebb08ce5
Reviewed-on: http://git.am.freescale.net:8181/23694
Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com>
Reviewed-by: Horia Ioan Geanta Neag <horia.geanta@freescale.com>
Reviewed-by: Richard Schmitt <richard.schmitt@freescale.com>
|
|
This reverts commit 5e921ed07acbc6f05536aac89b9edc2578663840.
Change-Id: Ic4d1166b5ad6419f369e3be278f41ea5764ff6fc
Reviewed-on: http://git.am.freescale.net:8181/23784
Reviewed-by: Matthew Weigel <Matthew.Weigel@freescale.com>
Tested-by: Matthew Weigel <Matthew.Weigel@freescale.com>
|
|
Change-Id: I428d24ec05b1e6ef2137ad2ba6385ddfa3a01872
Signed-off-by: Mandy Lavi <mandy.lavi@freescale.com>
Reviewed-on: http://git.am.freescale.net:8181/22882
Reviewed-by: Nir Erez <nir.erez@freescale.com>
Reviewed-by: Matthew Weigel <Matthew.Weigel@freescale.com>
Tested-by: Matthew Weigel <Matthew.Weigel@freescale.com>
|
|
In PM resume function, we call ls_pcie_host_init function to
re-initialize PCIe controller.
Signed-off-by: Minghuan Lian <Minghuan.Lian@freescale.com>
Change-Id: Ife9fe90d63563ce9c56f4757bd233b4df4c35188
Reviewed-on: http://git.am.freescale.net:8181/23498
Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com>
Reviewed-by: Dongsheng Wang <dongsheng.wang@freescale.com>
Reviewed-by: Mingkai Hu <Mingkai.Hu@freescale.com>
Reviewed-by: Matthew Weigel <Matthew.Weigel@freescale.com>
|
|
Currently, pcie-designware.c only supports two ATUs, ATU0 is used
for CFG0 and MEM, ATU1 is used for CFG1 and IO. There is a conflict
when MEM and CFG0 are accessed simultaneously. The patch adds
'num-atus' property to PCIe dts node to describe the number of
PCIe controller's ATUs. If num_atus is bigger than or equal to 4,
we will change ATUs assignment: ATU0 for CFG0, ATU1 for CFG1,
ATU2 for MEM, ATU3 for IO.
Signed-off-by: Minghuan Lian <Minghuan.Lian@freescale.com>
The patch is upstreaming
http://patchwork.ozlabs.org/patch/409170/
Change-Id: I317bf8a3648eafeb221da6479b7788de0028d8c5
Reviewed-on: http://git.am.freescale.net:8181/23496
Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com>
Reviewed-by: Mingkai Hu <Mingkai.Hu@freescale.com>
Reviewed-by: Matthew Weigel <Matthew.Weigel@freescale.com>
|
|
Added cache controller compatible strings for T2080, B4420, T1040
and T1024. PAMU driver searches for a matching string while setting
up L3 cache stashing.
Signed-off-by: Varun Sethi <Varun.Sethi@freescale.com>
Change-Id: I7503dc2d3ae2a7d38ad5aa395fb201dd4e377b96
Reviewed-on: http://git.am.freescale.net:8181/23418
Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com>
Reviewed-by: Vakul Garg <vakul@freescale.com>
Reviewed-by: Matthew Weigel <Matthew.Weigel@freescale.com>
|
|
In function, ahash_final_no_ctx space is allocated for base edesc
and hw desc commands, link tables. After SEC has finished executing
the descriptor, ahash_unmap is called. In this function, unmapping
of sec_sg_dma is done on the basis of variable sec4_sg_bytes in edesc.
Since sec4_sg_bytes was not initialized when edesc was allocated,
this results in kernel crash.
caam algorithms registered in /proc/crypto
Unable to handle kernel paging request at virtual address 7f5d8000
pgd = 80003000
[7f5d8000] *pgd=80000080005003, *pmd=00000000
Internal error: Oops: 206 [#1] SMP THUMB2
Modules linked in:
CPU: 0 PID: 96 Comm: cryptomgr_test Not tainted 3.12.19-rt30+ls1+gd62899c9b13f #4
task: ef1b7480 ti: cf98a000 task.ti: cf98a000
PC is at dma_cache_maint_page+0x3c/0xd4
LR is at __dma_page_dev_to_cpu+0x19/0x80
pc : [<8001285c>] lr : [<80012951>] psr: b0000133
sp : cf98b9b0 ip : 80012c09 fp : 7f5d8000
r10: 00000014 r9 : 8053f2c0 r8 : 804e0f04
r7 : 00000001 r6 : 00004000 r5 : 80558000 r4 : 24940000
r3 : 805215c0 r2 : ff080000 r1 : 00000340 r0 : 80558000
Flags: NzCV IRQs on FIQs on Mode SVC_32 ISA Thumb Segment kernel
Control: 70c53c7d Table: 80003000 DAC: f45b2700
Process cryptomgr_test (pid: 96, stack limit = 0xcf98a248)
Stack: (0xcf98b9b0 to 0xcf98c000)
b9a0: 00000001 24940000 00000014 7f5d8000
b9c0: 00000001 cf8adc00 cf912000 00000014 00000000 80012951 8001514d 00000014
b9e0: 81579080 80012c09 80012c09 00000000 cf8adc00 80249d89 00000000 00210020
ba00: 00000000 40000193 81573b80 802f96c5 00000001 800302f5 cf98bd6c cf98bcfc
ba20: 00000000 cf98bd6c cf98bd00 cf98bd68 00000003 00000000 00000001 8002e021
ba40: 0000001c 0000001c 000cf912 00000001 804e0f04 80012879 00000001 0000001c
ba60: 00000040 80f4a240 00000001 cf8d3c00 000014b4 00000109 cf8d3c00 81578c44
ba80: 00000001 81579080 cf8d3c00 802877ad 804d9c44 cf8d3c00 0000010a 80244945
baa0: 00000000 80012879 cf912040 cf98bcf0 81578e00 0000010a cf8d3cc0 0000003f
bac0: 00001360 81578c44 81574180 0000012c 81574188 ffff8c3a 0000003f 80522e44
bae0: 00000001 802883d1 80288351 0000000c 00000020 00000020 000cf912 00000001
bb00: 804e0f04 80012879 00000001 00000020 00000018 80f4a240 00000001 cf8d3c00
bb20: 000014f0 0000010c 00000860 80012951 cf8d3c00 0000010d 00000001 81579080
bb40: cf8d3c00 80249cf1 0000010c 802449ff 00000000 81573b80 cf912018 cf8adc00
bb60: 81578e00 0000010d cf8d3cc0 0000003f 802f7d9c 81578c44 81574180 0000012c
bb80: 81574188 ffff8c3a 0000003f 80522e44 00000001 802883d1 80288351 0000000c
bba0: 00000001 cf98a000 cf98a000 00000003 804d80c0 00000100 80523c40 8001b07f
bbc0: 802f7da2 00000000 0000000a 00208040 ffff8c39 00000000 cf98a018 40000193
bbe0: 804d3e3c 00000000 cf98bc64 cf98a018 804d4b80 cf98a000 804deb60 8001b185
bc00: cf98a008 8001b6b5 00000087 8000ca01 f0002000 cf98bc30 804decdc 800083e3
bc20: 802f7da2 00000133 ffffffff 802f9a9b 00000000 00000000 00000001 00000000
bc40: 81573b80 cf98bdcc 00000000 cf98bc88 cf98a018 804d4b80 cf98a000 804deb60
bc60: 800128f5 cf98bc78 802f7d9d 802f7da2 00000133 ffffffff 00000001 00000000
bc80: cf98bcf4 00030002 00000014 00000014 802f8011 804d4b80 804e0f04 80012879
bca0: 00000050 00000050 000cf970 00000001 804e0f04 80012879 00000001 00000270
bcc0: 80f4ae00 800128f5 00000000 804e0f04 00000040 5c200014 00000033 80012915
bce0: 00000020 ef1b7480 cf98bdcc cf98bdc8 cf98bd08 cf98bd5c cf98a000 00000001
bd00: 00000001 802f8011 7fffffff 7fffffff cf98bd50 802f75c3 cf8d3c80 010d010c
bd20: 00000001 802447a1 0000010d cf8d3c00 cf98bdcc 00010000 ef1b7480 7fffffff
bd40: cf98bdcc cf98bdc8 cf98bd50 802f8283 cf912018 00000001 00000000 ef1b7480
bd60: cf98bddc cf98bddc 00000002 cf98bdc8 804f6b24 cf8486a0 cf98bd90 cf8efb80
bd80: 00000001 cf98bdc8 00000000 802f82db cf970000 80136d85 cf8adc00 80137097
bda0: ef07d308 ef1b74c8 804f6b3d 0000000e ef07d308 00000000 cf8b69c0 804f6b24
bdc0: 00000007 00000000 00000000 00010001 dead4ead ffffffff ffffffff cf98bd60
bde0: cf98bd60 00000000 cf965000 cf964000 cf963000 cf962000 cf961000 cf960000
be00: cf95f000 cf95e000 80f4aca2 00000000 00000008 00000000 80f4abc2 00000e90
be20: 0000000e cf95ee90 00000000 804e0f04 00000000 5c200014 00000000 80012915
be40: 80015141 80f4ae00 00000270 cf970000 cf911010 80249423 00000001 00000000
be60: 8054abc8 000c000b 04410000 00000014 cf848638 00000000 cf970000 cf970040
be80: cf848638 ef36b780 0000008a cf970000 00000000 00000007 804f6b24 ef36b7c0
bea0: 00000400 00000064 00000000 801371db 00000000 804f6b24 00000007 cf970000
bec0: 80313bac 00000000 ffffffff 80137249 ef36b780 80137209 0000008a 80136d0d
bee0: e7fddef0 e7fddef0 e7fddef0 e7fddef0 e7fddef0 e7fddef0 e7fddef0 e7fddef0
bf00: e7fddef0 e7fddef0 e7fddef0 e7fddef0 00000001 ef081e08 ef081e04 ef1b7480
bf20: 00000000 ef36b780 00000000 ef36b780 801352d5 00000000 00000000 00000000
bf40: 00000000 801352ed ef081df4 80029395 e7fddef0 00000000 e7fddef0 ef36b780
bf60: 00000000 00000000 dead4ead ffffffff ffffffff cf98bf74 cf98bf74 00000000
bf80: 00000000 dead4ead ffffffff ffffffff cf98bf90 cf98bf90 00000000 ef081df4
bfa0: 80029339 00000000 00000000 8000c1d9 00000000 00000000 00000000 00000000
bfc0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
bfe0: 00000000 00000000 00000000 00000000 00000013 00000000 e7fddef0 e7fddef0
[<8001285c>] (dma_cache_maint_page+0x3c/0xd4) from [<80012951>] (__dma_page_dev_to_cpu+0x19/0x80)
[<80012951>] (__dma_page_dev_to_cpu+0x19/0x80) from [<80249d89>] (ahash_done+0x99/0xb8)
[<80249d89>] (ahash_done+0x99/0xb8) from [<802449ff>] (caam_jr_dequeue+0x163/0x178)
[<802449ff>] (caam_jr_dequeue+0x163/0x178) from [<802883d1>] (net_rx_action+0x81/0x114)
[<802883d1>] (net_rx_action+0x81/0x114) from [<8001b07f>] (__do_softirq+0x8b/0x128)
[<8001b07f>] (__do_softirq+0x8b/0x128) from [<8001b185>] (do_softirq+0x31/0x3c)
[<8001b185>] (do_softirq+0x31/0x3c) from [<8001b6b5>] (irq_exit+0x4f/0x8e)
[<8001b6b5>] (irq_exit+0x4f/0x8e) from [<8000ca01>] (handle_IRQ+0x41/0x60)
[<8000ca01>] (handle_IRQ+0x41/0x60) from [<800083e3>] (gic_handle_irq+0x2b/0x44)
[<800083e3>] (gic_handle_irq+0x2b/0x44) from [<802f9a9b>] (__irq_svc+0x3b/0x5c)
Exception stack(0xcf98bc30 to 0xcf98bc78)
bc20: 00000000 00000000 00000001 00000000
bc40: 81573b80 cf98bdcc 00000000 cf98bc88 cf98a018 804d4b80 cf98a000 804deb60
bc60: 800128f5 cf98bc78 802f7d9d 802f7da2 00000133 ffffffff
[<802f9a9b>] (__irq_svc+0x3b/0x5c) from [<802f7da2>] (__schedule+0x36/0x24c)
[<802f7da2>] (__schedule+0x36/0x24c) from [<802f8011>] (schedule+0x59/0x6c)
[<802f8011>] (schedule+0x59/0x6c) from [<802f75c3>] (schedule_timeout+0x13/0x100)
[<802f75c3>] (schedule_timeout+0x13/0x100) from [<802f8283>] (wait_for_common+0x9b/0xc4)
[<802f8283>] (wait_for_common+0x9b/0xc4) from [<802f82db>] (wait_for_completion_interruptible+0xf/0x20)
[<802f82db>] (wait_for_completion_interruptible+0xf/0x20) from [<80136d85>] (do_one_async_hash_op.isra.5+0x19/0x22)
[<80136d85>] (do_one_async_hash_op.isra.5+0x19/0x22) from [<80137097>] (__test_hash+0x309/0x3ae)
[<80137097>] (__test_hash+0x309/0x3ae) from [<801371db>] (test_hash+0x17/0x44)
[<801371db>] (test_hash+0x17/0x44) from [<80137249>] (alg_test_hash+0x41/0x54)
[<80137249>] (alg_test_hash+0x41/0x54) from [<80136d0d>] (alg_test+0x129/0x188)
[<80136d0d>] (alg_test+0x129/0x188) from [<801352ed>] (cryptomgr_test+0x19/0x34)
[<801352ed>] (cryptomgr_test+0x19/0x34) from [<80029395>] (kthread+0x5d/0x6c)
[<80029395>] (kthread+0x5d/0x6c) from [<8000c1d9>] (ret_from_fork+0x11/0x38)
Code: 3212 0152 eb00 0b02 (5882) 0f92
---[ end trace 3a9625077c8d21fb ]---
Kernel panic - not syncing: Fatal exception in interrupt
CPU1: stopping
CPU: 1 PID: 0 Comm: swapper/1 Tainted: G D 3.12.19-rt30+ls1+gd62899c9b13f #4
[<800107d9>] (unwind_backtrace+0x1/0x88) from [<8000e4ef>] (show_stack+0xb/0xc)
[<8000e4ef>] (show_stack+0xb/0xc) from [<802f6dbd>] (dump_stack+0x4d/0x60)
[<802f6dbd>] (dump_stack+0x4d/0x60) from [<8000fee3>] (handle_IPI+0x7f/0xbc)
[<8000fee3>] (handle_IPI+0x7f/0xbc) from [<800083f3>] (gic_handle_irq+0x3b/0x44)
[<800083f3>] (gic_handle_irq+0x3b/0x44) from [<802f9a9b>] (__irq_svc+0x3b/0x5c)
Exception stack(0xef09bfa0 to 0xef09bfe8)
bfa0: ffffffed 00000000 010a7000 00000000 ef09a000 ef09a010 80000000 80523390
bfc0: 80003010 410fc075 00000000 00000000 00000008 ef09bfe8 8000cbd1 8000cbd2
bfe0: 60000133 ffffffff
[<802f9a9b>] (__irq_svc+0x3b/0x5c) from [<8000cbd2>] (arch_cpu_idle+0x1a/0x20)
[<8000cbd2>] (arch_cpu_idle+0x1a/0x20) from [<8003a285>] (cpu_startup_entry+0x7d/0xc4)
[<8003a285>] (cpu_startup_entry+0x7d/0xc4) from [<80008485>] (__enable_mmu+0x1/0x1c)
Signed-off-by: Ruchika Gupta <ruchika.gupta@freescale.com>
Change-Id: I1bcaa5a402409a943b47d7e7b3672a081d934a24
Reviewed-on: http://git.am.freescale.net:8181/23427
Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com>
Reviewed-by: Horia Ioan Geanta Neag <horia.geanta@freescale.com>
Reviewed-by: Matthew Weigel <Matthew.Weigel@freescale.com>
|
|
That commit tried to fix the section mismatch warning by moving the
clock driver struct to init section. This is definitely wrong because
the kernel would free the memories occupied by this struct after
boot while this driver is still registered in the driver core.
The kernel would panic when accessing this driver struct.
Signed-off-by: Tang Yuantian <Yuantian.Tang@freescale.com>
Change-Id: I3061188d09f504c9e1a0d8771a5336477404d016
Reviewed-on: http://git.am.freescale.net:8181/23314
Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com>
Reviewed-by: Matthew Weigel <Matthew.Weigel@freescale.com>
|
|
The dce_simple_perf_tester module needs to validate input parameter.
Signed-off-by: Jeffrey Ladouceur <Jeffrey.Ladouceur@freescale.com>
Change-Id: Ie0dddfb8e23532895e6ec2276f201e3b555fed62
Reviewed-on: http://git.am.freescale.net:8181/22952
Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com>
Reviewed-by: Haiying Wang <Haiying.Wang@freescale.com>
Reviewed-by: Roy Pledge <roy.pledge@freescale.com>
Reviewed-by: Richard Schmitt <richard.schmitt@freescale.com>
|
|
If ds3232 work on some platform that is not implementation
irq_set_wake, ds3232 will get a WARNING trace in resume.
So fix ds3232->suspended state to false when irq_set_irq_wake
return error.
------------[ cut here ]------------
WARNING: CPU: 0 PID: 729 at kernel/irq/manage.c:604
irq_set_irq_wake+0x4b/0x8c()
Unbalanced IRQ 201 wake disable
Modules linked in:
CPU: 0 PID: 729 Comm: sh Not tainted 3.12.19-rt30+ #25
[<800107d9>] (unwind_backtrace+0x1/0x88) from [<8000e4ef>]
(show_stack+0xb/0xc)
[<8000e4ef>] (show_stack+0xb/0xc) from [<802b5fa9>]
(dump_stack+0x4d/0x60)
[<802b5fa9>] (dump_stack+0x4d/0x60) from [<800186dd>]
(warn_slowpath_common+0x45/0x64)
[<800186dd>] (warn_slowpath_common+0x45/0x64) from [<80018717>]
(warn_slowpath_fmt+0x1b/0x24)
[<80018717>] (warn_slowpath_fmt+0x1b/0x24) from [<8003a8d3>]
(irq_set_irq_wake+0x4b/0x8c)
[<8003a8d3>] (irq_set_irq_wake+0x4b/0x8c) from [<80204fcb>]
(ds3232_resume+0x2d/0x36)
[<80204fcb>] (ds3232_resume+0x2d/0x36) from [<801954c7>]
(dpm_run_callback.isra.13+0xb/0x28)
[<801954c7>] (dpm_run_callback.isra.13+0xb/0x28) from [<80195b1b>]
(device_resume+0x7b/0xa2)
[<80195b1b>] (device_resume+0x7b/0xa2) from [<80195f0f>]
(dpm_resume+0xbb/0x19c)
[<80195f0f>] (dpm_resume+0xbb/0x19c) from [<801960d9>]
(dpm_resume_end+0x9/0x12)
[<801960d9>] (dpm_resume_end+0x9/0x12) from [<80037e1d>]
(suspend_devices_and_enter+0x17d/0x1d0)
[<80037e1d>] (suspend_devices_and_enter+0x17d/0x1d0) from [<80037ee1>]
(pm_suspend+0x71/0x128)
[<80037ee1>] (pm_suspend+0x71/0x128) from [<80037449>]
(state_store+0x6d/0x80)
[<80037449>] (state_store+0x6d/0x80) from [<800af4d5>]
(sysfs_write_file+0x9f/0xde)
[<800af4d5>] (sysfs_write_file+0x9f/0xde) from [<8007a437>]
(vfs_write+0x7b/0x104)
[<8007a437>] (vfs_write+0x7b/0x104) from [<8007a7f7>]
(SyS_write+0x27/0x48)
[<8007a7f7>] (SyS_write+0x27/0x48) from [<8000c121>]
(ret_fast_syscall+0x1/0x44)
---[ end trace 640959d2e8de6ccc ]---
Signed-off-by: Wang Dongsheng <dongsheng.wang@freescale.com>
Change-Id: I45102d4ee48299df4b24ffd85cdd316a9c8598f4
Reviewed-on: http://git.am.freescale.net:8181/23266
Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com>
Reviewed-by: Chenhui Zhao <chenhui.zhao@freescale.com>
Reviewed-by: Matthew Weigel <Matthew.Weigel@freescale.com>
|
|
If no EP device plugin pci slot, kernel should return 0 not error
number in pm resume function.
Signed-off-by: Wang Dongsheng <dongsheng.wang@freescale.com>
Change-Id: Ibc62d1a0de2f25ebede51ec813c6b36c864f100f
Reviewed-on: http://git.am.freescale.net:8181/23265
Reviewed-by: Chenhui Zhao <chenhui.zhao@freescale.com>
Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com>
Reviewed-by: Matthew Weigel <Matthew.Weigel@freescale.com>
|
|
- add CONFIG_FMAN_V3L by default for FMan_V3L platform.
- t1024 officially supports 6 portals of QMan/BMan instead of 10
- remove CONFIG_ALTIVEC as e5500 core has no ALTIVEC.
Signed-off-by: Shengzhou Liu <Shengzhou.Liu@freescale.com>
Change-Id: I71a5426ad441ef034c66e2d794a86b366092530d
Reviewed-on: http://git.am.freescale.net:8181/23188
Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com>
Reviewed-by: Mandy Lavi <Mandy.Lavi@freescale.com>
Reviewed-by: Richard Schmitt <richard.schmitt@freescale.com>
|
|
As subpage write is enabled by default for all drivers, nand_write_subpage_hwecc
causes a crash if the driver did not register ecc->hwctl or ecc->calculate.
This behavior was introduced in
commit 837a6ba4f3b6d23026674e6af6b6849a4634fff9
"mtd: nand: subpage write support for hardware based ECC schemes".
This fixes a crash by emulating subpage write support by padding sub-page data
with 0xff on either sides to make it full page compatible.
Reported-by: Helmut Schaa <helmut.schaa@googlemail.com>
Tested-by: Helmut Schaa <helmut.schaa@googlemail.com>
Signed-off-by: Pekon Gupta <pekon@ti.com>
Reviewed-by: Scott Wood <scottwood@freescale.com>
Cc: <stable@vger.kernel.org> # 3.10.x+
Signed-off-by: Brian Norris <computersforpeace@gmail.com>
(cherry picked from commit f034d87def51f026b735d1e2877e9387011b2ba3)
Change-Id: I55b0ea1eea0ffdfa6410d0a239e2a773bfdd490d
Signed-off-by: Scott Wood <scottwood@freescale.com>
Reviewed-on: http://git.am.freescale.net:8181/20798
Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com>
Reviewed-by: Richard Schmitt <richard.schmitt@freescale.com>
|
|
In case either the byte or the mask of a key are provided NULL,
the memory allocated for the lookup key descriptor needs to be
release.
Signed-off-by: Anca Jeanina Floarea <anca.floarea@freescale.com>
Change-Id: Ibb9b7ec28a93a87c82ab318b763866cf3d9f493a
Reviewed-on: http://git.am.freescale.net:8181/23131
Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com>
Reviewed-by: Marian-Cornel Chereji <marian.chereji@freescale.com>
Reviewed-by: Richard Schmitt <richard.schmitt@freescale.com>
|
|
In the dpa_classifier function "try_compatible_node" there are some
places where the header manipulation operation flags are compared to
the configuration of an existing header manipulation node. The control
path however doesn't suspend in case an inconsistency is found in the
flags and, in some rare cases when users provide corrupt parameters,
there is a danger to dereference a NULL hm_node pointer.
Change-Id: I355862c146a228e5878272156adaf92a76391ce6
Signed-off-by: Marian Chereji <marian.chereji@freescale.com>
Reviewed-on: http://git.am.freescale.net:8181/23111
Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com>
Reviewed-by: Anca Jeanina Floarea <AncaJeanina.Floarea@freescale.com>
Reviewed-by: Richard Schmitt <richard.schmitt@freescale.com>
|
|
In dpa_classifier function "dpa_classif_mcast_create_group" the replicator
group params could be freed twice if the function "FM_PCD_FrmReplicSetGroup"
fails, for instance. The pointer is now reset at first free so that the second
free operation ignores it.
Change-Id: I8869db05157f68964bd2a131f6e184f78e64cf8c
Signed-off-by: Marian Chereji <marian.chereji@freescale.com>
Reviewed-on: http://git.am.freescale.net:8181/23108
Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com>
Reviewed-by: Radu-Andrei Bulie <Radu.Bulie@freescale.com>
Reviewed-by: Richard Schmitt <richard.schmitt@freescale.com>
|
|
MSI_LS1021A_DATA that is used to generate MSI interrupt by PCI
device is a little endian value. It should be converted to big
endian when writing to SCFG_SPIMSICLRCR a big endian register.
Signed-off-by: Minghuan Lian <Minghuan.Lian@freescale.com>
Change-Id: Ie26dd7320f54ee7410d29cca38f4218044549307
Reviewed-on: http://git.am.freescale.net:8181/23098
Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com>
Reviewed-by: Mingkai Hu <Mingkai.Hu@freescale.com>
Reviewed-by: Richard Schmitt <richard.schmitt@freescale.com>
|
|
Support PTPd 1588 stack by adding PTP 1588 clock
using the dTSEC
Signed-off-by: Yangbo Lu <yangbo.lu@freescale.com>
Change-Id: I4f6fb9a721cede75c6cf23560014b55b46c84fef
Reviewed-on: http://git.am.freescale.net:8181/20295
Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com>
Reviewed-by: Xiaobo Xie <X.Xie@freescale.com>
Reviewed-by: Mandy Lavi <Mandy.Lavi@freescale.com>
Reviewed-by: Richard Schmitt <richard.schmitt@freescale.com>
|
|
Support for FSL_FMAN_CPC_STASH option was partially implemented.
The FMAN operation mapping didn't allow support for write transaction
stashing. Write transaction stashing support is required in certain
data path intensive tasks. Without this support "FMAN writes" to DDR
take more time complete, with this option FMAN transactions are stashed
to CPC. Stashing reduces the overall completion time for FMAN transactions.
This in turn prevents buffer over run issues in FMAN. Without this support
it has been observed, while handling high traffic rate FMAN starts reporting
Rx errors.
Signed-off-by: Varun Sethi <Varun.Sethi@freescale.com>
Change-Id: Iae7b2e9108204e64d336feb39517f4c72235feb4
Reviewed-on: http://git.am.freescale.net:8181/21040
Reviewed-by: Vakul Garg <vakul@freescale.com>
Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com>
Reviewed-by: Richard Schmitt <richard.schmitt@freescale.com>
|
|
LNI shaper is disabled by setting all 1's to both CR/ER
Signed-off-by: Haiying Wang <Haiying.Wang@freescale.com>
Change-Id: I7b680ecbcfcfa41860dddcca34044116719cda08
Reviewed-on: http://git.am.freescale.net:8181/22075
Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com>
Reviewed-by: Geoff Thorpe <Geoff.Thorpe@freescale.com>
Reviewed-by: Richard Schmitt <richard.schmitt@freescale.com>
|
|
Pass device-tree usb node offset to each usb device structure.
This is required by rcpm driver to get mask setting for
ip exception register to make/remove usb as wake-up source
for sleep/deep-sleep
Signed-off-by: Ramneek Mehresh <ramneek.mehresh@freescale.com>
Change-Id: I4e6b0f931fb29a6311b36a97255d994c2ce0ad05
Reviewed-on: http://git.am.freescale.net:8181/22478
Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com>
Reviewed-by: Nikhil Badola <nikhil.badola@freescale.com>
Reviewed-by: Matthew Weigel <Matthew.Weigel@freescale.com>
|
|
Some functions are powerpc specific which cause error when the
driver is used on ARM platforms.
Added micro to make them only be used on powerpc platforms.
Signed-off-by: Tang Yuantian <Yuantian.Tang@freescale.com>
Change-Id: I7ab009fa13f47e23d67aef875185a23882dd1813
Reviewed-on: http://git.am.freescale.net:8181/23070
Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com>
Reviewed-by: Yang Li <LeoLi@freescale.com>
(cherry picked from commit 44a0893a220ef1906359aa283837fba8b18e20f7)
Signed-off-by: Matthew Weigel <Matthew.Weigel@freescale.com>
|
|
The hardware can automatically generate pause frames when the number
of free buffers drops under a certain threshold, but in order to do this,
the address of the last free buffer needs to be written to a specific
register for each RX queue.
This has to be done in 'gfar_clean_rx_ring' which is called for each
RX queue. In order not to impact performance, by adding a register write
for each incoming packet, this operation is done only when the PAUSE frame
transmission is enabled.
Whenever the link is readjusted, this capability is turned on or off.
Change-Id Ib4751d205a00c0813355cf23c4428bf6dcbda003
Signed-off-by: Matei Pavaluca <matei.pavaluca@freescale.com>
Change-Id: I22a836b86f256128ea1bd39e87902321030f7742
Reviewed-on: http://git.am.freescale.net:8181/23138
Reviewed-by: Richard Schmitt <richard.schmitt@freescale.com>
Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com>
|