Commit b6fc25e0 authored by danh-arm's avatar danh-arm
Browse files

Merge pull request #541 from antonio-nino-diaz-arm/an/secondary-cpu-init

Initialize secondary CPUs during cold boot
parents 5e3120d1 4e85e4fd
docs/diagrams/default_reset_code.png

58.6 KB | W: | H:

docs/diagrams/default_reset_code.png

40.8 KB | W: | H:

docs/diagrams/default_reset_code.png
docs/diagrams/default_reset_code.png
docs/diagrams/default_reset_code.png
docs/diagrams/default_reset_code.png
  • 2-up
  • Swipe
  • Onion skin
/* /*
* Copyright (c) 2015, ARM Limited and Contributors. All rights reserved. * Copyright (c) 2015-2016, ARM Limited and Contributors. All rights reserved.
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met: * modification, are permitted provided that the following conditions are met:
...@@ -171,9 +171,19 @@ ...@@ -171,9 +171,19 @@
do_cold_boot: do_cold_boot:
.endif /* _warm_boot_mailbox */ .endif /* _warm_boot_mailbox */
/* ---------------------------------------------------------------------
* It is a cold boot.
* Perform any processor specific actions upon reset e.g. cache, TLB
* invalidations etc.
* ---------------------------------------------------------------------
*/
bl reset_handler
el3_arch_init_common \_exception_vectors
.if \_secondary_cold_boot .if \_secondary_cold_boot
/* ------------------------------------------------------------- /* -------------------------------------------------------------
* It is a cold boot. * Check if this is a primary or secondary CPU cold boot.
* The primary CPU will set up the platform while the * The primary CPU will set up the platform while the
* secondaries are placed in a platform-specific state until the * secondaries are placed in a platform-specific state until the
* primary CPU performs the necessary actions to bring them out * primary CPU performs the necessary actions to bring them out
...@@ -193,13 +203,10 @@ ...@@ -193,13 +203,10 @@
.endif /* _secondary_cold_boot */ .endif /* _secondary_cold_boot */
/* --------------------------------------------------------------------- /* ---------------------------------------------------------------------
* Perform any processor specific actions upon reset e.g. cache, TLB * Initialize memory now. Secondary CPU initialization won't get to this
* invalidations etc. * point.
* --------------------------------------------------------------------- * ---------------------------------------------------------------------
*/ */
bl reset_handler
el3_arch_init_common \_exception_vectors
.if \_init_memory .if \_init_memory
bl platform_mem_init bl platform_mem_init
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment