/*
 * Copyright (c) 2015, ARM Limited and Contributors. All rights reserved.
 *
 * SPDX-License-Identifier: BSD-3-Clause
 */

#include <common/debug.h>
#include <drivers/delay_timer.h>
#include <lib/bakery_lock.h>
#include <lib/mmio.h>

#include <mt8516_def.h>
#include <spm.h>
#include <spm_suspend.h>

/*
 * System Power Manager (SPM) is a hardware module, which controls cpu or
 * system power for different power scenarios using different firmware.
 * This driver controls the system power in system suspend flow.
 */

#define WAKE_SRC_FOR_SUSPEND \
	(WAKE_SRC_KP | WAKE_SRC_EINT |  WAKE_SRC_CONN_WDT  | WAKE_SRC_CONN2AP | \
	WAKE_SRC_USB_CD | WAKE_SRC_USB_PDN | WAKE_SRC_ETH | WAKE_SRC_IRRX |\
	WAKE_SRC_SYSPWREQ)
#define WAKE_SRC_FOR_MD32  0

#define spm_is_wakesrc_invalid(wakesrc)	\
	(!!((unsigned int)(wakesrc) & 0xc0003803))

const unsigned int spm_flags = SPM_INFRA_PDN_DIS | SPM_26M_OFF_DIS | SPM_32K_LESS;

enum wake_reason_t spm_wake_reason = WR_NONE;

/**********************************************************
 * PCM sequence for cpu suspend
 **********************************************************/
