use stub JSON files from esptool.py v4.5.dev1-2-g32e801484

This commit is contained in:
Ivan Grokhotkov 2023-01-12 18:53:07 +01:00
parent ce8f8da11a
commit 1675f31c96
No known key found for this signature in database
GPG Key ID: 1E050E141B280628
16 changed files with 111 additions and 441 deletions

30
package-lock.json generated
View File

@ -16,6 +16,7 @@
"devDependencies": {
"@rollup/plugin-babel": "^6.0.2",
"@rollup/plugin-commonjs": "^23.0.2",
"@rollup/plugin-json": "^6.0.0",
"@rollup/plugin-node-resolve": "^15.0.1",
"@rollup/plugin-terser": "^0.1.0",
"@types/pako": "^2.0.0",
@ -708,6 +709,26 @@
"node": ">=10"
}
},
"node_modules/@rollup/plugin-json": {
"version": "6.0.0",
"resolved": "https://registry.npmjs.org/@rollup/plugin-json/-/plugin-json-6.0.0.tgz",
"integrity": "sha512-i/4C5Jrdr1XUarRhVu27EEwjt4GObltD7c+MkCIpO2QIbojw8MUs+CCTqOphQi3Qtg1FLmYt+l+6YeoIf51J7w==",
"dev": true,
"dependencies": {
"@rollup/pluginutils": "^5.0.1"
},
"engines": {
"node": ">=14.0.0"
},
"peerDependencies": {
"rollup": "^1.20.0||^2.0.0||^3.0.0"
},
"peerDependenciesMeta": {
"rollup": {
"optional": true
}
}
},
"node_modules/@rollup/plugin-node-resolve": {
"version": "15.0.1",
"resolved": "https://registry.npmjs.org/@rollup/plugin-node-resolve/-/plugin-node-resolve-15.0.1.tgz",
@ -4084,6 +4105,15 @@
}
}
},
"@rollup/plugin-json": {
"version": "6.0.0",
"resolved": "https://registry.npmjs.org/@rollup/plugin-json/-/plugin-json-6.0.0.tgz",
"integrity": "sha512-i/4C5Jrdr1XUarRhVu27EEwjt4GObltD7c+MkCIpO2QIbojw8MUs+CCTqOphQi3Qtg1FLmYt+l+6YeoIf51J7w==",
"dev": true,
"requires": {
"@rollup/pluginutils": "^5.0.1"
}
},
"@rollup/plugin-node-resolve": {
"version": "15.0.1",
"resolved": "https://registry.npmjs.org/@rollup/plugin-node-resolve/-/plugin-node-resolve-15.0.1.tgz",

View File

@ -11,7 +11,7 @@
"scripts": {
"build": "npm run clean && tsc",
"clean": "rimraf lib bundle.js",
"format": "prettier --write \"src/**/*.ts\" \"src/**/*.js\"",
"format": "prettier --write \"src/**/*.ts\"",
"lint": "eslint . --ext .ts",
"lintAndFix": "eslint . --ext .ts --fix",
"prepare": "npm run build",
@ -35,6 +35,7 @@
"devDependencies": {
"@rollup/plugin-babel": "^6.0.2",
"@rollup/plugin-commonjs": "^23.0.2",
"@rollup/plugin-json": "^6.0.0",
"@rollup/plugin-node-resolve": "^15.0.1",
"@rollup/plugin-terser": "^0.1.0",
"@types/pako": "^2.0.0",

View File

@ -2,6 +2,7 @@ const resolve = require('@rollup/plugin-node-resolve');
const babel = require("@rollup/plugin-babel");
const commonjs = require('@rollup/plugin-commonjs');
const terser = require('@rollup/plugin-terser');
const json = require('@rollup/plugin-json');
// rollup.config.js
/**
@ -19,6 +20,7 @@ const config = {
resolve(),
commonjs(),
babel({ exclude: 'node_modules/**', babelHelpers: "runtime", skipPreflightCheck: true }),
json({ namedExports: false, preferConst: true }),
terser()
],
};

View File

@ -708,8 +708,7 @@ export class ESPLoader {
let chardata = decoded.split("").map(function (x) {
return x.charCodeAt(0);
});
const bindata = new Uint8Array(chardata);
const text = inflate(bindata);
const text = new Uint8Array(chardata);
decoded = atob(this.chip.ROM_DATA);
chardata = decoded.split("").map(function (x) {

View File

@ -1,5 +1,6 @@
import { ESPLoader } from "../esploader";
import { ROM } from "./rom";
import ESP32_STUB from "./stub_flasher/stub_flasher_32.json";
export class ESP32ROM extends ROM {
public CHIP_NAME = "ESP32";
@ -30,71 +31,11 @@ export class ESP32ROM extends ROM {
public SPI_MOSI_DLEN_OFFS = 0x28;
public SPI_MISO_DLEN_OFFS = 0x2c;
public TEXT_START = 0x400be000;
public ENTRY = 0x400be598;
public DATA_START = 0x3ffdeba8;
public ROM_DATA = "CMD8Pw==";
public ROM_TEXT =
"" +
"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" +
"wqvdldrZOj9LCYJ8mer+L0DR4a0UDQAA";
public TEXT_START = ESP32_STUB.text_start;
public ENTRY = ESP32_STUB.entry;
public DATA_START = ESP32_STUB.data_start;
public ROM_DATA = ESP32_STUB.data;
public ROM_TEXT = ESP32_STUB.text;
public async read_efuse(loader: ESPLoader, offset: number) {
const addr = this.EFUSE_RD_REG_BASE + 4 * offset;

View File

@ -1,5 +1,6 @@
import { ESPLoader } from "../esploader";
import { ROM } from "./rom";
import ESP32C3_STUB from "./stub_flasher/stub_flasher_32c3.json";
export class ESP32C3ROM extends ROM {
public CHIP_NAME = "ESP32-C3";
@ -29,70 +30,11 @@ export class ESP32C3ROM extends ROM {
public SPI_MISO_DLEN_OFFS = 0x28;
public SPI_W0_OFFS = 0x58;
public TEXT_START = 0x40380000;
public ENTRY = 0x403805c8;
public DATA_START = 0x3fc96ba8;
public ROM_DATA = "DEDIPw==";
public ROM_TEXT =
"" +
"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";
public TEXT_START = ESP32C3_STUB.text_start;
public ENTRY = ESP32C3_STUB.entry;
public DATA_START = ESP32C3_STUB.data_start;
public ROM_DATA = ESP32C3_STUB.data;
public ROM_TEXT = ESP32C3_STUB.text;
public async get_pkg_version(loader: ESPLoader) {
const num_word = 3;

View File

@ -1,5 +1,6 @@
import { ESPLoader } from "../esploader";
import { ROM } from "./rom";
import ESP32S2_STUB from "./stub_flasher/stub_flasher_32s2.json";
export class ESP32S2ROM extends ROM {
public CHIP_NAME = "ESP32-S2";
@ -29,80 +30,11 @@ export class ESP32S2ROM extends ROM {
public SPI_MOSI_DLEN_OFFS = 0x24;
public SPI_MISO_DLEN_OFFS = 0x28;
public TEXT_START = 0x40028000;
public ENTRY = 0x4002873c;
public DATA_START = 0x3ffe2bf4;
public ROM_DATA = "CAD9Pw==";
public ROM_TEXT =
"" +
"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";
public TEXT_START = ESP32S2_STUB.text_start;
public ENTRY = ESP32S2_STUB.entry;
public DATA_START = ESP32S2_STUB.data_start;
public ROM_DATA = ESP32S2_STUB.data;
public ROM_TEXT = ESP32S2_STUB.text;
public async get_pkg_version(loader: ESPLoader) {
const num_word = 3;

View File

@ -1,5 +1,6 @@
import { ESPLoader } from "../esploader";
import { ROM } from "./rom";
import ESP32S3_STUB from "./stub_flasher/stub_flasher_32s3.json";
export class ESP32S3ROM extends ROM {
public CHIP_NAME = "ESP32-S3";
@ -33,91 +34,11 @@ export class ESP32S3ROM extends ROM {
public UARTDEV_BUF_NO_USB = 3;
public UARTDEV_BUF_NO = 0x3fcef14c;
public TEXT_START = 0x40378000;
public ENTRY = 0x40378978;
public DATA_START = 0x3fcb2bf4;
public ROM_DATA = "CADKPw==";
public ROM_TEXT =
"" +
"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";
public TEXT_START = ESP32S3_STUB.text_start;
public ENTRY = ESP32S3_STUB.entry;
public DATA_START = ESP32S3_STUB.data_start;
public ROM_DATA = ESP32S3_STUB.data;
public ROM_TEXT = ESP32S3_STUB.text;
public async get_chip_description(loader: ESPLoader) {
return "ESP32-S3";

View File

@ -1,5 +1,6 @@
import { ESPLoader } from "../esploader";
import { ROM } from "./rom";
import ESP8266_STUB from "./stub_flasher/stub_flasher_8266.json";
export class ESP8266ROM extends ROM {
public CHIP_NAME = "ESP8266";
@ -35,155 +36,11 @@ export class ESP8266ROM extends ROM {
public SPI_MISO_DLEN_OFFS = 0; // not in esp8266
public SPI_W0_OFFS = 0x40;
public TEXT_START = 0x4010e000;
public ENTRY = 0x4010e004;
public DATA_START = 0x3fffaca8;
public ROM_DATA =
"" +
"CIH+PwUFBAACAwcAAwMLAFHnEECH5xBAtecQQFToEEAF9xBAuugQQBDpEEBc6RBA" +
"BfcQQCLqEECf6hBAYOsQQAX3EEAF9xBA+OsQQAX3EEDX7hBAn+8QQNjvEEAF9xBA" +
"BfcQQHXwEEAF9xBAW/EQQAHyEEBA8xBA//MQQND0EEAF9xBABfcQQAX3EEAF9xBA" +
"/vUQQAX3EED09hBAL+0QQCfoEEBC9RBAS+oQQJjpEEAF9xBAiPYQQM/2EEAF9xBA" +
"BfcQQAX3EEAF9xBABfcQQAX3EEAF9xBABfcQQMDpEED/6RBAWvUQQAEAAAACAAAA" +
"AwAAAAQAAAAFAAAABwAAAAkAAAANAAAAEQAAABkAAAAhAAAAMQAAAEEAAABhAAAA" +
"gQAAAMEAAAABAQAAgQEAAAECAAABAwAAAQQAAAEGAAABCAAAAQwAAAEQAAABGAAA" +
"ASAAAAEwAAABQAAAAWAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAABAAAA" +
"AgAAAAIAAAADAAAAAwAAAAQAAAAEAAAABQAAAAUAAAAGAAAABgAAAAcAAAAHAAAA" +
"CAAAAAgAAAAJAAAACQAAAAoAAAAKAAAACwAAAAsAAAAMAAAADAAAAA0AAAANAAAA" +
"AAAAAAAAAAADAAAABAAAAAUAAAAGAAAABwAAAAgAAAAJAAAACgAAAAsAAAANAAAA" +
"DwAAABEAAAATAAAAFwAAABsAAAAfAAAAIwAAACsAAAAzAAAAOwAAAEMAAABTAAAA" +
"YwAAAHMAAACDAAAAowAAAMMAAADjAAAAAgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" +
"AAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAQAAAAEAAAABAAAAAgAAAAIAAAACAAAA" +
"AgAAAAMAAAADAAAAAwAAAAMAAAAEAAAABAAAAAQAAAAEAAAABQAAAAUAAAAFAAAA" +
"BQAAAAAAAAAAAAAAAAAAABAREgAIBwkGCgULBAwDDQIOAQ8AAQEAAAEAAAAEAAAA";
public ROM_TEXT =
"" +
"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" +
"bcqT/wWthFLmqB8AAA==";
public TEXT_START = ESP8266_STUB.text_start;
public ENTRY = ESP8266_STUB.entry;
public DATA_START = ESP8266_STUB.data_start;
public ROM_DATA = ESP8266_STUB.data;
public ROM_TEXT = ESP8266_STUB.text;
public async read_efuse(loader: ESPLoader, offset: number) {
const addr = this.EFUSE_RD_REG_BASE + 4 * offset;

View File

@ -0,0 +1,9 @@
# Flasher stub binaries
Included here are the flasher stub binaries from [esptool](https://github.com/espressif/esptool) (.py) project.
The binaries were copied from [v4.5.dev1-2-g32e801484 commit of esptool](https://github.com/espressif/esptool/tree/32e801484/esptool/targets/stub_flasher).
The source code used to produce these binaries can be found [here](https://github.com/espressif/esptool/tree/32e801484/flasher_stub).
The stub is Copyright 2016 Cesanta Software Limited, 2016-2022 Espressif Systems (Shanghai) Co. Ltd. and is licensed under [GNU General Public License v2.0 or later](https://spdx.org/licenses/GPL-2.0-or-later.html) license.

View File

@ -0,0 +1,7 @@
{
"entry": 1074521556,
"text": "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",
"text_start": 1074520064,
"data": "GOv8P9TnC0Bt6AtA7+wLQOnoC0CL6AtA6egLQEXpC0AC6gtAdOoLQB3qC0B95wtAn+kLQPTpC0Bj6QtAluoLQIrpC0CW6gtAWegLQK/oC0Dp6AtARekLQHPoC0BI6wtAr+wLQKHmC0DT7AtAoeYLQKHmC0Ch5gtAoeYLQKHmC0Ch5gtAoeYLQKHmC0Dv6gtAoeYLQMnrC0Cv7AtA",
"data_start": 1073605544
}

View File

@ -0,0 +1,7 @@
{
"entry": 1077413538,
"text": "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",
"text_start": 1077411840,
"data": "IGvIP1wKOECsCjhABAs4QKgLOEAUDDhAwgs4QCgJOEBkCzhApAs4QBgLOEDYCDhATAs4QNgIOEA2CjhAfAo4QKwKOEAECzhASAo4QIwJOEC8CThARAo4QGYOOECsCjhALA04QB4OOEAYCDhARg44QBgIOEAYCDhAGAg4QBgIOEAYCDhAGAg4QBgIOEAYCDhAyAw4QBgIOEBKDThAHg44QA==",
"data_start": 1070164912
}

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -7,7 +7,8 @@
"outDir": "./lib",
"moduleResolution": "node",
"lib": ["ES2020", "DOM"],
"importHelpers": true
"importHelpers": true,
"resolveJsonModule": true
},
"include": ["src/**/*"]
}