Skip to content

Commit

Permalink
esptool: Updates to keep compatibility get_chip_revision() API
Browse files Browse the repository at this point in the history
get_chip_revision - old ECO fromat version.
get_chip_full_revision - new format major * 100 + minor
  • Loading branch information
KonstantinKondrashov committed Mar 1, 2023
1 parent ac729f3 commit da035fa
Showing 1 changed file with 30 additions and 1 deletion.
31 changes: 30 additions & 1 deletion esptool.py
Original file line number Diff line number Diff line change
Expand Up @@ -1665,9 +1665,14 @@ def get_pkg_version(self):
pkg_version += ((word3 >> 2) & 0x1) << 3
return pkg_version

def get_chip_revision(self):
# Returns new version format based on major and minor versions
def get_chip_full_revision(self):
return self.get_major_chip_version() * 100 + self.get_minor_chip_version()

# Returns old version format (ECO number). Use the new one format get_chip_full_revision().
def get_chip_revision(self):
return self.get_major_chip_version()

def get_minor_chip_version(self):
return (self.read_efuse(5) >> 24) & 0x3

Expand Down Expand Up @@ -1895,6 +1900,10 @@ class ESP32S2ROM(ESP32ROM):
[0x40080000, 0x40800000, "IROM"],
[0x50000000, 0x50002000, "RTC_DATA"]]

# Returns old version format (ECO number). Use the new one format get_chip_full_revision().
def get_chip_revision(self):
return self.get_major_chip_version()

def get_pkg_version(self):
num_word = 4
return (self.read_reg(self.EFUSE_BLOCK1_ADDR + (4 * num_word)) >> 0) & 0x0F
Expand Down Expand Up @@ -2131,6 +2140,10 @@ class ESP32S3ROM(ESP32ROM):
[0x42000000, 0x42800000, "IROM"],
[0x50000000, 0x50002000, "RTC_DATA"]]

# Returns old version format (ECO number). Use the new one format get_chip_full_revision().
def get_chip_revision(self):
return self.get_minor_chip_version()

def get_pkg_version(self):
num_word = 3
return (self.read_reg(self.EFUSE_BLOCK1_ADDR + (4 * num_word)) >> 21) & 0x07
Expand Down Expand Up @@ -2348,6 +2361,10 @@ class ESP32C3ROM(ESP32ROM):
[0x50000000, 0x50002000, "RTC_DRAM"],
[0x600FE000, 0x60100000, "MEM_INTERNAL2"]]

# Returns old version format (ECO number). Use the new one format get_chip_full_revision().
def get_chip_revision(self):
return self.get_minor_chip_version()

def get_pkg_version(self):
num_word = 3
return (self.read_reg(self.EFUSE_BLOCK1_ADDR + (4 * num_word)) >> 21) & 0x07
Expand Down Expand Up @@ -2472,6 +2489,10 @@ class ESP32H2BETA1ROM(ESP32ROM):
'12m': 0x2,
}

# Returns old version format (ECO number). Use the new one format get_chip_full_revision().
def get_chip_revision(self):
return 0

def get_pkg_version(self):
num_word = 4
return (self.read_reg(self.EFUSE_BLOCK1_ADDR + (4 * num_word)) >> 0) & 0x07
Expand Down Expand Up @@ -2565,6 +2586,10 @@ class ESP32C2ROM(ESP32C3ROM):
'15m': 0x2,
}

# Returns old version format (ECO number). Use the new one format get_chip_full_revision().
def get_chip_revision(self):
return self.get_major_chip_version()

def get_pkg_version(self):
num_word = 1
return (self.read_reg(self.EFUSE_BLOCK2_ADDR + (4 * num_word)) >> 22) & 0x07
Expand Down Expand Up @@ -2601,6 +2626,10 @@ class ESP32C6BETAROM(ESP32C3ROM):

UART_DATE_REG_ADDR = 0x00000500

# Returns old version format (ECO number). Use the new one format get_chip_full_revision().
def get_chip_revision(self):
return 0

def get_pkg_version(self):
num_word = 3
return (self.read_reg(self.EFUSE_BLOCK1_ADDR + (4 * num_word)) >> 29) & 0x07
Expand Down

0 comments on commit da035fa

Please sign in to comment.