36#ifndef LIBBSP_POWERPC_QORIQ_INTERCOM_H
37#define LIBBSP_POWERPC_QORIQ_INTERCOM_H
56uint32_t qoriq_spin_lock(uint32_t *lock);
58void qoriq_spin_unlock(uint32_t *lock, uint32_t msr);
60#define INTERCOM_CORE_COUNT 2
62#define INTERCOM_SERVICE_COUNT 8
68 INTERCOM_TYPE_NETWORK,
69 INTERCOM_TYPE_CUSTOM_0,
70 INTERCOM_TYPE_CUSTOM_1,
71 INTERCOM_TYPE_CUSTOM_2,
72 INTERCOM_TYPE_CUSTOM_3,
73 INTERCOM_TYPE_CUSTOM_4
88 intercom_type type_index;
89 intercom_size size_index;
92 uint32_t cache_line_alignment [2];
98void qoriq_intercom_init(
void);
100void qoriq_intercom_start(
void);
102void qoriq_intercom_service_install(intercom_type type, intercom_service service,
void *arg);
104void qoriq_intercom_service_remove(intercom_type type);
106intercom_packet *qoriq_intercom_allocate_packet(intercom_type type, intercom_size size);
110static inline void qoriq_intercom_send_packet(
int destination_core,
intercom_packet *packet)
112 qoriq_intercom_send_packets(destination_core, packet, packet);
117static inline void qoriq_intercom_broadcast_packet(
intercom_packet *packet)
119 qoriq_intercom_broadcast_packets(packet, packet);
122void qoriq_intercom_send(
int destination_core, intercom_type type, intercom_size size,
const void *buf,
size_t n);
128#ifdef RTEMS_MULTIPROCESSING
129 extern rtems_mpci_table qoriq_intercom_mpci;
This header file provides the Chains API.
This header file defines the RTEMS Classic API.
This structure represents a chain node.
Definition: chain.h:78
Definition: intercom.h:83