All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v4 0/8] UHS-I support for sh_mobile_sdhi
@ 2015-06-30 16:52 ` Ben Hutchings
  0 siblings, 0 replies; 44+ messages in thread
From: Ben Hutchings @ 2015-06-30 16:52 UTC (permalink / raw)
  To: Ian Molton, Laurent Pinchart
  Cc: linux-mmc, linux-sh, linux-gpio, linux-kernel, Sergei Shtylyov,
	Simon Horman, Kuninori Morimoto

This series adds support for UHS-I in sh_mobile_sdhi, partly implemented
in tmio_mmc.  This does not yet include tuning for SDR-104, but SDR-50 now
works on the R8A7790 Lager board and another development board.

The pfc block needs to be reconfigured from 3.3V to 1.8V signalling on
the pins wired to the SD card.  This is supported by implementing the
pinconf power-source parameter.  I expect that several SH SoCs have this
capability, but I only have the R8A7790 data sheet so I only implemented
it for that one.

Changes since v3:
- Change pinconf power-source argument to millivolts instead of boolean
  for low voltage
- Rename pinctrl voltage operations accordingly
- Use io{read,write}32() instead of sh_pfc_{read,write}_raw_reg()
- Change tmio, sh_mobile_sdhi to adjust input clock frequency to match
  requested bus frequency more closely
- Replace SDHI assigned-clock{,-rate}s properties with max-frequency
- Reorder patch series to put all pinctrl changes first

Changes since v2:
- Implement the pinconf power-source parameter instead of separate
  functions for the low-voltage mode
- Adjust low-voltage mode setter function and device tree accordingly
- Add low-voltage mode getter function for R8A7790

Changes since v1:
- Reword commit message for "mmc: tmio: Add UHS-I mode support"
- Make sh_mobile_sdhi_start_signal_voltage_switch() succeed if asked
  to switch to 3.3V and the regulator or pinctrl or pinctrl state is
  missing
- Drop change to mmcif clock on Lager
- Correct original author for sdhi clock changes on Lager

Changes since the RFC:
- Replace the 'regulator' devices for signal voltage switching with
  pinctrl functions and states
- Drop 'mmc: sh_mobile_sdhi: Add actual clock rate support' as it's
  redundant
- Use a switch statement in sh_mobile_sdhi_start_signal_voltage_switch()
- Fix subject prefix for the DT changes

Ben.

Ben Hutchings (8):
  pinctrl: sh-pfc: Implement pinconf power-source param for voltage
    switching
  pinctrl: sh-pfc: r8a7790: Implement voltage switching for SDHI
  mmc: tmio, sh_mobile_sdhi: Pass tmio_mmc_host ptr to
    clk_{enable,disable} ops
  mmc: tmio, sh_mobile_sdhi: Add support for variable input clock
    frequency
  mmc: tmio: Add UHS-I mode support
  mmc: sh_mobile_sdhi: Add UHS-I mode support
  ARM: shmobile: r8a7790: Set maximum frequencies for SDHI clocks
  ARM: shmobile: lager: Enable UHS-I SDR-50

 .../bindings/pinctrl/renesas,pfc-pinctrl.txt       |   4 +-
 arch/arm/boot/dts/r8a7790-lager.dts                |  22 +++-
 arch/arm/boot/dts/r8a7790.dtsi                     |   4 +
 drivers/mmc/host/sh_mobile_sdhi.c                  | 126 +++++++++++++++++++--
 drivers/mmc/host/tmio_mmc.h                        |   9 +-
 drivers/mmc/host/tmio_mmc_pio.c                    |  56 ++++++---
 drivers/pinctrl/sh-pfc/core.c                      |   2 +-
 drivers/pinctrl/sh-pfc/core.h                      |   1 +
 drivers/pinctrl/sh-pfc/pfc-r8a7790.c               |  71 +++++++++++-
 drivers/pinctrl/sh-pfc/pinctrl.c                   |  44 ++++++-
 drivers/pinctrl/sh-pfc/sh_pfc.h                    |   5 +
 11 files changed, 313 insertions(+), 31 deletions(-)

-- 
2.1.4




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

end of thread, other threads:[~2016-02-11 13:53 UTC | newest]

Thread overview: 44+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-06-30 16:52 [PATCH v4 0/8] UHS-I support for sh_mobile_sdhi Ben Hutchings
2015-06-30 16:52 ` Ben Hutchings
2015-06-30 16:53 ` [PATCH v4 1/8] pinctrl: sh-pfc: Implement pinconf power-source param for voltage switching Ben Hutchings
2015-06-30 16:53   ` Ben Hutchings
2015-07-01  7:24   ` Laurent Pinchart
2015-07-01  7:24     ` Laurent Pinchart
2015-08-24  8:45   ` Linus Walleij
2015-08-24  8:45     ` Linus Walleij
2015-06-30 16:54 ` [PATCH v4 2/8] pinctrl: sh-pfc: r8a7790: Implement voltage switching for SDHI Ben Hutchings
2015-06-30 16:54   ` Ben Hutchings
2015-07-01  7:37   ` Laurent Pinchart
2015-07-01  7:37     ` Laurent Pinchart
2015-07-02 23:21     ` Ben Hutchings
2015-07-02 23:21       ` Ben Hutchings
2015-07-09 12:34       ` Ben Hutchings
2015-07-09 12:34         ` Ben Hutchings
2015-11-13  8:38         ` Kuninori Morimoto
2015-11-13  8:38           ` Kuninori Morimoto
2016-02-03  9:59       ` Laurent Pinchart
2016-02-03  9:59         ` Laurent Pinchart
2016-02-11 13:53         ` Wolfram Sang
2016-02-11 13:53           ` Wolfram Sang
2015-06-30 16:54 ` [PATCH v4 3/8] mmc: tmio, sh_mobile_sdhi: Pass tmio_mmc_host ptr to clk_{enable,disable} ops Ben Hutchings
2015-06-30 16:54   ` Ben Hutchings
2015-06-30 16:56 ` [PATCH v4 4/8] mmc: tmio, sh_mobile_sdhi: Add support for variable input clock frequency Ben Hutchings
2015-06-30 16:56   ` Ben Hutchings
2015-06-30 16:56 ` [PATCH v4 5/8] mmc: tmio: Add UHS-I mode support Ben Hutchings
2015-06-30 16:56   ` Ben Hutchings
2015-06-30 16:57 ` [PATCH v4 6/8] mmc: sh_mobile_sdhi: " Ben Hutchings
2015-06-30 16:57   ` Ben Hutchings
2015-06-30 16:57 ` [PATCH v4 7/8] ARM: shmobile: r8a7790: Set maximum frequencies for SDHI clocks Ben Hutchings
2015-06-30 16:57   ` Ben Hutchings
2015-07-07  0:39   ` Simon Horman
2015-07-07  0:39     ` Simon Horman
2015-07-07  1:19     ` Kuninori Morimoto
2015-07-07  1:19       ` Kuninori Morimoto
2015-07-08  1:25       ` Simon Horman
2015-07-08  1:25         ` Simon Horman
2015-07-07  1:19   ` Kuninori Morimoto
2015-07-07  1:19     ` Kuninori Morimoto
2015-06-30 16:57 ` [PATCH v4 8/8] ARM: shmobile: lager: Enable UHS-I SDR-50 Ben Hutchings
2015-06-30 16:57   ` Ben Hutchings
2015-07-01  0:28 ` [PATCH v4 0/8] UHS-I support for sh_mobile_sdhi Kuninori Morimoto
2015-07-01  0:28   ` Kuninori Morimoto

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.