Commit e3e403c2 authored by Thierry Reding's avatar Thierry Reding
Browse files

soc/tegra: pmc: Add initial Tegra194 wake events



Tegra194 supports 96 wake events in total. Many of them are never used,
so only the most common ones (RTC alarm and power key) are currently
defined.

Signed-off-by: default avatarThierry Reding <treding@nvidia.com>
parent e59333c8
Loading
Loading
Loading
Loading
+8 −0
Original line number Diff line number Diff line
@@ -55,6 +55,7 @@
#include <dt-bindings/interrupt-controller/arm-gic.h>
#include <dt-bindings/pinctrl/pinctrl-tegra-io-pad.h>
#include <dt-bindings/gpio/tegra186-gpio.h>
#include <dt-bindings/gpio/tegra194-gpio.h>

#define PMC_CNTRL			0x0
#define  PMC_CNTRL_INTR_POLARITY	BIT(17) /* inverts INTR polarity */
@@ -2516,6 +2517,11 @@ static const struct tegra_io_pad_soc tegra194_io_pads[] = {
	{ .id = TEGRA_IO_PAD_AUDIO_HV, .dpd = 61, .voltage = UINT_MAX },
};

static const struct tegra_wake_event tegra194_wake_events[] = {
	TEGRA_WAKE_GPIO("power", 29, 1, TEGRA194_AON_GPIO(EE, 4)),
	TEGRA_WAKE_IRQ("rtc", 73, 10),
};

static const struct tegra_pmc_soc tegra194_pmc_soc = {
	.num_powergates = 0,
	.powergates = NULL,
@@ -2528,6 +2534,8 @@ static const struct tegra_pmc_soc tegra194_pmc_soc = {
	.regs = &tegra186_pmc_regs,
	.init = NULL,
	.setup_irq_polarity = tegra186_pmc_setup_irq_polarity,
	.num_wake_events = ARRAY_SIZE(tegra194_wake_events),
	.wake_events = tegra194_wake_events,
};

static const struct of_device_id tegra_pmc_match[] = {