static const unsigned int suspend_binary_ca7[] = {
	0x803d0400, 0x803b0400, 0xa1d58407, 0x81f68407, 0x803a0400, 0x1b80001f,
	0x20000000, 0x80300400, 0x80328400, 0xa1d28407, 0x81f20407, 0x80338400,
	0x80318400, 0xa15f8405, 0x82851801, 0xd80002ca, 0x17c07c1f, 0x18c0001f,
	0x10006234, 0xc0c02c20, 0x1200041f, 0xa15e8405, 0x81f00407, 0xc2803a80,
	0x1290041f, 0x82069801, 0x82471801, 0xa2002408, 0xd8000f88, 0x17c07c1f,
	0xe8208000, 0x1000009c, 0x04000000, 0xe8208000, 0x100000b0, 0x00010000,
	0xe8208000, 0x1000007c, 0x00002508, 0x1ad0001f, 0x10006c30, 0x8a80000b,
	0x00000030, 0x1294281f, 0xa2922c0a, 0xaa80000a, 0x00000004, 0x1a00001f,
	0x10210008, 0xe8208000, 0x10210004, 0x00001d00, 0xaa40000a, 0x00900000,
	0xe2000009, 0xe8208000, 0x10210000, 0x00080401, 0x1b80001f, 0x20000032,
	0xe8208000, 0x10210004, 0x00001d00, 0xe8208000, 0x10210008, 0x00100c00,
	0xe8208000, 0x10210000, 0x00080401, 0x1b80001f, 0x2000079e, 0xe8208000,
	0x10210004, 0x00001d00, 0xe8208000, 0x10210008, 0x00100400, 0xe8208000,
	0x10210000, 0x00080401, 0x1b80001f, 0x20000032, 0xe8208000, 0x10210004,
	0x00001d00, 0xe8208000, 0x10210008, 0x03400048, 0xe8208000, 0x10210000,
	0x00080401, 0x1b80001f, 0x20000032, 0xe8208000, 0x10210004, 0x00001d00,
	0xe8208000, 0x10210008, 0x00400004, 0xe8208000, 0x10210000, 0x00080401,
	0x1b80001f, 0x20000032, 0xe8208000, 0x10210004, 0x00001d00, 0xe8208000,
	0x10210008, 0x00702000, 0xe8208000, 0x10210000, 0x00080401, 0x1b80001f,
	0x20000032, 0xe8208000, 0x1000006c, 0x04000000, 0xe8208000, 0x100000a0,
	0x00010000, 0xe8208000, 0x1000007c, 0x00002528, 0x1b00001f, 0x7fffd7ff,
	0xe8208000, 0x10000054, 0x00400000, 0xf0000000, 0x17c07c1f, 0x1b00001f,
	0x3fffc7ff, 0xd800152c, 0x17c07c1f, 0x82281801, 0xc8c031c8, 0x17c07c1f,
	0xe8208000, 0x10000084, 0x00400000, 0x82851801, 0xd80012aa, 0x17c07c1f,
	0x18c0001f, 0x10006234, 0xc0c02da0, 0x17c07c1f, 0xa15e0405, 0xc2803a80,
	0x1290841f, 0xa0138400, 0x1b00001f, 0x3fffcfff, 0xa0128400, 0xa0118400,
	0x81f58407, 0xa1d68407, 0x82069801, 0x82471801, 0x82a02401, 0xa15f0405,
	0xa1d20407, 0x81f28407, 0xa0100400, 0xd8001528, 0xa01a0400, 0xa01d2400,
	0xa01b2800, 0xf0000000, 0x17c07c1f, 0x82059801, 0xd8001628, 0x17c07c1f,
	0xa15f8405, 0x80318400, 0x80328400, 0x1b00001f, 0x7fffd7ff, 0xf0000000,
	0x17c07c1f, 0x82059801, 0xd80017e8, 0x17c07c1f, 0xa15f0405, 0xa0128400,
	0xa0118400, 0xc2803a80, 0x1290841f, 0xc2803a80, 0x129f041f, 0x1b00001f,
	0x3fffcfff, 0xf0000000, 0x17c07c1f, 0x81f30407, 0x82831801, 0xd8001f0a,
	0x17c07c1f, 0x82839801, 0xd8001b4a, 0x17c07c1f, 0x1a00001f, 0x10006240,
	0xe220001e, 0xe220000c, 0x1b80001f, 0x2000001a, 0xe220000d, 0x1a00001f,
	0x10006c60, 0x1a50001f, 0x10006c60, 0xa2540409, 0xe2000009, 0x1b80001f,
	0x20000300, 0xa15d8405, 0xa2548409, 0xe2000009, 0x81fa8407, 0x81f80407,
	0x1b80001f, 0x20000004, 0x81f88407, 0x1b80001f, 0x20000004, 0x80370400,
	0x80310400, 0x1b80001f, 0x20000004, 0xe8208000, 0x102111a4, 0x0ffffffc,
	0xe8208000, 0x102121a4, 0x0ffffffc, 0x1b80001f, 0x2000001a, 0x80368400,
	0x81fa0407, 0x82aab401, 0xa156a805, 0x81f08407, 0x821a840d, 0xd8001e88,
	0x17c07c1f, 0xa15c8405, 0xe8208000, 0x10006354, 0xfffff421, 0x82059801,
	0xd8002028, 0x17c07c1f, 0xe8208000, 0x10006354, 0xfffff423, 0xa1df0407,
	0xc2803a80, 0x1291041f, 0x1b00001f, 0xbfffc7ff, 0xf0000000, 0x17c07c1f,
	0x1a40001f, 0x10006c2c, 0x1a10001f, 0x10006c2c, 0x02000408, 0xe2400008,
	0x1a50001f, 0x10006608, 0x820ba401, 0x8217a00d, 0xd82024a8, 0x17c07c1f,
	0x81f08407, 0xe8208000, 0x10006354, 0xfffff421, 0xa1df0407, 0x1b00001f,
	0x3fffc7ff, 0x1b80001f, 0x20000004, 0xd8002bec, 0x17c07c1f, 0x1b00001f,
	0xbfffc7ff, 0x1b80001f, 0x20000004, 0xd8002bec, 0x17c07c1f, 0x82831801,
	0xd8002aea, 0x17c07c1f, 0x81ff0407, 0xc0c03060, 0x17c07c1f, 0xd8002283,
	0x17c07c1f, 0xa1da0407, 0xa0170400, 0xa0168400, 0xe8208000, 0x102111a4,
	0x0ffffff8, 0xe8208000, 0x102121a4, 0x0ffffff8, 0xa0110400, 0xa1d88407,
	0xa1d80407, 0xa1da8407, 0x1a00001f, 0x10006c60, 0x1a700008, 0x17c07c1f,
	0x82748409, 0xe2000009, 0xa15c0405, 0x1ad0001f, 0x10006b00, 0x82d1840b,
	0xd800282b, 0x17c07c1f, 0x82839801, 0xd8002aea, 0x17c07c1f, 0x1a00001f,
	0x10006c60, 0x82740409, 0xe2000009, 0x18c0001f, 0x10006240, 0xc0c02fc0,
	0x17c07c1f, 0xa15d0405, 0x1ad0001f, 0x10006b00, 0x82d2040b, 0xd8002a4b,
	0x17c07c1f, 0x82041801, 0xd8002b68, 0x17c07c1f, 0xa1d30407, 0xc2803a80,
	0x1291841f, 0x1b00001f, 0x7fffd7ff, 0xf0000000, 0x17c07c1f, 0xe0f07f16,
	0x1380201f, 0xe0f07f1e, 0x1380201f, 0xe0f07f0e, 0x1b80001f, 0x20000100,
	0xe0f07f0c, 0xe0f07f0d, 0xe0f07e0d, 0xf0000000, 0x17c07c1f, 0xe0f07f0d,
	0xe0f07f0f, 0xe0f07f1e, 0xe0f07f12, 0x1b80001f, 0x2000000a, 0xf0000000,
	0x17c07c1f, 0xe0e00016, 0x1380201f, 0xe0e0001e, 0x1380201f, 0xe0e0000e,
	0xe0e0000c, 0xe0e0000d, 0xf0000000, 0x17c07c1f, 0xe0e0000f, 0xe0e0001e,
	0xe0e00012, 0xf0000000, 0x17c07c1f, 0x1212841f, 0xa1d08407, 0xd8203128,
	0x80eab401, 0xd80030a3, 0x02200408, 0x1a00001f, 0x10006814, 0xe2000003,
	0xf0000000, 0x17c07c1f, 0xa1d00407, 0x1211041f, 0x02200408, 0x1b80001f,
	0x20000104, 0x80ca3401, 0xd8003363, 0x17c07c1f, 0xd8003208, 0x17c07c1f,
	0x1a00001f, 0x10006814, 0xe2000001, 0xf0000000, 0x17c07c1f, 0xd800346a,
	0x17c07c1f, 0xe2e00036, 0xe2e0003e, 0x1380201f, 0xe2e0003c, 0xd82035aa,
	0x17c07c1f, 0x1b80001f, 0x20000018, 0xe2e0007c, 0x1b80001f, 0x20000003,
	0xe2e0005c, 0xe2e0004c, 0xe2e0004d, 0xf0000000, 0x17c07c1f, 0xa1d40407,
	0x1391841f, 0xf0000000, 0x17c07c1f, 0xd800370a, 0x17c07c1f, 0xe2e0004f,
	0xe2e0006f, 0xe2e0002f, 0xd82037aa, 0x17c07c1f, 0xe2e0002e, 0xe2e0003e,
	0xe2e00032, 0xf0000000, 0x17c07c1f, 0x82481801, 0xd82038c9, 0x17c07c1f,
	0x1b80001f, 0x20000050, 0xd8003969, 0x17c07c1f, 0x18d0001f, 0x10006604,
	0x10cf8c1f, 0xd82037e3, 0x17c07c1f, 0xf0000000, 0x17c07c1f, 0x1ad0001f,
	0x10006b00, 0x82c0280b, 0xd80039ab, 0x17c07c1f, 0xf0000000, 0x17c07c1f,
	0x1a00001f, 0x10006b18, 0x1a50001f, 0x10006b18, 0xa2402809, 0xe2000009,
	0xf0000000, 0x17c07c1f, 0xe2200000, 0x1a700008, 0x17c07c1f, 0x17c07c1f,
	0x82482401, 0xd8003ba9, 0x17c07c1f, 0xf0000000, 0x17c07c1f, 0xe2200004,
	0x1a700008, 0x17c07c1f, 0x17c07c1f, 0x82482401, 0xd8203cc9, 0x17c07c1f,
	0xf0000000, 0x17c07c1f, 0xe220004f, 0xe220000f, 0xe220002f, 0xe220002e,
	0xe220003e, 0xe2200032, 0xf0000000, 0x17c07c1f, 0xe2200036, 0x1a50001f,
	0x1000660c, 0x82400809, 0xd8203ee9, 0x17c07c1f, 0xe220003e, 0x1a50001f,
	0x10006610, 0x82400809, 0xd8203fa9, 0x17c07c1f, 0xe220007e, 0xe220007c,
	0xe220005c, 0xe220004c, 0xe220004d, 0xf0000000, 0x17c07c1f, 0xc7c03dc0,
	0x17c07c1f, 0xe2400001, 0x1259081f, 0x1a10001f, 0x1000660c, 0x82002408,
	0xd82041a8, 0x17c07c1f, 0x1a10001f, 0x10006c60, 0xa2002808, 0x1a40001f,
	0x10006c60, 0xe2400008, 0xf0000000, 0x17c07c1f, 0xc7c03dc0, 0x17c07c1f,
	0xd800450a, 0x1254041f, 0xe8208000, 0x10006248, 0x00000000, 0x1a10001f,
	0x10006248, 0x82002408, 0xd8004428, 0x17c07c1f, 0xf0000000, 0x17c07c1f,
	0xe8208000, 0x10006244, 0x00000001, 0x1a10001f, 0x10006244, 0x82002408,
	0xd8204568, 0x17c07c1f, 0xf0000000, 0x17c07c1f, 0x18d0001f, 0x10006c60,
	0x82800c0a, 0x18c0001f, 0x10006c60, 0xe0c0000a, 0xe240001f, 0x1259081f,
	0x1a90001f, 0x1000660c, 0x82802809, 0xd800474a, 0x17c07c1f, 0xc7c03ec0,
	0x17c07c1f, 0xf0000000, 0x17c07c1f, 0xd80049ea, 0x1254041f, 0xe8208000,
	0x10006248, 0x00000001, 0x1a90001f, 0x10006248, 0x8280240a, 0xd820490a,
	0x17c07c1f, 0xd0004ae0, 0x17c07c1f, 0xe8208000, 0x10006244, 0x00000000,
	0x1a90001f, 0x10006244, 0x8280240a, 0xd8004a4a, 0x17c07c1f, 0xc7c03ec0,
	0x17c07c1f, 0xf0000000, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f,
	0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f,
	0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f,
	0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f,
	0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f,
	0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f,
	0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f,
	0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f,
	0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f,
	0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f,
	0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f,
	0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f,
	0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f,
	0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f,
	0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f,
	0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f,
	0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f,
	0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f,
	0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f,
	0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f,
	0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f,
	0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f,
	0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f,
	0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f,
	0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f,
	0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f,
	0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f,
	0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f,
	0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f,
	0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f,
	0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f,
	0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f,
	0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f,
	0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f,
	0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f,
	0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f,
	0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f,
	0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f,
	0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f,
	0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f,
	0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f,
	0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f,
	0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f,
	0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f,
	0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f,
	0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f,
	0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f,
	0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f,
	0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f,
	0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f,
	0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f,
	0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f,
	0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f,
	0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f,
	0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f,
	0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f,
	0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f,
	0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f,
	0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f,
	0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f,
	0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f,
	0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f,
	0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f,
	0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f,
	0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f,
	0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f,
	0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f,
	0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f,
	0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f,
	0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f,
	0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x17c07c1f, 0x1840001f, 0x00000001,
	0xe8208000, 0x10006b18, 0x00000000, 0xe8208000, 0x10006c00, 0x00000000,
	0x11407c1f, 0x1a10001f, 0x1000660c, 0x8166a001, 0x82662001, 0xa150a405,
	0x8265a001, 0xa1512405, 0x82652001, 0xa151a405, 0x8264a001, 0xa1562405,
	0x1990001f, 0x10006b08, 0x82089801, 0xd800a6e8, 0x17c07c1f, 0xd000a320,
	0x17c07c1f, 0x1100241f, 0x1b00001f, 0x3ffec6fd, 0x82461401, 0xd8008d29,
	0x17c07c1f, 0x1a10001f, 0x10006720, 0x82002001, 0x82201408, 0x82201008,
	0xd82085a8, 0x17c07c1f, 0x1a00001f, 0x10006c40, 0xc7c03b80, 0x17c07c1f,
	0xa1400405, 0x1a10001f, 0x10006720, 0x8200a001, 0x82209408, 0x82209008,
	0xd8208728, 0x17c07c1f, 0x1a00001f, 0x10006c44, 0xc7c03b80, 0x17c07c1f,
	0xa1508405, 0x1a10001f, 0x10006720, 0x82012001, 0x82211408, 0x82211008,
	0xd82088a8, 0x17c07c1f, 0x1a00001f, 0x10006c48, 0xc7c03b80, 0x17c07c1f,
	0xa1510405, 0x1a10001f, 0x10006720, 0x8201a001, 0x82219408, 0x82219008,
	0xd8208a28, 0x17c07c1f, 0x1a00001f, 0x10006c4c, 0xc7c03b80, 0x17c07c1f,
	0xa1518405, 0xa260141f, 0x8a400009, 0x0000000f, 0xd8008d29, 0x17c07c1f,
	0x82661401, 0x82661009, 0xd8208d29, 0x17c07c1f, 0x1a50001f, 0x10006720,
	0x828c2401, 0xd8208b4a, 0x17c07c1f, 0x1a00001f, 0x10006c50, 0xe8208000,
	0x10006c54, 0x00000001, 0xc7c03b80, 0x17c07c1f, 0xa1560405, 0x1b80001f,
	0x90100000, 0x82261401, 0xd8008ee8, 0x17c07c1f, 0x8a000004, 0x0000100f,
	0xd8008e48, 0x17c07c1f, 0xd8208eec, 0x17c07c1f, 0x1a00001f, 0x10006c50,
	0xc7c03ca0, 0x17c07c1f, 0x81760405, 0x82461401, 0xd800a269, 0x17c07c1f,
	0x82001401, 0xd82093c8, 0x17c07c1f, 0x82401001, 0xd8009109, 0x17c07c1f,
	0x8a40000c, 0x07fde7ff, 0x1a10001f, 0x10006918, 0x822e2001, 0xa2402009,
	0xd82093c9, 0x17c07c1f, 0x1a40001f, 0x10006c24, 0x1a10001f, 0x10006918,
	0x8a000008, 0xf0000000, 0xa2003008, 0xe2400008, 0x1a00001f, 0x10006c40,
	0xc7c03ca0, 0x17c07c1f, 0x81600405, 0xe8208000, 0x10006f00, 0x00000000,
	0xe8208000, 0x10006b30, 0x00000000, 0xe8208000, 0x100063e0, 0x00000001,
	0x82009401, 0xd82098a8, 0x17c07c1f, 0x82409001, 0xd80095e9, 0x17c07c1f,
	0x824db001, 0x1a10001f, 0x10006918, 0x822ea001, 0xa2402009, 0x1a90001f,
	0x10006b04, 0x82a0a801, 0xb24c312a, 0xd82098a9, 0x17c07c1f, 0x1a40001f,
	0x10006c28, 0x1a10001f, 0x10006918, 0x8a000008, 0xf0000000, 0xa2003008,
	0xe2400008, 0x1a00001f, 0x10006c44, 0xc7c03ca0, 0x17c07c1f, 0x81708405,
	0xe8208000, 0x10006f04, 0x00000000, 0xe8208000, 0x10006b34, 0x00000000,
	0xe8208000, 0x100063e0, 0x00000002, 0x82011401, 0xd8209d88, 0x17c07c1f,
	0x82411001, 0xd8009ac9, 0x17c07c1f, 0x824e3001, 0x1a10001f, 0x10006918,
	0x822f2001, 0xa2402009, 0x1a90001f, 0x10006b04, 0x82a12801, 0xb24c312a,
	0xd8209d89, 0x17c07c1f, 0x1a40001f, 0x10006c2c, 0x1a10001f, 0x10006918,
	0x8a000008, 0xf0000000, 0xa2003008, 0xe2400008, 0x1a00001f, 0x10006c48,
	0xc7c03ca0, 0x17c07c1f, 0x81710405, 0xe8208000, 0x10006f08, 0x00000000,
	0xe8208000, 0x10006b38, 0x00000000, 0xe8208000, 0x100063e0, 0x00000004,
	0x82019401, 0xd820a268, 0x17c07c1f, 0x82419001, 0xd8009fa9, 0x17c07c1f,
	0x824eb001, 0x1a10001f, 0x10006918, 0x822fa001, 0xa2402009, 0x1a90001f,
	0x10006b04, 0x82a1a801, 0xb24c312a, 0xd820a269, 0x17c07c1f, 0x1a40001f,
	0x10006c30, 0x1a10001f, 0x10006918, 0x8a000008, 0xf0000000, 0xa2003008,
	0xe2400008, 0x1a00001f, 0x10006c4c, 0xc7c03ca0, 0x17c07c1f, 0x81718405,
	0xe8208000, 0x10006f0c, 0x00000000, 0xe8208000, 0x10006b3c, 0x00000000,
	0xe8208000, 0x100063e0, 0x00000008, 0x8a000004, 0xffff0000, 0x6aa00008,
	0xabcd0000, 0xd800a62a, 0x17c07c1f, 0x1a50001f, 0x10006b00, 0x8a000009,
	0xffff0000, 0x6aa00008, 0xbeef0000, 0xd800836a, 0x17c07c1f, 0x6aa00008,
	0xabcd0000, 0xd800836a, 0x17c07c1f, 0x6aa00008, 0x50d10000, 0xd800a6ea,
	0x17c07c1f, 0x6aa00008, 0xdcba0000, 0xd800a62a, 0x1100241f, 0x1b80001f,
	0x20000104, 0xd000a320, 0x17c07c1f, 0x8a000004, 0xffff0000, 0xa9000008,
	0x0000dead, 0xf0000000, 0x17c07c1f, 0xa1d50407, 0x1b80001f, 0x2000037e,
	0x81f50407, 0xa1d48407, 0x1990001f, 0x10006b08, 0xe8208000, 0x10006b18,
	0x00000000, 0x11407c1f, 0x1b00001f, 0x3fffc7ff, 0x1b80001f, 0xd00f0000,
	0xd800c9ec, 0x17c07c1f, 0xa1578405, 0xe8208000, 0x10006354, 0xfffff423,
	0x82059801, 0xd820aa48, 0x17c07c1f, 0xe8208000, 0x10006354, 0xfffff421,
	0x1b80001f, 0x20000020, 0x82801801, 0xd800afca, 0x17c07c1f, 0x81f60407,
	0x1a00001f, 0x10006c40, 0xc7c03b80, 0x17c07c1f, 0xa1580405, 0xc20039a0,
	0x1290041f, 0xa1d10407, 0x82809801, 0xd800afca, 0x17c07c1f, 0x1a00001f,
	0x10006c54, 0x82a11801, 0xe200000a, 0x1a00001f, 0x10006c50, 0xc7c03b80,
	0x17c07c1f, 0xa1590405, 0xc20039a0, 0x1290841f, 0x82819801, 0xd800afca,
	0x17c07c1f, 0x1a00001f, 0x10006290, 0xc2003dc0, 0x17c07c1f, 0x1b80001f,
	0x20000027, 0x82811801, 0xa1d1a807, 0xa15a0405, 0xc20039a0, 0x1291041f,
	0xc2803a80, 0x1292041f, 0x82499801, 0xd800b149, 0x17c07c1f, 0x1a00001f,
	0x10006294, 0xe8208000, 0x10006294, 0x0003ffff, 0xe2203fff, 0xe22003ff,
	0xd000b1a0, 0x17c07c1f, 0xe8208000, 0x10006294, 0x0003fc3f, 0xc20039a0,
	0x1293041f, 0x82021801, 0xd800b3a8, 0x17c07c1f, 0x1a10001f, 0x10000004,
	0x1a40001f, 0x10000004, 0x82378408, 0xe2400008, 0x1b80001f, 0x2000000a,
	0xa1d40407, 0x1b80001f, 0x20000003, 0x82049801, 0xd800b4c8, 0x17c07c1f,
	0xe8208000, 0x10006604, 0x00000001, 0xc0c037e0, 0x17c07c1f, 0xa15b0405,
	0x82879801, 0xd800b86a, 0x17c07c1f, 0xa1d38407, 0x82829801, 0xd800b5ca,
	0x17c07c1f, 0xa1d98407, 0xa0108400, 0xa0148400, 0xa0188400, 0x82829801,
	0xd800b86a, 0x17c07c1f, 0xa0120400, 0xa0150400, 0xa0158400, 0xa01f0400,
	0xa0190400, 0xa0198400, 0x82891801, 0xd800b86a, 0x17c07c1f, 0x1a10001f,
	0x10018000, 0x82398408, 0x1a40001f, 0x10018000, 0xe2400008, 0xe8208000,
	0x10006310, 0x0b160008, 0xe8208000, 0x10006c00, 0x0000000f, 0x1b00001f,
	0xbfffc7ff, 0x82861801, 0xb2859941, 0xd820baca, 0x17c07c1f, 0xe8208000,
	0x10006c00, 0x0000003c, 0x1b80001f, 0x90100000, 0xd000bba0, 0x17c07c1f,
	0x1b80001f, 0x90100000, 0x82000001, 0xc8c00008, 0x17c07c1f, 0xd000bc00,
	0x17c07c1f, 0x82028001, 0xc8c01568, 0x17c07c1f, 0x820f1c01, 0xc8e01868,
	0x17c07c1f, 0x1b00001f, 0x3fffc7ff, 0x82499801, 0xd800be49, 0x17c07c1f,
	0x1a00001f, 0x10006294, 0xe22007fe, 0xe2200ffc, 0xe2201ff8, 0xe2203ff0,
	0xe2203fe0, 0xe2203fc0, 0xd000c080, 0x17c07c1f, 0xe8208000, 0x10006294,
	0x0003fc1f, 0xe8208000, 0x10006294, 0x0003fc0f, 0xe8208000, 0x10006294,
	0x0003fc0e, 0xe8208000, 0x10006294, 0x0003fc0c, 0xe8208000, 0x10006294,
	0x0003fc08, 0xe8208000, 0x10006294, 0x0003fc00, 0x1b80001f, 0x20000020,
	0xe8208000, 0x10006294, 0x0003ffc0, 0xe8208000, 0x10006294, 0x0003fc00,
	0x82049801, 0xd800c2a8, 0x17c07c1f, 0xe8208000, 0x10006604, 0x00000000,
	0xc0c037e0, 0x17c07c1f, 0xa15b8405, 0x82891801, 0xd800c40a, 0x17c07c1f,
	0x1a10001f, 0x10018000, 0xa2198408, 0x1a40001f, 0x10018000, 0xe2400008,
	0x1b80001f, 0x2000001a, 0x80388400, 0x80390400, 0x80398400, 0x803f0400,
	0x1b80001f, 0x20000300, 0x80348400, 0x80350400, 0x80358400, 0x1b80001f,
	0x20000104, 0x10007c1f, 0x81f38407, 0x81f98407, 0x81f40407, 0x82801801,
	0xd800c9ea, 0x17c07c1f, 0x82809801, 0xd800c88a, 0x17c07c1f, 0x82819801,
	0xd800c7ea, 0x17c07c1f, 0x82811801, 0x81f1a807, 0x1a00001f, 0x10006290,
	0xc2003ec0, 0x1097841f, 0xa15a8405, 0x1a00001f, 0x10006c50, 0xc7c03ca0,
	0x17c07c1f, 0xa1598405, 0x1a00001f, 0x10006c40, 0xc7c03ca0, 0x17c07c1f,
	0xa1588405, 0x1a10001f, 0x10000004, 0x1a40001f, 0x10000004, 0xa2178408,
	0xe2400008, 0x82079401, 0xd800cc28, 0x17c07c1f, 0x82001801, 0xd800cc28,
	0x17c07c1f, 0xa1570405, 0x13007c1f, 0x1b80001f, 0xd00f0000, 0x1a00001f,
	0x10006c40, 0xc7c03b80, 0x17c07c1f, 0x1a00001f, 0x10006c40, 0xc7c03ca0,
	0x17c07c1f, 0xa1db0407, 0x81f10407, 0xa1d60407, 0x81f48407, 0xe8208000,
	0x10006b00, 0x00000000, 0x1ac0001f, 0x55aa55aa, 0x82289801, 0xd800a328,
	0x17c07c1f, 0xf0000000, 0x17c07c1f
};

