blob: b24635028ac41f2e624a2dbf9d1fdcef5c16d4fd [file] [log] [blame]
/*
* Copyright (c) 2024, Arm Limited. All rights reserved.
*
* SPDX-License-Identifier: BSD-3-Clause
*
*/
/***********{{utilities.donotedit_warning}}***********/
#include <stddef.h>
#include "ns_mailbox_client_id.h"
#include "tfm_peripherals_def.h"
/* Non-secure client ID range for Mailbox NS Agent IRQs */
const struct tfm_ns_mailbox_client_id_info ns_mailbox_client_id_info[] = {
{% for partition in partitions %}
{% if partition.manifest.ns_agent %}
{% if partition.manifest.irqs %}
/******** {{partition.manifest.name}} ********/
{% for irq in partition.manifest.irqs %}
{
{{"%-20s"|format(".source = ")}} {{"%10s"|format(irq.source)}},
{{"%-20s"|format(".client_id_base = ")}} {{"%10s"|format(irq.source + "_CLIENT_ID_BASE")}},
{{"%-20s"|format(".client_id_limit = ")}} {{"%10s"|format(irq.source + "_CLIENT_ID_LIMIT")}},
},
{% endfor %}
{% endif %}
{% endif %}
{% endfor %}
};
/*
* List of owners of non-secure client ID ranges.
* Each element in ns_mailbox_client_id_range_owner[] is the owner of the
* corresponding element in ns_mailbox_client_id_info[].
*/
{% for partition in partitions %}
{% if partition.manifest.ns_agent %}
{% set irq_count = partition.manifest.irqs|count %}
void *ns_mailbox_client_id_range_owner[{{irq_count}}] = {NULL};
{% endif %}
{% endfor %}