162306a36Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0 */
262306a36Sopenharmony_ci#ifndef _PASEMI_PASEMI_H
362306a36Sopenharmony_ci#define _PASEMI_PASEMI_H
462306a36Sopenharmony_ci
562306a36Sopenharmony_ciextern time64_t pas_get_boot_time(void);
662306a36Sopenharmony_ciextern void pas_pci_init(void);
762306a36Sopenharmony_cistruct pci_dev;
862306a36Sopenharmony_ciextern void pas_pci_irq_fixup(struct pci_dev *dev);
962306a36Sopenharmony_ciextern void pas_pci_dma_dev_setup(struct pci_dev *dev);
1062306a36Sopenharmony_ci
1162306a36Sopenharmony_civoid __iomem *__init pasemi_pci_getcfgaddr(struct pci_dev *dev, int offset);
1262306a36Sopenharmony_ci
1362306a36Sopenharmony_ciextern void __init pasemi_map_registers(void);
1462306a36Sopenharmony_ci
1562306a36Sopenharmony_ci/* Power savings modes, implemented in asm */
1662306a36Sopenharmony_ciextern void idle_spin(void);
1762306a36Sopenharmony_ciextern void idle_doze(void);
1862306a36Sopenharmony_ci
1962306a36Sopenharmony_ci/* Restore astate to last set */
2062306a36Sopenharmony_ci#ifdef CONFIG_PPC_PASEMI_CPUFREQ
2162306a36Sopenharmony_ciextern int check_astate(void);
2262306a36Sopenharmony_ciextern void restore_astate(int cpu);
2362306a36Sopenharmony_ci#else
2462306a36Sopenharmony_cistatic inline int check_astate(void)
2562306a36Sopenharmony_ci{
2662306a36Sopenharmony_ci	/* Always return >0 so we never power save */
2762306a36Sopenharmony_ci	return 1;
2862306a36Sopenharmony_ci}
2962306a36Sopenharmony_cistatic inline void restore_astate(int cpu)
3062306a36Sopenharmony_ci{
3162306a36Sopenharmony_ci}
3262306a36Sopenharmony_ci#endif
3362306a36Sopenharmony_ci
3462306a36Sopenharmony_ciextern struct pci_controller_ops pasemi_pci_controller_ops;
3562306a36Sopenharmony_ci
3662306a36Sopenharmony_ci#endif /* _PASEMI_PASEMI_H */
37