On 3/6/2019 5:34 PM, Leonidas P. Papadakos wrote:
The rk3328-roc-cc board exhibits tx stability issues with large packets, as does the rock64 board, which was fixed with this patch https://patchwork.kernel.org/patch/10178969/ A similar patch was merged for the rk3328-roc-cc here https://patchwork.kernel.org/patch/10804863/ but it doesn't include the tx/rx_delay tweaks, and I find that they help with an issue where large transfers would bring the ethernet link down, causing a link reset regularly. These values are better for the Renegade specifically, borrowed from the armbian rk3328-roc-cc.dts: https://github.com/armbian/build/blob/master/patch/kernel/rockchip64-default/Add_dts_rk3328-roc-cc.patch Signed-off-by: Leonidas P. Papadakos <papadakospan@xxxxxxxxx> --- arch/arm64/boot/dts/rockchip/rk3328-roc-cc.dts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/arch/arm64/boot/dts/rockchip/rk3328-roc-cc.dts b/arch/arm64/boot/dts/rockchip/rk3328-roc-cc.dts index 33c44e857..ec5454028 100644 --- a/arch/arm64/boot/dts/rockchip/rk3328-roc-cc.dts +++ b/arch/arm64/boot/dts/rockchip/rk3328-roc-cc.dts @@ -108,8 +108,8 @@ snps,reset-gpio = <&gpio1 RK_PC2 GPIO_ACTIVE_LOW>; snps,reset-active-low; snps,reset-delays-us = <0 10000 50000>; - tx_delay = <0x25>; - rx_delay = <0x11>; + tx_delay = <0x28>; + rx_delay = <0x16>; status = "okay"; };
When I submitted the patch to fix the TX stability issue, I intended to follow up with another patch for delay updates. Unfortunately, I was unable to locate a delay that was acceptable, as I was never able to get below ~700 retry attempts on the TX side in testing.
I am unsure if this is due to manufacturing defects or if I'm missing something else. It may be worth considering implementing some sort of delay auto tuning, similar to the mmc driver.
Thoughts? _______________________________________________ Linux-rockchip mailing list Linux-rockchip@xxxxxxxxxxxxxxxxxxx http://lists.infradead.org/mailman/listinfo/linux-rockchip