lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <16f4fcf0-e9c2-e925-e463-282cfff088c7@katsuster.net>
Date:   Sun, 17 Feb 2019 19:58:36 +0900
From:   Katsuhiro Suzuki <katsuhiro@...suster.net>
To:     Heiko Stübner <heiko@...ech.de>
Cc:     linux-rockchip@...ts.infradead.org,
        linux-arm-kernel@...ts.infradead.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH] arm64: dts: rockchip: add HDMI sound node for
 rk3328-rock64

Hello Heiko,

On 2019/02/12 20:12, Heiko Stübner wrote:
> Hi,
> 
> Am Montag, 4. Februar 2019, 13:59:37 CET schrieb Katsuhiro Suzuki:
>> On 2019/02/03 18:06, Heiko Stuebner wrote:
>>> Am Samstag, 2. Februar 2019, 05:34:44 CET schrieb Katsuhiro Suzuki:
>>>> This patch adds HDMI sound (I2S0) node and remove dma properties
>>>> from UART2 node for rock64.
>>>>
>>>> The DMAC of rk3328 can use 8 channels at same time. Currently, total
>>>>
>>>> 7 channels are used as follows:
>>>>     - I2S1  2ch
>>>>     - UART2 2ch
>>>>     - SPDIF 1ch
>>>>     - SPI0  2ch
>>>>
>>>> HDMI audio using I2S0 that requires 2ch but DMAC has only 1 channel.
>>>>
>>>> UART2 can work without DMA resources, so this patch removes dma
>>>> allocation for UART2 and reuses it to I2S0.
>>>
>>> I don't follow that description. How can i2s0 re-use the uart2 dma
>>> channels? Looking at the dma table in the TRM, uart2 has channels 6+7
>>> while i2s0 uses channels 11+12. They should just run concurrently?
>>
>> Sorry for confusing... 6 or 7 is as ID number of slave DMA channel.
>> TRM calls it 'Req number'. Req number 6+7 and 11+12 can work
>> concurrently but TRM says DMAC can transfer 8 DMA channels at same
>> time. So all 16 Req numbers cannot activate at same time. It should
>> be keep less or equal than 8 numbers.
> 
> But that "shortcoming" of having more requests than channels is not
> something specific to the pl330, instead most dma controllers have that
> "problem", which seems to get solved by the virt-dma mechanism of
> dmaengine - which pl330 doesn't use so far. (but see pl080 for example)
> 

I understand. I drop these patches.


> The devicetree only describes the hardware and is never meant as a
> configuration space for kernel-code shortcomings.
> 

Yes, right. I don't want to use device-tree as configuration space,
so which is better?

- Fix the pl330 driver first and after that add HDMI-sound node
   to device-tree.
- Just add HDMI-sound node to device-tree. If someone (include me)
   want to support virt-dma on pl330 driver, they will fix it.
   (PL330 will face error but all sounds works fine and UART still
   works fine with DMA error)

> 
> Heiko
> 
> 
> 

Best Regards,
Katsuhiro Suzuki

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