/*
 * Copyright 2020, Data61, CSIRO (ABN 41 687 119 230)
 *
 * SPDX-License-Identifier: GPL-2.0-only
 */

#pragma once

void scu_enable(void *_scu_base);
unsigned int scu_get_core_count(void *_scu_base);

