Age | Commit message (Collapse) | Author |
|
Check for memory allocation failures to protect from
null pointer dereferencing
Signed-off-by: Mahammad Ismayilzada <mahammad.ismayilzada@freescale.com>
|
|
Correct the order of existing goto labels and add new ones
to handle error paths properly for inflation process
Signed-off-by: Mahammad Ismayilzada <mahammad.ismayilzada@freescale.com>
|
|
slab_scr_128b should be checked for NULL.
Signed-off-by: Mahammad Ismayilzada <mahammad.ismayilzada@freescale.com>
Change-Id: I51f5b7c96fbee9a0f1baf2340ff97b23caed434e
Reviewed-on: http://git.am.freescale.net:8181/36649
Reviewed-by: Haiying Wang <Haiying.Wang@freescale.com>
Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com>
Reviewed-by: Roy Pledge <roy.pledge@freescale.com>
Reviewed-by: Honghua Yin <Hong-Hua.Yin@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 there was a error during the process operation the output of zero bytes
was still being allocated. This causes a trace to occur in vmalloc.
Skip allocating and copying output on error.
Signed-off-by: Jeffrey Ladouceur <Jeffrey.Ladouceur@freescale.com>
Change-Id: Ie4f0462902a15aae44a20a7de2478a6488da0e1d
Reviewed-on: http://git.am.freescale.net:8181/12426
Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com>
Reviewed-by: Roy Pledge <roy.pledge@freescale.com>
Reviewed-by: Jose Rivera <German.Rivera@freescale.com>
|
|
The dce test code was broken when focus was placed on bman usage.
Fixed test code when using pre-built buffers.
Added verbosity level to test cases.
Change kernel help api name to explicitly name output buffer as this is
consistent with bman api.
Signed-off-by: Jeffrey Ladouceur <Jeffrey.Ladouceur@freescale.com>
Change-Id: I62aae72b5075718180729fe49b62524eea9d28fa
Reviewed-on: http://git.am.freescale.net:8181/12099
Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com>
Reviewed-by: Geoff Thorpe <Geoff.Thorpe@freescale.com>
Reviewed-by: Richard Schmitt <richard.schmitt@freescale.com>
|
|
Expression such as ?: for "value" require value be placed in
parenthesis in order to be evaluated first.
Signed-off-by: Jeffrey Ladouceur <Jeffrey.Ladouceur@freescale.com>
Change-Id: I1598785559685acaf30ba970c4603b03b79f4386
Reviewed-on: http://git.am.freescale.net:8181/11629
Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com>
Reviewed-by: Roy Pledge <roy.pledge@freescale.com>
Reviewed-by: Jose Rivera <German.Rivera@freescale.com>
|
|
Add documentation to dce APIs
Signed-off-by: Jeffrey Ladouceur <Jeffrey.Ladouceur@freescale.com>
Change-Id: Ib71b500d0d59a64645bdd39d071712d418a5fcb8
Reviewed-on: http://git.am.freescale.net:8181/11729
Reviewed-by: Haiying Wang <Haiying.Wang@freescale.com>
Reviewed-by: Roy Pledge <roy.pledge@freescale.com>
Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com>
Reviewed-by: Jose Rivera <German.Rivera@freescale.com>
|
|
Add test that demonstrates fsl dce stateful performance metrics.
This is similar to the stateless test except that multiple chunks
are sent on a stream instead on one big chunk.
Signed-off-by: Jeffrey Ladouceur <Jeffrey.Ladouceur@freescale.com>
Change-Id: I222981506f013febf6ae1f95ba610507c8dd0a49
Reviewed-on: http://git.am.freescale.net:8181/11630
Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com>
Reviewed-by: Jose Rivera <German.Rivera@freescale.com>
|
|
Add api to display multi buffer scatter gather data.
Distinguish between allocated dce data and amount of data copied to it.
Add attribute to gzip request structure to enable adding them to a list.
Add request structure to invalidate a stream context record.
Signed-off-by: Jeffrey Ladouceur <Jeffrey.Ladouceur@freescale.com>
Conflicts:
drivers/staging/fsl_dce/tests/common/test_frame_helpers.c
Change-Id: I59fa85503f4de953c2b48042942d3670f9e41a17
Reviewed-on: http://git.am.freescale.net:8181/11628
Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com>
Reviewed-by: Jose Rivera <German.Rivera@freescale.com>
|
|
Add an API to get the length of the internal objects fifo.
Add invalidate stream context record api.
Missing flags parameter to process API.
Add checking for REV1 limitations.
Set default object fifo depth to 256.
Add private header file.
Signed-off-by: Jeffrey Ladouceur <Jeffrey.Ladouceur@freescale.com>
Change-Id: I0149ab9309ad41d920c21192cb9f0aa3bfb9256a
Reviewed-on: http://git.am.freescale.net:8181/11626
Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com>
Reviewed-by: Jose Rivera <German.Rivera@freescale.com>
|
|
drivers/staging/fsl_dce/tests/common/test_frame_helpers.c: In function ‘print_dce_data_list’:
drivers/staging/fsl_dce/tests/common/test_frame_helpers.c:272:4: warning: format ‘%lu’ expects argument of type ‘long unsigned int’, but argument 3 has type ‘size_t’ [-Wformat=]
pr_info(" cpumem = %p, size = %lu\n",
^
drivers/staging/fsl_dce/tests/common/test_frame_helpers.c:283:3: warning: format ‘%lu’ expects argument of type ‘long unsigned int’, but argument 3 has type ‘size_t’ [-Wformat=]
pr_info(" cpumem = %p, size = %lu\n",
^
drivers/staging/fsl_dce/tests/performance_simple/dce_perf_simple.c: In function ‘copy_bman_output_to_buffer’:
drivers/staging/fsl_dce/tests/performance_simple/dce_perf_simple.c:388:4: warning: format ‘%lu’ expects argument of type ‘long unsigned int’, but argument 2 has type ‘size_t’ [-Wformat=]
pr_info("total frame length != calulated length (%lu)"
^
drivers/staging/fsl_dce/tests/performance_simple/dce_perf_simple.c:398:4: warning: format ‘%lu’ expects argument of type ‘long unsigned int’, but argument 2 has type ‘size_t’ [-Wformat=]
pr_info("sg length != frame output length (%lu) (%u)\n",
^
drivers/staging/fsl_dce/tests/performance_simple/dce_perf_simple.c: In function ‘write_file’:
drivers/staging/fsl_dce/tests/performance_simple/dce_perf_simple.c:522:3: warning: format ‘%lu’ expects argument of type ‘long unsigned int’, but argument 3 has type ‘size_t’ [-Wformat=]
pr_info("Error %d, data_len %lu\n", rc, data_len);
^
drivers/staging/fsl_dce/tests/performance_simple/dce_perf_simple.c: In function ‘dce_loopback_shutdown’:
drivers/staging/fsl_dce/tests/performance_simple/dce_perf_simple.c:694:77: warning: comparison of distinct pointer types lacks a cast [enabled by default]
do_div(dce_freq, 2);
^
drivers/staging/fsl_dce/tests/performance_simple/dce_perf_simple.c:694:2: warning: right shift count >= width of type [enabled by default]
do_div(dce_freq, 2);
^
drivers/staging/fsl_dce/tests/performance_simple/dce_perf_simple.c:694:2: warning: passing argument 1 of ‘__div64_32’ from incompatible pointer type [enabled by default]
In file included from arch/powerpc/include/asm/div64.h:1:0,
from include/linux/kernel.h:111,
from drivers/staging/fsl_dce/tests/performance_simple/dce_perf_simple.c:33:
include/asm-generic/div64.h:35:17: note: expected ‘uint64_t *’ but argument is of type ‘uint32_t *’
extern uint32_t __div64_32(uint64_t *dividend, uint32_t divisor);
^
Signed-off-by: Emil Medve <Emilian.Medve@Freescale.com>
Change-Id: If682239365c0d59bf01d7fc712cbfc410de0854c
Reviewed-on: http://git.am.freescale.net:8181/8003
Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com>
Reviewed-by: Jeffrey Ladouceur <Jeffrey.Ladouceur@freescale.com>
Reviewed-by: Emilian Medve <Emilian.Medve@freescale.com>
|
|
As per '498d319 kfifo API type safety'
drivers/staging/fsl_dce/flib/dce_flow.c: In function ‘_pre_commit_cb’:
drivers/staging/fsl_dce/flib/dce_flow.c:404:2: error: invalid initializer
if (unlikely(kfifo_put(&fifo_arg->flow->fifo, fifo_arg->token) == 0))
^
Signed-off-by: Emil Medve <Emilian.Medve@Freescale.com>
Change-Id: Ifa1795cd44f18c4246ef3a65d4f3cf99e902f888
Reviewed-on: http://git.am.freescale.net:8181/7729
Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com>
Reviewed-by: Emilian Medve <Emilian.Medve@freescale.com>
|
|
drivers/staging/fsl_dce/dce_driver.c: In function ‘fsl_dce_probe’:
drivers/staging/fsl_dce/dce_driver.c:154:2: error: implicit declaration of function ‘of_iomap’ [-Werror=implicit-function-declaration]
topregs = of_iomap(nprop, 0);
^
drivers/staging/fsl_dce/dce_driver.c:164:2: error: implicit declaration of function ‘of_irq_to_resource’ [-Werror=implicit-function-declaration]
ctrlpriv->err_irq = of_irq_to_resource(nprop, 0, NULL);
^
drivers/staging/fsl_dce/dce_driver.c:164:2: error: implicit declaration of function ‘of_irq_to_resource’ [-Werror=implicit-function-declaration]
ctrlpriv->err_irq = of_irq_to_resource(nprop, 0, NULL);
^
drivers/staging/fsl_dce/dce_debugfs.c: In function ‘init_ccsrmempeek’:
drivers/staging/fsl_dce/dce_debugfs.c:77:2: error: implicit declaration of function ‘of_get_address’ [-Werror=implicit-function-declaration]
regaddr_p = of_get_address(dn, 0, &dce_ccsr_size, NULL);
^
drivers/staging/fsl_dce/dce_debugfs.c:82:2: error: implicit declaration of function ‘of_translate_address’ [-Werror=implicit-function-declaration]
dce_ccsr_start = of_translate_address(dn, regaddr_p);
^
Signed-off-by: Emil Medve <Emilian.Medve@Freescale.com>
Change-Id: Ia8f4acb61349ae8a5edb87f5767784b328993d46
Reviewed-on: http://git.am.freescale.net:8181/7721
Reviewed-by: Haiying Wang <Haiying.Wang@freescale.com>
Reviewed-by: Emilian Medve <Emilian.Medve@freescale.com>
Tested-by: Emilian Medve <Emilian.Medve@freescale.com>
|
|
Add modules to self test fsl DCE hardware accelerator.
1) dce_chunk_comp_def_cf_tester.ko
This module tests the chunk based (de)compression using deflate and compound frames.
2) dce_simple_perf_tester.ko
This module can be used to measure dce performance throughput.
The associated README file describes the usage.
Signed-off-by: Jeffrey Ladouceur <Jeffrey.Ladouceur@freescale.com>
Change-Id: Ifb4ac8af57254190cf3e2be0bbe26d85626f7470
Reviewed-on: http://git.am.freescale.net:8181/4296
Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com>
Reviewed-by: Wang Haiying-R54964 <Haiying.Wang@freescale.com>
Reviewed-by: Rivera Jose-B46482 <German.Rivera@freescale.com>
|
|
The fsl_dce_stream object enables the user to do stream based (de)compression.
As opposed to chunk based compression where all the data in a single frame is
sent to the DCE device, stream based (de)compression permits the user to send
mulitple frames and receive the corresponding resuls in multiple frames.
Signed-off-by: Jeffrey Ladouceur <Jeffrey.Ladouceur@freescale.com>
Change-Id: I83065d4681c512d595724b4f92a731de8a032867
Reviewed-on: http://git.am.freescale.net:8181/4297
Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com>
Reviewed-by: Thorpe Geoff-R01361 <Geoff.Thorpe@freescale.com>
Reviewed-by: Wang Haiying-R54964 <Haiying.Wang@freescale.com>
Reviewed-by: Rivera Jose-B46482 <German.Rivera@freescale.com>
|
|
The fsl_dce device does compression and decompression of
various formats (deflate, zlib, gzip).
The flib directory contains the base layer object required
to access the dce device. The fsl_dce_flow object contains the
minimum set of interfaces required to send and receive frames
to/from the dce via QMan.
The fsl_dce_chunk object is an extension of the fsl_dce_flow object.
This object is used to compress or decompress single frames (chunks)
at a time.
Signed-off-by: Jeffrey Ladouceur <Jeffrey.Ladouceur@freescale.com>
Change-Id: Ia1f671b4610fb70d50353385a3d87dde0584741a
Reviewed-on: http://git.am.freescale.net:8181/4295
Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com>
Reviewed-by: Thorpe Geoff-R01361 <Geoff.Thorpe@freescale.com>
Reviewed-by: Rivera Jose-B46482 <German.Rivera@freescale.com>
|
|
Add FSL DCE device creation and access to device configuration.
This device does compression and decompression.
Signed-off-by: Jeffrey Ladouceur <Jeffrey.Ladouceur@freescale.com>
Change-Id: I6d951fe045f7638530a810c91e5dc21f29549bb1
Reviewed-on: http://git.am.freescale.net:8181/4294
Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com>
Reviewed-by: Thorpe Geoff-R01361 <Geoff.Thorpe@freescale.com>
Reviewed-by: Rivera Jose-B46482 <German.Rivera@freescale.com>
|