sync: WIN10-I9-64G 2026-07-20
This commit is contained in:
@@ -31,8 +31,8 @@ FPGA 做 8VSB 调制 / DPD / AGC / TS 前处理,imx6 跑 `atsc_app`(配置 A
|
||||
| FPGA / Flash | `xc7a200tfbg676-2` / Winbond **w25q128bv**(128 Mbit = 16 MB,SPIx1) |
|
||||
| Vivado | `D:\Xilinx\Vivado\2018.1`(`bin\vivado.bat`) |
|
||||
| imx6 源码 | `my_exciter\imx6\src\atsc_app`(Makefile 在该目录根) |
|
||||
| imx6 设备 | `192.168.1.143`,`root` / `anywavecom`(网页 + SSH;Windows 主机 `192.168.1.125` 同网段) |
|
||||
| 交叉编译 VM | `bowei@192.168.223.128`,密码 `lr7402`,构建目录 `~/atsc_head_build` |
|
||||
| imx6 设备 | `192.168.1.143`,用户 `root`,密码见 `~\skills_env.md` 的 `SMOD_SSH_PASS`(网页 + SSH;Windows 主机 `192.168.1.125` 同网段) |
|
||||
| 交叉编译 VM | `bowei@192.168.223.128`,密码见 `~\skills_env.md` 的 `CROSS_VM_PASS`,构建目录 `~/atsc_head_build` |
|
||||
| 工具链 | `/opt/fsl-imx-x11/4.1.15-2.0.0/environment-setup-cortexa7hf-neon-poky-linux-gnueabi` |
|
||||
| app 部署路径 | `/aw/anywave/app/imx_atsc_app`(先写 `imx_atsc_app_head`,再 `cp -a` 覆盖 active) |
|
||||
| app 日志 | `/var/module_log/imx_atsc_app.log` |
|
||||
|
||||
@@ -17,7 +17,7 @@
|
||||
|
||||
## 交叉编译
|
||||
|
||||
工具链在 VM `bowei@192.168.223.128`(密码 `lr7402`):
|
||||
工具链在 VM `bowei@192.168.223.128`(密码见 `~\skills_env.md` 的 `CROSS_VM_PASS`):
|
||||
|
||||
```
|
||||
/opt/fsl-imx-x11/4.1.15-2.0.0/environment-setup-cortexa7hf-neon-poky-linux-gnueabi
|
||||
@@ -36,7 +36,7 @@ VM 的 sshd 是现代版本,paramiko 5 / OpenSSH 都能连。若报
|
||||
|
||||
## 部署到设备
|
||||
|
||||
设备 `192.168.1.143`,`root` / `anywavecom`。**它的 SSH 是老 dropbear**,有两个坑:
|
||||
设备 `192.168.1.143`,用户 `root`(密码见 `~\skills_env.md` 的 `SMOD_SSH_PASS`)。**它的 SSH 是老 dropbear**,有两个坑:
|
||||
|
||||
1. **算法太老**:paramiko 5 会报 `unknown cipher` / `no acceptable host key`。
|
||||
要用 **paramiko 2.12**(有 TripleDES / aes-cbc / ssh-rsa):
|
||||
|
||||
@@ -25,19 +25,45 @@ touch the relays; that sequencing lives in the vivado-mcp tools.
|
||||
import argparse
|
||||
import hashlib
|
||||
import os
|
||||
import re
|
||||
import subprocess
|
||||
import sys
|
||||
import tarfile
|
||||
import tempfile
|
||||
|
||||
|
||||
def _env_lookup(key, default=None):
|
||||
"""Machine-local values (paths, IPs, credentials) live in ~/skills_env.md, never in git.
|
||||
An OS environment variable of the same name overrides the file."""
|
||||
v = os.environ.get(key)
|
||||
if v:
|
||||
return v
|
||||
path = os.path.join(os.path.expanduser("~"), "skills_env.md")
|
||||
try:
|
||||
with open(path, encoding="utf-8") as f:
|
||||
for line in f:
|
||||
m = re.match(rf"\s*{key}\s*=\s*(\S+)", line)
|
||||
if m:
|
||||
return m.group(1)
|
||||
except OSError:
|
||||
pass
|
||||
if default is None:
|
||||
sys.exit(f"missing {key}: add it to ~/skills_env.md or set it as an env var")
|
||||
return default
|
||||
|
||||
|
||||
REPO = r"E:\Xilinx_design\smod\SMOD_ATSC\my_exciter"
|
||||
APP_SUBDIR = "imx6/src/atsc_app"
|
||||
|
||||
VM_HOST, VM_USER, VM_PASS = "192.168.223.128", "bowei", "lr7402"
|
||||
VM_HOST = _env_lookup("CROSS_VM_HOST", "192.168.223.128")
|
||||
VM_USER = _env_lookup("CROSS_VM_USER", "bowei")
|
||||
VM_PASS = _env_lookup("CROSS_VM_PASS")
|
||||
VM_BUILD_DIR = "atsc_head_build" # relative to the VM home dir
|
||||
TOOLCHAIN = "/opt/fsl-imx-x11/4.1.15-2.0.0/environment-setup-cortexa7hf-neon-poky-linux-gnueabi"
|
||||
|
||||
IMX_HOST, IMX_USER, IMX_PASS = "192.168.1.143", "root", "anywavecom"
|
||||
IMX_HOST = _env_lookup("SMOD_BOARD_IP", "192.168.1.143")
|
||||
IMX_USER = _env_lookup("SMOD_SSH_USER", "root")
|
||||
IMX_PASS = _env_lookup("SMOD_SSH_PASS")
|
||||
IMX_APP_DIR = "/aw/anywave/app"
|
||||
IMX_STAGING = f"{IMX_APP_DIR}/imx_atsc_app_head"
|
||||
IMX_ACTIVE = f"{IMX_APP_DIR}/imx_atsc_app"
|
||||
|
||||
Reference in New Issue
Block a user