* @field coresight_regs IO-mapped virtual address of CoreSight debug register block.
* @field coresight_pa Physical address of CoreSight register block.
* @field coresight_len Length of CoreSight register block.
- * @field self_ipi_irq AIC IRQ vector for self IPI (cpuX->cpuX). 0 if unsupported.
- * @field other_ipi_irq AIC IRQ vector for other IPI (cpuX->cpuY). 0 if unsupported.
- * @field pmi_irq AIC IRQ vector for performance management IRQ. 0 if unsupported.
* @field die_cluster_id Cluster ID within the local die (EDT: die-cluster-id)
* @field cluster_core_id Core ID within the local cluster (EDT: cluster-core-id)
*/
vm_offset_t coresight_regs;
uint64_t coresight_pa;
uint64_t coresight_len;
- int self_ipi_irq;
- int other_ipi_irq;
- int pmi_irq;
unsigned int die_cluster_id;
unsigned int cluster_core_id;
} ml_topology_cpu_t;
void ml_init_lock_timeout(void);
+#if __arm64__
+uint64_t virtual_timeout_inflate_ns(unsigned int vti, uint64_t timeout);
+uint64_t virtual_timeout_inflate_abs(unsigned int vti, uint64_t timeout);
+#endif
+
boolean_t ml_delay_should_spin(uint64_t interval);
void ml_delay_on_yield(void);
#define MACHINE_MAX_OFFSET_DEVICE 0x08
#endif
+extern void ml_cpu_init_completed(void);
extern void ml_cpu_up(void);
extern void ml_cpu_down(void);
extern void ml_arm_sleep(void);