/*
 * PCM binary for suspend scenario
 */
static const struct pcm_desc suspend_pcm_ca7 = {
	.version	= "SPM_FW_v0.1_6SPMC",
	.base		= suspend_binary_ca7,
	.size		= 1647,
	.sess		= 2,
	.replace	= 0,
	.vec0		= EVENT_VEC(11, 1, 0, 0),	/* FUNC_26M_WAKEUP */
	.vec1		= EVENT_VEC(12, 1, 0, 131),	/* FUNC_26M_SLEEP */
	.vec2		= EVENT_VEC(30, 1, 0, 195),	/* FUNC_APSRC_WAKEUP */
	.vec3		= EVENT_VEC(31, 1, 0, 264),	/* FUNC_APSRC_SLEEP */
	.vec4		= EVENT_VEC(11, 1, 0, 171),	/* FUNC_26MIDLE_WAKEUP */
	.vec5		= EVENT_VEC(12, 1, 0, 181),	/* FUNC_26MIDLE_SLEEP */
};

/*
 * SPM settings for suspend scenario
 */
static struct pwr_ctrl spm_ctrl = {
	.wake_src = WAKE_SRC_FOR_SUSPEND,
	.timer_val = 600,
	.r0_ctrl_en = 1,
	.r7_ctrl_en = 1,
	.infra_dcm_lock = 1,
	.wfi_op = WFI_OP_AND,
	.ca7top_idle_mask = 0,
	.ca15top_idle_mask = 1,
	.mcusys_idle_mask = 0,
	.disp0_req_mask = 0,
	.mfg_req_mask = 0,
	.srclkenai_mask = 1,
	.ca7_wfi0_en = 1,
	.ca7_wfi1_en = 1,
	.ca7_wfi2_en = 1,
	.ca7_wfi3_en = 1,
	.ca15_wfi0_en = 0,
	.ca15_wfi1_en = 0,
	.ca15_wfi2_en = 0,
	.ca15_wfi3_en = 0,
};

