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