10cc16201SJason Zhu /* SPDX-License-Identifier: GPL-2.0+ */ 20cc16201SJason Zhu /* 30cc16201SJason Zhu * (C) Copyright 2019 Rockchip Electronics Co., Ltd 40cc16201SJason Zhu */ 50cc16201SJason Zhu 60cc16201SJason Zhu #ifndef _SPL_AB_H_ 70cc16201SJason Zhu #define _SPL_AB_H_ 80cc16201SJason Zhu 90cc16201SJason Zhu #include <android_avb/libavb_ab.h> 100cc16201SJason Zhu #include <android_avb/avb_ab_flow.h> 110cc16201SJason Zhu 120cc16201SJason Zhu #define AB_METADATA_OFFSET 4 130cc16201SJason Zhu 140cc16201SJason Zhu /* 150cc16201SJason Zhu * spl_get_current_slot 160cc16201SJason Zhu * 170cc16201SJason Zhu * @dev_desc: block description 180cc16201SJason Zhu * @partition: partition name 190cc16201SJason Zhu * @slot: A/B slot 200cc16201SJason Zhu * 210cc16201SJason Zhu * return: 0 success, others fail. 220cc16201SJason Zhu */ 230cc16201SJason Zhu int spl_get_current_slot(struct blk_desc *dev_desc, char *partition, 240cc16201SJason Zhu char *slot); 250cc16201SJason Zhu 260cc16201SJason Zhu /* 27*1e33e3cbSJason Zhu * spl_ab_append_part_slot 280cc16201SJason Zhu * 290cc16201SJason Zhu * @dev_desc: block description 30*1e33e3cbSJason Zhu * @part_name: partition name 31*1e33e3cbSJason Zhu * @new_name: append the slot suffix 32*1e33e3cbSJason Zhu * 33*1e33e3cbSJason Zhu * return: 0 success, others fail. 340cc16201SJason Zhu */ 35*1e33e3cbSJason Zhu int spl_ab_append_part_slot(struct blk_desc *dev_desc, 36*1e33e3cbSJason Zhu const char *part_name, 37*1e33e3cbSJason Zhu char *new_name); 380cc16201SJason Zhu 390cc16201SJason Zhu #endif 40