Message ID | 20220601233743.56317-1-virag.david003@gmail.com |
---|---|
Headers | show |
Series | Bring up internal eMMC on Samsung Galaxy A8 (2018) | expand |
On 02/06/2022 01:37, David Virag wrote: > TREX D Core and P core clocks seem to be related to the BTS (Bus Traffic > Shaper) inside the Exynos7885 SoC, and are needed for the SoC to > function correctly. > > When clocks are cut from TREX D Core, the eMMC and the framebuffer stops > working properly. Other unknown things may stop working as well. > > When clocks are cut from TREX P Core, the system locks up needing a hard > reset. > > Add these clocks and mark them critical so that they are always on. Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Best regards, Krzysztof
On Thu, 2022-06-02 at 14:01 +0200, Krzysztof Kozlowski wrote: > On 02/06/2022 01:37, David Virag wrote: > > Add the nodes relevant to provide clocks for Exynos7885 eMMC and to > > support eMMC. eMMC is the internal storage used in the Samsung > > Galaxy A8 > > (2018) (jackpotlte), and all other known devices using the > > Exynos7885 > > SoC. > > > > Signed-off-by: David Virag <virag.david003@gmail.com> > > --- > > .../boot/dts/exynos/exynos7885-jackpotlte.dts | 20 ++++++++++++ > > arch/arm64/boot/dts/exynos/exynos7885.dtsi | 32 > > +++++++++++++++++++ > > 2 files changed, 52 insertions(+) > > > > diff --git a/arch/arm64/boot/dts/exynos/exynos7885-jackpotlte.dts > > b/arch/arm64/boot/dts/exynos/exynos7885-jackpotlte.dts > > index 4cf9aa25f618..5db9a81ac7bb 100644 > > --- a/arch/arm64/boot/dts/exynos/exynos7885-jackpotlte.dts > > +++ b/arch/arm64/boot/dts/exynos/exynos7885-jackpotlte.dts > > @@ -60,6 +60,26 @@ power-key { > > }; > > }; > > > > +&mmc_0 { > > + status = "okay"; > > + mmc-hs200-1_8v; > > + mmc-hs400-1_8v; > > + cap-mmc-highspeed; > > + non-removable; > > + mmc-hs400-enhanced-strobe; > > + card-detect-delay = <200>; > > + clock-frequency = <800000000>; > > Is this real property for MMC? Neither mmc nor DW MSHC bindings > mention it. It is, but I don't remember trying without it. Seems like it is not documented then. It is used in dw_mmc.c in the following places: https://github.com/torvalds/linux/blob/master/drivers/mmc/host/dw_mmc.c#L3242-L3243 https://github.com/torvalds/linux/blob/master/drivers/mmc/host/dw_mmc.c#L3306-L3325 The Exynos850 device tree has the same property in it's mmc node. > > Best regards, > Krzysztof Best regards, David