sunxi_private.h 936 Bytes
Newer Older
1
/*
2
 * Copyright (c) 2017-2021, ARM Limited and Contributors. All rights reserved.
3
4
5
6
 *
 * SPDX-License-Identifier: BSD-3-Clause
 */

7
8
#ifndef SUNXI_PRIVATE_H
#define SUNXI_PRIVATE_H
9

10
11
#include <lib/psci/psci.h>

12
void sunxi_configure_mmu_el3(int flags);
13

14
void sunxi_cpu_on(u_register_t mpidr);
15
16
void sunxi_cpu_power_off_others(void);
void sunxi_cpu_power_off_self(void);
17
void sunxi_power_down(void);
18

19
20
21
22
void sunxi_set_native_psci_ops(const plat_psci_ops_t **psci_ops);
int sunxi_set_scpi_psci_ops(const plat_psci_ops_t **psci_ops);
int sunxi_validate_ns_entrypoint(uintptr_t ns_entrypoint);

23
int sunxi_pmic_setup(uint16_t socid, const void *fdt);
Andre Przywara's avatar
Andre Przywara committed
24
25
void sunxi_security_setup(void);

26
uint16_t sunxi_read_soc_id(void);
27
void sunxi_set_gpio_out(char port, int pin, bool level_high);
28
int sunxi_init_platform_r_twi(uint16_t socid, bool use_rsb);
29
void sunxi_execute_arisc_code(uint32_t *code, size_t size, uint16_t param);
30

31
#endif /* SUNXI_PRIVATE_H */