Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 2 Apr 2018 09:39:19 -0500
From:      Eric van Gyzen <eric@vangyzen.net>
To:        Warner Losh <imp@bsdimp.com>, raul.becker@iki.fi
Cc:        "freebsd-hackers@freebsd.org" <freebsd-hackers@freebsd.org>
Subject:   Re: Realtek RTS525A SD card reader
Message-ID:  <22ca4f05-3e3a-114d-ef95-d974541ee6d8@vangyzen.net>
In-Reply-To: <CANCZdfoO2h31RToz73_xaeQR1rbyCTzYCrgiw357mdDnKtzFTA@mail.gmail.com>
References:  <fdc07dc1-6ada-929b-e3fc-a360e416b1e3@vangyzen.net> <20180401034514.t4idseuyg53gap7g@tardis> <CANCZdfoO2h31RToz73_xaeQR1rbyCTzYCrgiw357mdDnKtzFTA@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On 04/01/2018 02:06, Warner Losh wrote:
> The interface you want to look for is the mmcbr_if.m inteface. In sdhci,
> these routines implement the mmc interface:
> sdhci_pci.c: DEVMETHOD(mmcbr_update_ios, sdhci_generic_update_ios),
> sdhci_pci.c: DEVMETHOD(mmcbr_switch_vccq, sdhci_generic_switch_vccq),
> sdhci_pci.c: DEVMETHOD(mmcbr_tune, sdhci_generic_tune),
> sdhci_pci.c: DEVMETHOD(mmcbr_retune, sdhci_generic_retune),
> sdhci_pci.c: DEVMETHOD(mmcbr_request, sdhci_generic_request),
> sdhci_pci.c: DEVMETHOD(mmcbr_get_ro, sdhci_generic_get_ro),
> sdhci_pci.c: DEVMETHOD(mmcbr_acquire_host,   sdhci_generic_acquire_host),
> sdhci_pci.c: DEVMETHOD(mmcbr_release_host,   sdhci_generic_release_host),
> 
> rtsz will almost certainly need it's own versions of these routines (which
> is why I suggest having your own driver will be simpler: otherwise each of
> these routines would be if (rtsz) do_rtsz_stuff(); else do_sdhci_stuff();
> which won't end well and would be uncomittable to FreeBSD. You can see how
> other chips implement these methods by grepping for them in the tree. You
> may not need a tune/retune if rtsz doesn't support the latest, fastest
> cards, for example. Switch vccq may not be needed either. update_ios will
> be needed, and request is needed. Acquire and release host may be able to
> be done as a dummy routine if there's only one slot.
> 
> I know this is a super-quick gloss of what needs to be done.

This mmc part was helpful, since I know nothing about this interface. 
Thanks!

Eric



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?22ca4f05-3e3a-114d-ef95-d974541ee6d8>