1*0cc16201SJason Zhu /* SPDX-License-Identifier: GPL-2.0+ */ 2*0cc16201SJason Zhu /* 3*0cc16201SJason Zhu * (C) Copyright 2019 Rockchip Electronics Co., Ltd 4*0cc16201SJason Zhu */ 5*0cc16201SJason Zhu 6*0cc16201SJason Zhu #ifndef _SPL_AB_H_ 7*0cc16201SJason Zhu #define _SPL_AB_H_ 8*0cc16201SJason Zhu 9*0cc16201SJason Zhu #include <android_avb/libavb_ab.h> 10*0cc16201SJason Zhu #include <android_avb/avb_ab_flow.h> 11*0cc16201SJason Zhu 12*0cc16201SJason Zhu #define AB_METADATA_OFFSET 4 13*0cc16201SJason Zhu 14*0cc16201SJason Zhu /* 15*0cc16201SJason Zhu * spl_get_current_slot 16*0cc16201SJason Zhu * 17*0cc16201SJason Zhu * @dev_desc: block description 18*0cc16201SJason Zhu * @partition: partition name 19*0cc16201SJason Zhu * @slot: A/B slot 20*0cc16201SJason Zhu * 21*0cc16201SJason Zhu * return: 0 success, others fail. 22*0cc16201SJason Zhu */ 23*0cc16201SJason Zhu int spl_get_current_slot(struct blk_desc *dev_desc, char *partition, 24*0cc16201SJason Zhu char *slot); 25*0cc16201SJason Zhu 26*0cc16201SJason Zhu /* 27*0cc16201SJason Zhu * spl_get_partitions_sector 28*0cc16201SJason Zhu * 29*0cc16201SJason Zhu * @dev_desc: block description 30*0cc16201SJason Zhu * @partition: partition name 31*0cc16201SJason Zhu * @sectors: firmware load address 32*0cc16201SJason Zhu */ 33*0cc16201SJason Zhu int spl_get_partitions_sector(struct blk_desc *dev_desc, char *partition, 34*0cc16201SJason Zhu u32 *sectors); 35*0cc16201SJason Zhu 36*0cc16201SJason Zhu #endif 37