Lines Matching +full:efuse +full:- +full:size
1 // SPDX-License-Identifier: GPL-2.0 OR BSD-3-Clause
2 /* Copyright(c) 2018-2019 Realtek Corporation
8 #include "efuse.h"
31 /* efuse header format
37 * word_en: 4 bits each word. 0 -> write; 1 -> not write
43 u32 physical_size = rtwdev->efuse.physical_size; in rtw_dump_logical_efuse_map()
44 u32 protect_size = rtwdev->efuse.protect_size; in rtw_dump_logical_efuse_map()
45 u32 logical_size = rtwdev->efuse.logical_size; in rtw_dump_logical_efuse_map()
52 for (phy_idx = 0; phy_idx < physical_size - protect_size;) { in rtw_dump_logical_efuse_map()
59 /* 2-byte header format */ in rtw_dump_logical_efuse_map()
64 /* 1-byte header format */ in rtw_dump_logical_efuse_map()
75 if (phy_idx + 1 > physical_size - protect_size || in rtw_dump_logical_efuse_map()
77 return -EINVAL; in rtw_dump_logical_efuse_map()
89 const struct rtw_chip_info *chip = rtwdev->chip; in rtw_dump_physical_efuse_map()
90 u32 size = rtwdev->efuse.physical_size; in rtw_dump_physical_efuse_map() local
100 chip->ops->cfg_ldo25(rtwdev, false); in rtw_dump_physical_efuse_map()
104 for (addr = 0; addr < size; addr++) { in rtw_dump_physical_efuse_map()
113 if (--cnt == 0) in rtw_dump_physical_efuse_map()
114 return -EBUSY; in rtw_dump_physical_efuse_map()
148 const struct rtw_chip_info *chip = rtwdev->chip; in rtw_parse_efuse_map()
149 struct rtw_efuse *efuse = &rtwdev->efuse; in rtw_parse_efuse_map() local
150 u32 phy_size = efuse->physical_size; in rtw_parse_efuse_map()
151 u32 log_size = efuse->logical_size; in rtw_parse_efuse_map()
159 ret = -ENOMEM; in rtw_parse_efuse_map()
165 rtw_err(rtwdev, "failed to dump efuse physical map\n"); in rtw_parse_efuse_map()
172 rtw_err(rtwdev, "failed to dump efuse logical map\n"); in rtw_parse_efuse_map()
176 ret = chip->ops->read_efuse(rtwdev, log_map); in rtw_parse_efuse_map()
178 rtw_err(rtwdev, "failed to read efuse map\n"); in rtw_parse_efuse_map()