title: "SDHI; refactor reset into proper reset and hw_reset" team: IO key: b408bad6-edcd-11ea-942b-eb603d86bc58 status: Done assignee: Wolfram bsp39x: upstream: - torvalds: 6e7d4de10890545b00f7d7c33310f1555963d592 # mmc: renesas_sdhi: move wrong 'hw_reset' to 'reset' - torvalds: 34e3211e5492756d4e59ef54f9ab1750ec7050ec # Revert "mmc: tmio: fix reset operation" - torvalds: a8c83064e73382d6bb069bd51c56074d1e4f4eec # mmc: tmio: remove indirection of 'hw_reset' callback - torvalds: 576146ea4ed986f44a4406ec32a5d3363216b3d2 # mmc: tmio: factor out common parts of the reset routine - torvalds: 5b0739d76227fd5a3f02f014385bfa9c86e0404b # mmc: tmio: don't reset whole IP core when tuning fails - torvalds: 510bfe58936f7d79d4c377bcc7425244d879b1ff # mmc: tmio: remove indirection of 'execute_tuning' callback - torvalds: ab0cdefec052825303c05687d9416bafc867fe3d # mmc: tmio: abort DMA before reset - torvalds: 0e5870145840e91fc33cd4eca6e228b009d86705 # mmc: renesas_sdhi: break SCC reset into own function - torvalds: b4d86f37eacb724690d0d300576b82806bc743d5 # mmc: renesas_sdhi: do hard reset if possible - torvalds: 0a446288aa9f28ab00a31b8b51fdb005953f9f99 # mmc: tmio: restore bus width when resetting - torvalds: 6e5c951b4c3a0bd9aa5838ecec98f3c795c83ff1 # mmc: tmio: always flag retune when resetting and a card is present - torvalds: 0751d56ef1f25c4206626dff99445db34dedf437 # mmc: tmio: always restore irq register comments: - "Shimoda-san reported that after IP core reset, some card initialization needs to be done again" - "Wolfram then evaluated that the usage of reset and hw_reset in the SDHI driver is different from what the MMC core expects" - "a proper refactoring was needed" - "v1: https://patchwork.kernel.org/project/linux-renesas-soc/list/?series=335877&state=*" - "v1 merged" - "regression when re-inserting SD cards found, investigating" - "also, we should probably reset the device in probe()" - "BSP team suggests to use SRCR3 register SD-IFx bit" - "regressions fixed: https://patchwork.kernel.org/project/linux-renesas-soc/list/?series=378775&state=*" - "a better fix for the regression: https://patchwork.kernel.org/project/linux-renesas-soc/patch/20201125204953.3344-1-wsa+renesas@sang-engineering.com/" - "prototype for reset via SRCR3 sent internally; unusual delay needed, asking HW team for confirmation" - "no response so far, asked HW team again" - "response: we don't know why :)" - "patch series rfc v2: https://patchwork.kernel.org/project/linux-renesas-soc/list/?series=436517&state=*" - "patch series v1: https://patchwork.kernel.org/project/linux-renesas-soc/list/?series=444415&state=*" - "patch series v2: https://patchwork.kernel.org/project/linux-renesas-soc/list/?series=448373&state=*" - "patch series v3: https://patchwork.kernel.org/project/linux-renesas-soc/list/?series=449867&state=*" - "merged" - "restore bus width on reset:" - "v1: https://patchwork.kernel.org/project/linux-renesas-soc/list/?series=448879&state=*" - "merged" - "always reinit irq register:" - "v1: https://patchwork.kernel.org/project/linux-renesas-soc/patch/20210407153126.37285-1-wsa+renesas@sang-engineering.com/" - "v2: https://patchwork.kernel.org/project/linux-renesas-soc/patch/20210413083137.11171-1-wsa+renesas@sang-engineering.com/" - "merged"