pro3_control_panel/base/device_info.py
2025-12-15 09:23:52 +08:00

43 lines
1.2 KiB
Python

#! /usr/bin/env python
# -*- coding: utf-8 -*-
# Copyright (c) 2024 Realtek Semiconductor Corp.
# SPDX-License-Identifier: Apache-2.0
from .rtk_flash_type import *
from .memory_info import *
class DeviceInfo(object):
def __init__(self):
self.did = 0
self.image_type = 0
self.cmd_set_version = 0
self.wifi_mac = None
self.memory_type = None
self.flash_mid = None
self.flash_did = None
self.flash_mfg = ""
self.flash_model = ""
self.flash_page_size = 0
self.flash_oob_size = 0
self.flash_pages_per_block = 0
self.flash_blocks_per_lun = 0
self.flash_luns_per_target = None
self.flash_max_bad_block_per_lun = 0
self.flash_req_host_ecc_level = None
self.flash_targets = None
self.flash_capacity = 0
def get_wifi_mac_text(self):
mac_list = []
for chr in self.wifi_mac:
mac_list.append(hex(chr)[2:].zfill(2).upper())
return ":".join(mac_list)
def flash_block_size(self):
return self.flash_page_size * self.flash_pages_per_block
def is_boot_from_nand(self):
return self.memory_type == MemoryInfo.MEMORY_TYPE_NAND