All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v5 0/13] arm64: allwinner: a64: Enable MMC support
@ 2017-01-27 21:38 ` Maxime Ripard
  0 siblings, 0 replies; 56+ messages in thread
From: Maxime Ripard @ 2017-01-27 21:38 UTC (permalink / raw)
  To: Chen-Yu Tsai, Maxime Ripard, Ulf Hansson
  Cc: Rob Herring, devicetree, linux-arm-kernel, linux-kernel,
	linux-mmc, Andre Przywara

Hi,

Here is a new attempt at getting the MMC controllers running, following the
work done by Andre.

This has been tested on a board with one SDIO device (a Marvell WiFi chip)
and a Kingston eMMC with 1.8V IOs.

For SDIO, the HS DDR mode works just fine. That serie also enables the
SDR104 mode to work on the devices that are capable of this.

For the eMMC, HS200 with the voltage switch works. HS400 doesn't at the
moment, but since it's significantly more complex, and at the same time
Allwinner recommends to limit its frequency to 100MHz, this doesn't have
any benefits. If there's any at some point, this can be added later.

Let me know what you think,
Maxime

Changes from v4:
  - Added Florian Tested-by
  - Removed duplicate commit log

Changes from v3:
  - Reordered the MMC nodes
  - Added the specification section the first commit log
  - Supported mmc->actual_rate
  - Clarified a bit what we (don't) know about DATA0

Changes from v2:
  - Enabled SDR104, limited the frequency to 150MHz. 200MHz was too high.
  - Added more fixes to the gating and frequency rate change sequence
  - Added one more patch to mask DATA0 when updating the clock that was
    needed to get SDR104 to run
  - Added the patches to enable it on a few boards done by Andre
  - Amended the comments as suggested by Andre.
  - Added some tags

Andre Przywara (4):
  arm64: allwinner: a64: Add MMC nodes
  arm64: allwinner: pine64: add MMC support
  arm64: allwinner: a64: add UART1 pin nodes
  arm64: allwinner: add BananaPi-M64 support

Maxime Ripard (9):
  mmc: sunxi: Fix clock frequency change sequence
  mmc: sunxi: Gate the clock when rate is 0
  mmc: sunxi: Always set signal delay to 0 for A64
  mmc: sunxi: Enable the new timings for the A64 MMC controllers
  mmc: sunxi: Mask DATA0 when updating the clock
  mmc: sunxi: Add EMMC (MMC2) controller compatible
  mmc: sunxi: Add more debug informations
  arm64: allwinner: a64: Add MMC pinctrl nodes
  arm64: allwinner: a64: Increase the MMC max frequency

 arch/arm64/boot/dts/allwinner/Makefile                    |   1 +-
 arch/arm64/boot/dts/allwinner/sun50i-a64-bananapi-m64.dts | 120 +++++++-
 arch/arm64/boot/dts/allwinner/sun50i-a64-pine64.dts       |  20 +-
 arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi             |  77 ++++-
 drivers/mmc/host/sunxi-mmc.c                              | 114 ++++---
 5 files changed, 289 insertions(+), 43 deletions(-)
 create mode 100644 arch/arm64/boot/dts/allwinner/sun50i-a64-bananapi-m64.dts

base-commit: c94f7962e97c2ba0a612656bc456d979f20cb382
-- 
git-series 0.8.11

^ permalink raw reply	[flat|nested] 56+ messages in thread

end of thread, other threads:[~2017-01-30 11:10 UTC | newest]

Thread overview: 56+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-01-27 21:38 [PATCH v5 0/13] arm64: allwinner: a64: Enable MMC support Maxime Ripard
2017-01-27 21:38 ` Maxime Ripard
2017-01-27 21:38 ` Maxime Ripard
2017-01-27 21:38 ` [PATCH v5 1/13] mmc: sunxi: Fix clock frequency change sequence Maxime Ripard
2017-01-27 21:38   ` Maxime Ripard
2017-01-27 21:38   ` Maxime Ripard
2017-01-27 21:38 ` [PATCH v5 2/13] mmc: sunxi: Gate the clock when rate is 0 Maxime Ripard
2017-01-27 21:38   ` Maxime Ripard
2017-01-27 21:38   ` Maxime Ripard
2017-01-27 21:38 ` [PATCH v5 3/13] mmc: sunxi: Always set signal delay to 0 for A64 Maxime Ripard
2017-01-27 21:38   ` Maxime Ripard
2017-01-27 21:38   ` Maxime Ripard
2017-01-27 21:38 ` [PATCH v5 4/13] mmc: sunxi: Enable the new timings for the A64 MMC controllers Maxime Ripard
2017-01-27 21:38   ` Maxime Ripard
2017-01-27 21:38   ` Maxime Ripard
2017-01-27 21:38 ` [PATCH v5 5/13] mmc: sunxi: Mask DATA0 when updating the clock Maxime Ripard
2017-01-27 21:38   ` Maxime Ripard
2017-01-27 21:38 ` [PATCH v5 6/13] mmc: sunxi: Add EMMC (MMC2) controller compatible Maxime Ripard
2017-01-27 21:38   ` Maxime Ripard
2017-01-27 21:38   ` Maxime Ripard
2017-01-30 10:06   ` Ulf Hansson
2017-01-30 10:06     ` Ulf Hansson
2017-01-30 10:06     ` Ulf Hansson
2017-01-30 11:05     ` Maxime Ripard
2017-01-30 11:05       ` Maxime Ripard
2017-01-30 11:05       ` Maxime Ripard
2017-01-27 21:38 ` [PATCH v5 7/13] mmc: sunxi: Add more debug informations Maxime Ripard
2017-01-27 21:38   ` Maxime Ripard
2017-01-27 21:38   ` Maxime Ripard
2017-01-27 21:38 ` [PATCH v5 8/13] arm64: allwinner: a64: Add MMC nodes Maxime Ripard
2017-01-27 21:38   ` Maxime Ripard
2017-01-27 21:38   ` Maxime Ripard
2017-01-27 21:38 ` [PATCH v5 9/13] arm64: allwinner: a64: Add MMC pinctrl nodes Maxime Ripard
2017-01-27 21:38   ` Maxime Ripard
2017-01-27 21:38   ` Maxime Ripard
2017-01-27 21:38 ` [PATCH v5 10/13] arm64: allwinner: a64: Increase the MMC max frequency Maxime Ripard
2017-01-27 21:38   ` Maxime Ripard
2017-01-27 21:38   ` Maxime Ripard
2017-01-27 21:38 ` [PATCH v5 11/13] arm64: allwinner: pine64: add MMC support Maxime Ripard
2017-01-27 21:38   ` Maxime Ripard
2017-01-27 21:38   ` Maxime Ripard
2017-01-27 21:38 ` [PATCH v5 12/13] arm64: allwinner: a64: add UART1 pin nodes Maxime Ripard
2017-01-27 21:38   ` Maxime Ripard
2017-01-27 21:38   ` Maxime Ripard
2017-01-27 21:38 ` [PATCH v5 13/13] arm64: allwinner: add BananaPi-M64 support Maxime Ripard
2017-01-27 21:38   ` Maxime Ripard
2017-01-27 21:38   ` Maxime Ripard
2017-01-28 12:44 ` [PATCH v5 0/13] arm64: allwinner: a64: Enable MMC support Chen-Yu Tsai
2017-01-28 12:44   ` Chen-Yu Tsai
2017-01-30 10:42   ` Maxime Ripard
2017-01-30 10:42     ` Maxime Ripard
2017-01-30 10:05 ` Ulf Hansson
2017-01-30 10:05   ` Ulf Hansson
2017-01-30 10:05   ` Ulf Hansson
2017-01-30 11:06 ` Maxime Ripard
2017-01-30 11:06   ` Maxime Ripard

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.