• Stephan Gerhold's avatar
    arm64: dts: qcom: msm8916-samsung-a2015: Reserve Samsung firmware memory · 8f4a7a00
    Stephan Gerhold authored
    At the moment, writing large amounts of data to the eMMC causes the device
    to freeze. The symptoms vary, sometimes the device reboots immediately,
    but usually it will just get stuck.
    
    It turns out that the issue is not actually related to the eMMC:
    Apparently, Samsung has made some modifications to the TrustZone firmware.
    These require additional memory which is reserved at 0x85500000-0x86000000.
    The downstream kernel describes this memory reservation as:
    
    /* Additionally Reserved 6MB for TIMA and Increased the TZ app size
     * by 2MB [total 8 MB ]
     */
    
    This suggests that it is used for additional TZ apps, although the extra
    memory is actually 11 MB instead of the 8 MB mentioned in the comment.
    
    Writing to the protected memory causes the kernel to crash or freeze.
    In our case, writing to the eMMC causes the disk cache to fill
    the available RAM, until the kernel eventually crashes
    when attempting to use the reserved memory.
    
    Add the additional memory as reserved-memory to fix this problem.
    
    Fixes: 1329c1ab ("arm64: dts: qcom: Add device tree for Samsung Galaxy A3U/A5U")
    Reported-by: default avatarMichael Srba <Michael.Srba@seznam.cz>
    Tested-by: Michael Srba <Michael.Srba@seznam.cz> # a3u
    Tested-by: Stephan Gerhold <stephan@gerhold.net> # a5u
    Signed-off-by: default avatarStephan Gerhold <stephan@gerhold.net>
    Link: https://lore.kernel.org/r/20191231112511.83342-1-stephan@gerhold.netSigned-off-by: default avatarBjorn Andersson <bjorn.andersson@linaro.org>
    8f4a7a00
msm8916-samsung-a2015-common.dtsi 6.32 KB