TF-M build tooling fails on non-UTF-8 host locales (Windows zh-CN / GBK): UnicodeDecodeError in tools/tfm_parse_manifest_list.py

Environment
- nRF Connect SDK v3.4.1, Windows with zh-CN locale (default code page CP936/GBK), the Python bundled with the NCS toolchain
- Building nrf9151dk/nrf9151/ns (TF-M manifest step)

Symptom
The build fails with:

    UnicodeDecodeError: 'gbk' codec can't decode byte 0x9a in position ...: illegal multibyte sequence

while processing tfm_isolation_s.ld.template in the TF-M manifest tool.

Cause
tools/tfm_parse_manifest_list.py opens files with open()/io.open() without an explicit encoding, so Python uses the locale encoding (GBK here). There are 9 such call sites (5 reads, 4 writes).

Local fix
Add encoding='utf-8' (reads additionally errors='replace', writes encoding='utf-8') to all 9 call sites; the build then completes normally. Patch available. We have not checked whether a newer TF-M release already contains this fix.

Request (low priority)
Please fix the tooling encoding upstream / in NCS. Filed for completeness because we keep a local patch on our side.
Related