blob: 6c9c509c4437c010e385623bd04ebe1feaa768a0 [file] [log] [blame]
Samuel Holland58032582017-08-12 04:07:39 -05001/*
2 * Copyright (c) 2017-2018, ARM Limited and Contributors. All rights reserved.
3 *
4 * SPDX-License-Identifier: BSD-3-Clause
5 */
6
Andre Przywara4ec1a232018-10-14 12:02:02 +01007#ifndef SUNXI_PRIVATE_H
8#define SUNXI_PRIVATE_H
Samuel Holland58032582017-08-12 04:07:39 -05009
10void sunxi_configure_mmu_el3(int flags);
Andre Przywara4ec1a232018-10-14 12:02:02 +010011
Samuel Holland333d66c2017-08-12 04:07:39 -050012void sunxi_cpu_on(unsigned int cluster, unsigned int core);
Andre Przywara4ec1a232018-10-14 12:02:02 +010013void sunxi_cpu_off(unsigned int cluster, unsigned int core);
Samuel Holland333d66c2017-08-12 04:07:39 -050014void sunxi_disable_secondary_cpus(unsigned int primary_cpu);
Andre Przywara4ec1a232018-10-14 12:02:02 +010015void __dead2 sunxi_power_down(void);
16
17int sunxi_pmic_setup(uint16_t socid);
18void sunxi_security_setup(void);
Samuel Holland58032582017-08-12 04:07:39 -050019
Andre Przywarac4143b72018-06-22 00:47:08 +010020uint16_t sunxi_read_soc_id(void);
Andre Przywara7020dca2018-10-14 12:03:23 +010021void sunxi_set_gpio_out(char port, int pin, bool level_high);
Andre Przywarad5ddf672018-10-14 22:13:53 +010022int sunxi_init_platform_r_twi(uint16_t socid, bool use_rsb);
Icenowy Zheng7c26b6e2018-07-21 20:41:12 +080023
Andre Przywara4ec1a232018-10-14 12:02:02 +010024#endif /* SUNXI_PRIVATE_H */