source: rtems/bsps/arm/xilinx-zynq/start/bspsmp.c @ 9964895

5
Last change on this file since 9964895 was 9964895, checked in by Sebastian Huber <sebastian.huber@…>, on 04/20/18 at 08:35:35

bsps: Move startup files to bsps

Adjust build support files to new directory layout.

This patch is a part of the BSP source reorganization.

Update #3285.

  • Property mode set to 100644
File size: 1.0 KB
Line 
1/*
2 * Copyright (c) 2014 embedded brains GmbH.  All rights reserved.
3 *
4 *  embedded brains GmbH
5 *  Dornierstr. 4
6 *  82178 Puchheim
7 *  Germany
8 *  <info@embedded-brains.de>
9 *
10 * The license and distribution terms for this file may be
11 * found in the file LICENSE in this distribution or at
12 * http://www.rtems.org/license/LICENSE.
13 */
14
15#include <rtems/score/smpimpl.h>
16
17#include <bsp/start.h>
18
19bool _CPU_SMP_Start_processor(uint32_t cpu_index)
20{
21  /*
22   * Enable the second CPU.
23   */
24  if (cpu_index != 0) {
25    volatile uint32_t* const kick_address = (uint32_t*) 0xfffffff0UL;
26    _ARM_Data_synchronization_barrier();
27    _ARM_Instruction_synchronization_barrier();
28    *kick_address = (uint32_t) _start;
29    _ARM_Data_synchronization_barrier();
30    _ARM_Instruction_synchronization_barrier();
31    _ARM_Send_event();
32  }
33
34  /*
35   * Wait for secondary processor to complete its basic initialization so that
36   * we can enable the unified L2 cache.
37   */
38  return _Per_CPU_State_wait_for_non_initial_state(cpu_index, 0);
39}
Note: See TracBrowser for help on using the repository browser.