1 /* SPDX-License-Identifier: GPL-2.0-or-later */ 2 3 #include <asm/neon.h> 4 5 extern const struct raid6_calls raid6_neonx1; 6 extern const struct raid6_calls raid6_neonx2; 7 extern const struct raid6_calls raid6_neonx4; 8 extern const struct raid6_calls raid6_neonx8; 9 extern const struct raid6_recov_calls raid6_recov_neon; 10 11 static __always_inline void __init arch_raid6_init(void) 12 { 13 raid6_algo_add_default(); 14 if (cpu_has_neon()) { 15 raid6_algo_add(&raid6_neonx1); 16 raid6_algo_add(&raid6_neonx2); 17 raid6_algo_add(&raid6_neonx4); 18 raid6_algo_add(&raid6_neonx8); 19 raid6_recov_algo_add(&raid6_recov_neon); 20 } 21 } 22