shdwc
int (*config_shdwc_ws)(void __iomem *shdwc, u32 *mode, u32 *polarity);
soc_pm.data.shdwc = of_iomap(np, 0);
if (soc_pm.data.shdwc &&
iounmap(soc_pm.data.shdwc);
soc_pm.data.shdwc = NULL;
if (!soc_pm.data.pmc || !soc_pm.data.shdwc || !soc_pm.ws_ids)
soc_pm.config_shdwc_ws(soc_pm.data.shdwc, &mode, &polarity);
val = readl(soc_pm.data.shdwc + 0x04);
static int at91_sama5d2_config_shdwc_ws(void __iomem *shdwc, u32 *mode,
val = readl(shdwc + 0x0c);
readl(soc_pm.data.shdwc + 0x08);
void __iomem *shdwc;
DEFINE(PM_DATA_SHDWC, offsetof(struct at91_pm_data, shdwc));
static struct shdwc *at91_shdwc;
struct shdwc *shdw = platform_get_drvdata(pdev);
if (SHDW_WK_PIN(reg, &rcfg->shdwc))
else if (SHDW_RTCWK(reg, &rcfg->shdwc))
else if (SHDW_RTTWK(reg, &rcfg->shdwc))
struct shdwc *shdw = platform_get_drvdata(pdev);
mode |= SHDW_RTCWKEN(&rcfg->shdwc);
mode |= SHDW_RTTWKEN(&rcfg->shdwc);
.shdwc = {
.shdwc = {
.shdwc = {
struct shdwc *shdw = platform_get_drvdata(pdev);
struct shdwc_reg_config shdwc;