Hi Adam,
Am 23.09.19 um 16:55 schrieb Adam Ford:
> On Mon, Sep 23, 2019 at 8:58 AM Philipp Puschmann
> wrote:
>>
>> For some years and since many kernel versions there are reports that
>> RX UART DMA channel stops working at one point. So far the usual
>> workarou
able. So we
decrease the size of the buffers and increase their number and the
total buffer size.
Signed-off-by: Philipp Puschmann
Reviewed-by: Lucas Stach
---
Changelog v4:
- fix total buffer size
Changelog v3:
- enhance description
Changelog v2:
- split this patch from series "Fix
able. So we
decrease the size of the buffers and increase their number and the
total buffer size.
Signed-off-by: Philipp Puschmann
Reviewed-by: Lucas Stach
---
Changelog v4:
- fix total buffer size
Changelog v3:
- enhance description
Changelog v2:
- split this patch from series "Fix
may be running in parallel. So
there was the possibility to get the buffer overwritten by SDMA before
it has been processed by kernel leading to kind of random errors in the
upper layers, e.g. bluetooth.
Fixes: 1ec1e82f2510 ("dmaengine: Add Freescale i.MX SDMA support")
Signed-off-b
In sdma_prep_dma_cyclic buf is redundant. Drop it.
Signed-off-by: Philipp Puschmann
Reviewed-by: Lucas Stach
---
Changelog v3,v4,v5:
- no changes
Changelog v2:
- add Reviewed-by tag
drivers/dma/imx-sdma.c | 7 ++-
1 file changed, 2 insertions(+), 5 deletions(-)
diff --git a/drivers
case that the channel was stopped by upper-level driver
we introduce new flag IMX_DMA_ACTIVE.
As sdmac->desc is constant we can move desc out of the loop.
Fixes: 1ec1e82f2510 ("dmaengine: Add Freescale i.MX SDMA support")
Signed-off-by: Philipp Puschmann
Signed-off-by: Jan Luebbe
resulted in well known
"Bluetooth: hci0: command 0x0408 tx timeout"
errors and complete stop of UART data reception. Our Bluetooth traffic
consists of many independent small packets, mostly only a few bytes,
causing high usage of periods.
Signed-off-by: Philipp Puschmann
Reviewed-
Hi Jan,
Am 19.09.19 um 17:19 schrieb Jan Lübbe:
> Hi Philipp,
>
> see below...
>
> On Thu, 2019-09-19 at 16:29 +0200, Philipp Puschmann wrote:
>> For some years and since many kernel versions there are reports that the
>> RX UART SDMA channel stops working at some p
Hi Andy,
Am 20.09.19 um 05:42 schrieb Andy Duan:
> From: Philipp Puschmann Sent: Thursday,
> September 19, 2019 10:51 PM
>> Using only 4 DMA periods for UART RX is very few if we have a high frequency
>> of small transfers - like in our case using Bluetooth with many small p
able. So we
decrease the size of the buffers and increase their number and the
total buffer size.
Signed-off-by: Philipp Puschmann
Reviewed-by: Lucas Stach
---
Changelog v3:
- enhance description
Changelog v2:
- split this patch from series "Fix UART DMA freezes for iMX6"
- add
angelog v3:
- fixes typo in dma_wmb
- add fixes tags
Changelog v2:
- adapt title (this patches are not only for i.MX6)
- improve some comments and patch descriptions
- add a dma_wb() around BD_DONE flag
- add Reviewed-by tags
- split off "serial: imx: adapt rx buffer and dma periods"
e82f2510 ("dmaengine: Add Freescale i.MX SDMA support")
Signed-off-by: Philipp Puschmann
Reviewed-by: Lucas Stach
---
Changelog v4:
- fixed the fixes tag
Changelog v3:
- use correct dma_wmb() instead of dma_wb()
- add fixes tag
Changelog v2:
- clarify comment and commit description
In sdma_prep_dma_cyclic buf is redundant. Drop it.
Signed-off-by: Philipp Puschmann
Reviewed-by: Lucas Stach
---
Changelog v3,v4:
- no changes
Changelog v2:
- add Reviewed-by tag
drivers/dma/imx-sdma.c | 7 ++-
1 file changed, 2 insertions(+), 5 deletions(-)
diff --git a/drivers/dma
may be running in parallel. So
there was the possibility to get the buffer overwritten by SDMA before
it has been processed by kernel leading to kind of random errors in the
upper layers, e.g. bluetooth.
Fixes: 1ec1e82f2510 ("dmaengine: Add Freescale i.MX SDMA support")
Signed-off-b
Hi Fabio,
Am 19.09.19 um 13:37 schrieb Fabio Estevam:
> Hi Philipp,
>
> On Thu, Sep 19, 2019 at 7:45 AM Philipp Puschmann
> wrote:
>>
>> BD_DONE flag marks ownership of the buffer. When 1 SDMA owns the
>> buffer, when 0 ARM owns it. When processing the buffers
Hi Uwe
Am 19.09.19 um 13:22 schrieb Uwe Kleine-König:
> On Thu, Sep 19, 2019 at 12:26:28PM +0200, Philipp Puschmann wrote:
>> Using only 4 DMA periods for UART RX is very few if we have a high
>> frequency of small transfers - like in our case using Bluetooth with
>> many s
may be running in parallel. So
there was the possibility to get the buffer overwritten by SDMA before
it has been processed by kernel leading to kind of random errors in the
upper layers, e.g. bluetooth.
Fixes: broken since start
Signed-off-by: Philipp Puschmann
---
Changelog v3:
- use correct
In sdma_prep_dma_cyclic buf is redundant. Drop it.
Signed-off-by: Philipp Puschmann
Reviewed-by: Lucas Stach
---
Changelog v3:
- no changes
Changelog v2:
- add Reviewed-by tag
drivers/dma/imx-sdma.c | 7 ++-
1 file changed, 2 insertions(+), 5 deletions(-)
diff --git a/drivers/dma/imx
T RX DMA. broken since start
Signed-off-by: Philipp Puschmann
Reviewed-by: Lucas Stach
---
Changelog v3:
- use correct dma_wmb() instead of dma_wb()
- add fixes tag
Changelog v2:
- clarify comment and commit description
drivers/dma/imx-sdma.c | 21 +
1 file cha
fixes tags
Changelog v2:
- adapt title (this patches are not only for i.MX6)
- improve some comments and patch descriptions
- add a dma_wb() around BD_DONE flag
- add Reviewed-by tags
- split off "serial: imx: adapt rx buffer and dma periods"
Philipp Puschmann (3):
dmaengine:
Hi Lucas,
Am 19.09.19 um 12:27 schrieb Lucas Stach:
> Hi Philipp,
>
> On Do, 2019-09-19 at 12:23 +0200, Philipp Puschmann wrote:
>> BD_DONE flag marks ownership of the buffer. When 1 SDMA owns the
>> buffer, when 0 ARM owns it. When processing the buffers in
>> s
ned-off-by: Philipp Puschmann
Reviewed-by: Lucas Stach
---
Changelog v2:
- split this patch from series "Fix UART DMA freezes for iMX6"
- add Reviewed-by tag
drivers/tty/serial/imx.c | 5 ++---
1 file changed, 2 insertions(+), 3 deletions(-)
diff --git a/drivers/tty/serial/imx.c
leads to blocking the scheduling of the channel script when a
running sdma script does not find any free descriptor in the ring to put
its data into.
If we detect such a potential case we manually restart the channel.
As sdmac->desc is constant we can move desc out of the loop.
Signed-off-by:
In sdma_prep_dma_cyclic buf is redundant. Drop it.
Signed-off-by: Philipp Puschmann
Reviewed-by: Lucas Stach
---
Changelog v2:
- add Reviewed-by tag
drivers/dma/imx-sdma.c | 7 ++-
1 file changed, 2 insertions(+), 5 deletions(-)
diff --git a/drivers/dma/imx-sdma.c b/drivers/dma/imx
may be running in parallel. So
there was the possibility to get the buffer overwritten by SDMA before
it has been processed by kernel leading to kind of random errors in the
upper layers, e.g. bluetooth.
Signed-off-by: Philipp Puschmann
---
Changelog v2:
- add dma_wb()
drivers/dma/imx-sdma.c
e not only for i.MX6)
- improve some comments and patch descriptions
- add a dma_wb() around BD_DONE flag
- add Reviewed-by tags
- split off "serial: imx: adapt rx buffer and dma periods"
Philipp Puschmann (3):
dmaengine: imx-sdma: fix buffer ownership
dmaengine: imx-sdma: fix dma
Am 16.09.19 um 16:17 schrieb Lucas Stach:
> On Mi, 2019-09-11 at 16:49 +0200, Philipp Puschmann wrote:
>> BD_DONE flag marks ownership of the buffer. When 1 SDMA owns the buffer,
>> when 0 ARM owns it. When processing the buffers in
>> sdma_update_channel_loop the owner
Hi Fabio,
Am 12.09.19 um 20:23 schrieb Fabio Estevam:
> Hi Philipp,
>
> Thanks for submitting these fixes.
>
> On Wed, Sep 11, 2019 at 11:50 AM Philipp Puschmann
> wrote:
>>
>> For some years and since many kernel versions there are reports that
>> RX U
Am 16.09.19 um 10:02 schrieb Robin Gong:
> On 2019/9/11 Philipp Puschmann wrote:
>> For some years and since many kernel versions there are reports that RX
>> UART DMA channel stops working at one point. So far the usual workaround
>> was to disable RX DMA. This patches try
In sdma_prep_dma_cyclic buf is redundant. Drop it.
Signed-off-by: Philipp Puschmann
---
drivers/dma/imx-sdma.c | 7 ++-
1 file changed, 2 insertions(+), 5 deletions(-)
diff --git a/drivers/dma/imx-sdma.c b/drivers/dma/imx-sdma.c
index 6a5a84504858..5b6b9f0e 100644
--- a/drivers/dma/imx
writel or similar to rule out that the compiler sets the
BD_DONE flag before the callback routine has finished.
Signed-off-by: Philipp Puschmann
---
drivers/dma/imx-sdma.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/drivers/dma/imx-sdma.c b/drivers/dma/imx-sdma.c
index
transfer is triggered but no buffer is available.
While we have addressed the dma handling already we still want to avoid
UART RX FIFO overrun. So we decrease the size of the buffers and increase
their number and the total buffer size.
Signed-off-by: Philipp Puschmann
---
drivers/tty/serial
sdmac->desc is constant we can move desc out of the loop.
Signed-off-by: Philipp Puschmann
---
drivers/dma/imx-sdma.c | 22 ++
1 file changed, 18 insertions(+), 4 deletions(-)
diff --git a/drivers/dma/imx-sdma.c b/drivers/dma/imx-sdma.c
index 1abb14ff394d..6a5a84504858 1006
"Bluetooth: hci0: command 0x0408 tx timeout"
errors and complete stop of UART data reception. Our Bluetooth traffic consists
of many independent small packets, mostly only a few bytes, causing high usage
of periods.
Philipp Puschmann (4):
dmaengine: imx-sdma: fix buffer ownership
dmae
Uploading the firmware needs quite a few seconds if done at 115200 kbps. So set
the operational frequency, usually 3 MHz, before uploading the firmware.
I have successfully tested this with a wl1837mod.
Signed-off-by: Philipp Puschmann
---
drivers/bluetooth/hci_ll.c | 39
to
a NULL pointer dereference.
Signed-off-by: Philipp Puschmann
---
Changes in v2: Fix typo in title tlv320aix3x -> tlv320aic3x
sound/soc/codecs/tlv320aic3x.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/sound/soc/codecs/tlv320aic3x.c b/sound/soc/codecs/tlv320a
to
a NULL pointer dereference.
Signed-off-by: Philipp Puschmann
---
sound/soc/codecs/tlv320aic3x.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/sound/soc/codecs/tlv320aic3x.c b/sound/soc/codecs/tlv320aic3x.c
index 6aa0edf8c5ef..cea3ebecdb12 100644
--- a/sound/soc/cod
: Philipp Puschmann
---
drivers/crypto/caam/caamrng.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/drivers/crypto/caam/caamrng.c b/drivers/crypto/caam/caamrng.c
index a387c8d49a62..b6fd60f7638e 100644
--- a/drivers/crypto/caam/caamrng.c
+++ b/drivers/crypto/caam/caamrng.c
@@ -294,6 +294,7
regulator.
Also make use of of_property_read_bool.
Signed-off-by: Philipp Puschmann
---
Changes in v4: use of_property_read_bool, also apply to imx7d
drivers/usb/chipidea/ci_hdrc_imx.c | 4 ++--
drivers/usb/chipidea/ci_hdrc_imx.h | 1 +
drivers/usb/chipidea/usbmisc_imx.c | 7 +++
3 files
The i.MX USB controller may drive the usb power line directly, but the
polarity depends on the board. Reset state of the polarity is low-active so
add this property to allow it to be high-active.
Signed-off-by: Philipp Puschmann
Reviewed-by: Rob Herring
---
Changes in v4: do not limit to i.MX6
ur comment?
Am i right that i have to add my code block to (nearly) all other version
specific init functions then?
Will do so in next days and then send a v4 of this patch.
>
> Peter
>
>> Signed-off-by: Philipp Puschmann
>> ---
>> Changes in v3: add descriptio
Hi!
Am 16.01.19 um 17:32 schrieb Sergei Shtylyov:
> Hello!
>
> On 01/16/2019 01:51 PM, Philipp Puschmann wrote:
>
>> This patch adds support to set the power line polarity for i.MX6q/dl.
>>
>> To let the USB controller control the power it may be necessary to co
regulator.
Signed-off-by: Philipp Puschmann
---
Changes in v2: fixed usage of wrong variable name
Changes in v3: no changes
---
drivers/usb/chipidea/ci_hdrc_imx.c | 3 +++
drivers/usb/chipidea/ci_hdrc_imx.h | 1 +
drivers/usb/chipidea/usbmisc_imx.c | 4
3 files changed, 8 insertions(+)
diff
The i.MX6q/dl USB controller may drive the usb power line directly, but the
polarity depends on the board. Reset state of the polarity is low-active so
add this property to allow it to be high-active.
Signed-off-by: Philipp Puschmann
---
Changes in v3: add description
---
Documentation
Signed-off-by: Philipp Puschmann
---
V2: unchanged ...
---
Documentation/devicetree/bindings/usb/ci-hdrc-usb2.txt | 1 +
1 file changed, 1 insertion(+)
diff --git a/Documentation/devicetree/bindings/usb/ci-hdrc-usb2.txt
b/Documentation/devicetree/bindings/usb/ci-hdrc-usb2.txt
index
regulator.
Signed-off-by: Philipp Puschmann
---
V2: fixed wrong variable name ...
---
drivers/usb/chipidea/ci_hdrc_imx.c | 3 +++
drivers/usb/chipidea/ci_hdrc_imx.h | 1 +
drivers/usb/chipidea/usbmisc_imx.c | 4
3 files changed, 8 insertions(+)
diff --git a/drivers/usb/chipidea/ci_hdrc_imx.c
Signed-off-by: Philipp Puschmann
---
Documentation/devicetree/bindings/usb/ci-hdrc-usb2.txt | 1 +
1 file changed, 1 insertion(+)
diff --git a/Documentation/devicetree/bindings/usb/ci-hdrc-usb2.txt
b/Documentation/devicetree/bindings/usb/ci-hdrc-usb2.txt
index adae82385dd6..8696e3eff6e7 100644
regulator.
Signed-off-by: Philipp Puschmann
---
drivers/usb/chipidea/ci_hdrc_imx.c | 3 +++
drivers/usb/chipidea/ci_hdrc_imx.h | 1 +
drivers/usb/chipidea/usbmisc_imx.c | 4
3 files changed, 8 insertions(+)
diff --git a/drivers/usb/chipidea/ci_hdrc_imx.c
b/drivers/usb/chipidea/ci_hdrc_imx.c
> Hi Philipp,
>
> On Fri, Jun 8, 2018 at 7:19 AM, Philipp Puschmann wrote:
>> q/dl datasheets list the 5th selection value for ck01_sel as
>> video_27M_clk_root.
>>
>> By replacing the dummy value we then can set IMX6QDL_CLK_VIDEO_27M
>> as parent for IM
I screwed up the title: IMX6SX_CLK_CKO1_SEL instead of IMX6QDL_CLK_CKO1_SEL
I have resent the patch with correct title. Sorry for the inconvenience.
Am 06.06.2018 um 15:07 schrieb Fabio Estevam:
> On Wed, Jun 6, 2018 at 6:29 AM, Philipp Puschmann wrote:
>> q/dl datasheets list the 5th
q/dl datasheets list the 5th selection value for ck01_sel as
video_27M_clk_root.
By replacing the dummy value we then can set IMX6QDL_CLK_VIDEO_27M
as parent for IMX6QDL_CLK_CKO1_SEL.
Signed-off-by: Philipp Puschmann
---
drivers/clk/imx/clk-imx6q.c | 2 +-
1 file changed, 1 insertion(+), 1
q/dl datasheets list the 5th selection value for ck01_sel as
video_27M_clk_root.
By replacing the dummy value we then can set IMX6QDL_CLK_VIDEO_27M
as parent for IMX6QDL_CLK_CKO1_SEL.
Signed-off-by: Philipp Puschmann
---
drivers/clk/imx/clk-imx6q.c | 2 +-
1 file changed, 1 insertion(+), 1
g.
This was the reason i put it in the dt.
Thanks
Philipp
--
Bitte beachten Sie unsere neue Adresse am Göttinger Standort:
emlix GmbH, Gothaer Platz 3, 37083 Göttingen
Philipp Puschmann, emlix GmbH, http://www.emlix.com
Fon +49 551 30664-0, Fax +49 551 30664-11
Gothaer Platz 3, 37083 Göttingen, Ge
the driver for now.
The usage of pressure is optional. Touchscreens may deliver constant
and so useless pressure data.
Signed-off-by: Philipp Puschmann
---
.../bindings/input/touchscreen/ili251x.txt| 35 ++
drivers/input/touchscreen/Kconfig | 12 +
drivers/input/touchscreen
Fixes the warning "GIC: PPI13 is secure or misconfigured" by
changing the interrupt type from level_low to edge_raising
Signed-off-by: Philipp Puschmann
---
arch/arm/boot/dts/socfpga.dtsi | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/arch/arm/boot/dts/socfpga.d
Add Everspin mr25h128 16KB MRAM to the list of supported chips.
Signed-off-by: Philipp Puschmann
---
Documentation/devicetree/bindings/mtd/jedec,spi-nor.txt | 1 +
drivers/mtd/devices/m25p80.c| 1 +
drivers/mtd/spi-nor/spi-nor.c | 1 +
3
Fixed a space coding style issue, found via checkpatch.
Signed-off-by: Philipp Puschmann
---
drivers/mtd/spi-nor/spi-nor.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/mtd/spi-nor/spi-nor.c b/drivers/mtd/spi-nor/spi-nor.c
index 19c000722cbc..386de64e5a86 100644
57 matches
Mail list logo