/*
 * go_to_sleep_before_wfi() - trigger SPM to enter suspend scenario
 */
static void go_to_sleep_before_wfi(const unsigned int spm_flags)
{
	struct pwr_ctrl *pwrctrl;

	struct wake_status wakesta;
	spm_get_wakeup_status(&wakesta);
	spm_output_wake_reason(&wakesta);
	pwrctrl = &spm_ctrl;

	set_pwrctrl_pcm_flags(pwrctrl, spm_flags);

	spm_set_sysclk_settle();

	INFO("sec = %u, wakesrc = 0x%x (%u)(%u)\n",
	     pwrctrl->timer_val, pwrctrl->wake_src,
	     is_cpu_pdn(pwrctrl->pcm_flags),
	     is_infra_pdn(pwrctrl->pcm_flags));

	spm_reset_and_init_pcm();
	spm_kick_im_to_fetch(&suspend_pcm_ca7);
	spm_init_pcm_register();
	spm_init_event_vector(&suspend_pcm_ca7);
	spm_write(SPM_PCM_MAS_PAUSE_MASK, 0xffffffff);
	spm_write(SPM_PCM_REG_DATA_INI, 0);
	spm_write(SPM_PCM_PWR_IO_EN, PCM_PWRIO_EN_R0 | PCM_PWRIO_EN_R7);

	uint32_t con0 = spm_read(SPM_PCM_CON0) & ~(CON0_IM_KICK | CON0_PCM_KICK);
	spm_write(SPM_PCM_CON0, con0 | CON0_CFG_KEY | CON0_PCM_KICK);
	spm_write(SPM_PCM_CON0, con0 | CON0_CFG_KEY);

	spm_set_power_control(pwrctrl);
	pwrctrl->timer_val = pwrctrl->timer_val * 32768;
	spm_set_wakeup_event(pwrctrl);
	spm_kick_pcm_to_run(pwrctrl);

	spm_write(SPM_PCM_RESERVE, (spm_read(SPM_PCM_RESERVE) & ~PCM_CMD_MASK) | PCM_CMD_SUSPEND_PCM);
}

/*
 * go_to_sleep_after_wfi() - get wakeup reason after
 * leaving suspend scenario and clean up SPM settings
 */
static enum wake_reason_t go_to_sleep_after_wfi(void)
{
	struct wake_status wakesta;
	static enum wake_reason_t last_wr = WR_NONE;

	spm_get_wakeup_status(&wakesta);
	spm_clean_after_wakeup();
	last_wr = spm_output_wake_reason(&wakesta);

	return last_wr;
}

void spm_system_suspend(void)
{
	spm_lock_get();
	go_to_sleep_before_wfi(spm_flags);
	set_suspend_ready();
	spm_lock_release();
}

void spm_system_suspend_finish(void)
{
	spm_lock_get();
	spm_wake_reason = go_to_sleep_after_wfi();
	INFO("spm_wake_reason=%d\n", spm_wake_reason);
	clear_all_ready();
	spm_lock_release();
}
