mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2024-12-27 06:15:08 +07:00
a968bc52fe
support for new dra762 SoC. The other changes are are for legacy DMA code removal, and MMC quirk and iodelay config for dra7. -----BEGIN PGP SIGNATURE----- iQJFBAABCAAvFiEEkgNvrZJU/QSQYIcQG9Q+yVyrpXMFAlmTIokRHHRvbnlAYXRv bWlkZS5jb20ACgkQG9Q+yVyrpXPLXw//bdosInQAgxNoRHOeXt8B8U4kmHrWVHIj DDuuY2Vh5/DBUbXFizpWi2O7LrzXOFMw3zWLzRnZsA56/sNlojwW70NV4J/KGHVa tmVQ12iEV+blLdt9rypoUgHT4XFtYZ8WEfo4XPjDB23DhPcRYgRikn0O0LqvUV2r nPMemfhGc/E1SIN/hGFUG7AqL3N+TPlFhmzZRLYsrbWECnSr17dpIgYbSD7Dviiq PuSd8jbj88ugPjtUjb6CXyV04o2uRcxFqHceJOghc0jQtARxJBxCzInMLZ4JPPH5 ZBRNKfervmpc4b24Vmlf+23t2iMieOHpqrSvfYy1ErBzyWFgOF32w2kkqbBWO+oB TLd02DdX5ks3bnG6C5fVDk4ztSB6vUO8K+MatdDGnqbAc8f+RRUmYVDE35TTfyHK QcjG8fkC3sze3iO+Jlg6UPO8uGYXYN7wVxm6oJqnQ5R1gVSXTbt2LEDNuKy3usxR IkvkdjkVOei4pYrewgc7bkNLOQ+XMY1Mxy0G/XwoEG9SlCVcEi4N0Vn9LptgJRph Mm3kpb3E93U8qUCR0NnXCpMqrek4foSoOKGcOFFukvSWF67xvnoUbooIIzEtXh/R 9K5ftL1XlgPzYcQEWEp3MT7q4FkgKSpDup+8eHOUH+ozhWi3n4umlm3FzqiT3vXM ADACrqr8CgM= =FBGl -----END PGP SIGNATURE----- Merge tag 'omap-for-v4.14/soc-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap into next/soc Pull "soc changes for omaps for v4.14" from Tony Lindgren: SoC updates for omaps for v4.14. Most of the chages are to add support for new dra762 SoC. The other changes are are for legacy DMA code removal, and MMC quirk and iodelay config for dra7. * tag 'omap-for-v4.14/soc-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap: ARM: OMAP: dra7: powerdomain data: Register SoC specific powerdomains ARM: dra762: Enable SMP for dra762 ARM: dra7: hwmod: Register dra76x specific hwmod ARM: dra762: Add support for device identification ARM: OMAP2+: board-generic: add support for dra762 family ARM: OMAP2+: Select PINCTRL_TI_IODELAY for SOC_DRA7XX ARM: OMAP2+: Add pdata-quirks for MMC/SD on DRA74x EVM ARM: OMAP2+: Remove unused legacy code for DMA
82 lines
2.5 KiB
C
82 lines
2.5 KiB
C
/*
|
|
* MMC definitions for OMAP2
|
|
*
|
|
* Copyright (C) 2006 Nokia Corporation
|
|
*
|
|
* This program is free software; you can redistribute it and/or modify
|
|
* it under the terms of the GNU General Public License version 2 as
|
|
* published by the Free Software Foundation.
|
|
*/
|
|
|
|
/*
|
|
* struct omap_hsmmc_dev_attr.flags possibilities
|
|
*
|
|
* OMAP_HSMMC_SUPPORTS_DUAL_VOLT: Some HSMMC controller instances can
|
|
* operate with either 1.8Vdc or 3.0Vdc card voltages; this flag
|
|
* should be set if this is the case. See for example Section 22.5.3
|
|
* "MMC/SD/SDIO1 Bus Voltage Selection" of the OMAP34xx Multimedia
|
|
* Device Silicon Revision 3.1.x Revision ZR (July 2011) (SWPU223R).
|
|
*
|
|
* OMAP_HSMMC_BROKEN_MULTIBLOCK_READ: Multiple-block read transfers
|
|
* don't work correctly on some MMC controller instances on some
|
|
* OMAP3 SoCs; this flag should be set if this is the case. See
|
|
* for example Advisory 2.1.1.128 "MMC: Multiple Block Read
|
|
* Operation Issue" in _OMAP3530/3525/3515/3503 Silicon Errata_
|
|
* Revision F (October 2010) (SPRZ278F).
|
|
*/
|
|
#define OMAP_HSMMC_SUPPORTS_DUAL_VOLT BIT(0)
|
|
#define OMAP_HSMMC_BROKEN_MULTIBLOCK_READ BIT(1)
|
|
#define OMAP_HSMMC_SWAKEUP_MISSING BIT(2)
|
|
|
|
struct omap_hsmmc_dev_attr {
|
|
u8 flags;
|
|
};
|
|
|
|
struct mmc_card;
|
|
|
|
struct omap_hsmmc_platform_data {
|
|
/* back-link to device */
|
|
struct device *dev;
|
|
|
|
/* set if your board has components or wiring that limits the
|
|
* maximum frequency on the MMC bus */
|
|
unsigned int max_freq;
|
|
|
|
/* Integrating attributes from the omap_hwmod layer */
|
|
u8 controller_flags;
|
|
|
|
/* Register offset deviation */
|
|
u16 reg_offset;
|
|
|
|
/*
|
|
* 4/8 wires and any additional host capabilities
|
|
* need to OR'd all capabilities (ref. linux/mmc/host.h)
|
|
*/
|
|
u32 caps; /* Used for the MMC driver on 2430 and later */
|
|
u32 pm_caps; /* PM capabilities of the mmc */
|
|
|
|
/* nonremovable e.g. eMMC */
|
|
unsigned nonremovable:1;
|
|
|
|
/* eMMC does not handle power off when not in sleep state */
|
|
unsigned no_regulator_off_init:1;
|
|
|
|
/* we can put the features above into this variable */
|
|
#define HSMMC_HAS_PBIAS (1 << 0)
|
|
#define HSMMC_HAS_UPDATED_RESET (1 << 1)
|
|
#define HSMMC_HAS_HSPE_SUPPORT (1 << 2)
|
|
unsigned features;
|
|
|
|
/* string specifying a particular variant of hardware */
|
|
char *version;
|
|
|
|
int gpio_cd; /* gpio (card detect) */
|
|
int gpio_cod; /* gpio (cover detect) */
|
|
int gpio_wp; /* gpio (write protect) */
|
|
/* if we have special card, init it using this callback */
|
|
void (*init_card)(struct mmc_card *card);
|
|
|
|
const char *name;
|
|
u32 ocr_mask;
|
|
};
|