^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1) /* SPDX-License-Identifier: GPL-2.0-only */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 2) /*
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 3) * Copyright (C) 2010 Google, Inc.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 4) * Copyright (c) 2010-2012 NVIDIA Corporation. All rights reserved.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 5) *
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 6) * Author:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 7) * Colin Cross <ccross@google.com>
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 8) */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 9)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 10) #ifndef _MACH_TEGRA_PM_H_
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 11) #define _MACH_TEGRA_PM_H_
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 12)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 13) struct tegra_lp1_iram {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 14) void *start_addr;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 15) void *end_addr;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 16) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 17)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 18) extern struct tegra_lp1_iram tegra_lp1_iram;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 19) extern void (*tegra_sleep_core_finish)(unsigned long v2p);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 20)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 21) void tegra20_lp1_iram_hook(void);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 22) void tegra20_sleep_core_init(void);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 23) void tegra30_lp1_iram_hook(void);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 24) void tegra30_sleep_core_init(void);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 25)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 26) extern void (*tegra_tear_down_cpu)(void);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 27)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 28) #ifdef CONFIG_PM_SLEEP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 29) void tegra_init_suspend(void);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 30) #else
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 31) static inline void tegra_init_suspend(void) {}
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 32) #endif
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 33)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 34) #endif /* _MACH_TEGRA_PM_H_ */