1/** 2 * \file 3 * \brief Driver for booting the Xeon Phi Coprocessor card on a Barrelfish Host 4 */ 5 6/* 7 * Copyright (c) 2014 ETH Zurich. 8 * All rights reserved. 9 * 10 * This file is distributed under the terms in the attached LICENSE file. 11 * If you do not find this file, copies can be found by writing to: 12 * ETH Zurich D-INFK, Universitaetsstrasse 6, CH-8092 Zurich. Attn: Systems Group. 13 */ 14 15#ifndef XEON_PHI_SERVICE_H_ 16#define XEON_PHI_SERVICE_H_ 17 18/** 19 * \brief initializes the service 20 * 21 * \param iref returns the iref of the initialized service 22 * 23 * \return SYS_ERR_OK on success 24 */ 25errval_t service_init(struct xeon_phi *phi); 26 27/** 28 * \brief registers the local service with the other Xeon Phi drivers 29 * in the topology 30 * 31 * \param phi pointer to the local card structure 32 * \param irefs the irefs of the other cards 33 * \param num the number of irefs in the array 34 */ 35errval_t service_register(struct xeon_phi *phi, 36 iref_t *irefs, 37 uint8_t num); 38 39/** 40 * \brief registers an intra card communication frame 41 * 42 * \param phi the local xeon phi card 43 * \param xphi_id target xeon phi id 44 * \param cap capability of the messaging frame 45 */ 46errval_t service_bootstrap(struct xeon_phi *phi, 47 uint8_t xphi_id, 48 struct capref frame); 49 50/** 51 * \brief starts the service request handling 52 */ 53errval_t service_start(struct xeon_phi *phi); 54 55#endif // XEON_PHI_SERVICE_H_ 56