Skip to content

M88CS8001 Sat Receiver

Jonathan Neuschäfer edited this page Aug 22, 2022 · 7 revisions

Satellite TV receivers

  • SoC: Montage LZ M88CS8001
    • CPU: 2x MIPS 24KE
    • Embedded RAM: 64 MiB
  • Mainboard: HS1168-8001-02(B)
  • Case: Probably sold under many names, such as:
    • PremiumX FTA 521S Digital HD receiver
  • I/O:
    • back: LNB IN, USB type A , HDMI, SCART, "coaxial", RS-232, DC 12V in
    • front: IR detector, 7-seg display, buttons (left, right, power), USB type A
      • Using CT1642 LED/key matrix driver IC
  • HF frontend: Allegro A8304 LNB regulator

UART access

Connector J3 connects the RS-232 port to the mainboard. The port runs at 12V and 115200 baud.

pin description
1 TX (0V/12V)
2 RX
3 GND

Firmware

Firmware is stored on a 4 MiB flash chip (EN25Q32).

start     end       description
00000000  00010000  bootloader
00010000  00010400  partition table

Partition table format

Excerpt of two different partition tables:

0x00010000  2A 5E 5F 5E 2A 44 4D 28 5E 6F 5E 29 00 00 3F 00 |*^_^*DM(^o^)..?.| \ 2A 5E 5F 5E 2A 44 4D 28 5E 6F 5E 29 00 00 3F 00 |*^_^*DM(^o^)..?.|
0x00010010  00 00 00 04 00 00 40 00 14 00 30 00 FC 00 01 00 |......@...0.....| / 00 00 00 04 00 00 40 00 15 00 30 00 FC 00 01 00 |......@...0.....|
0x00010020  00 04 00 00 BD 56 04 00 43 F1 C1 B4 30 30 30 30 |.....V..C...0000| \ 00 04 00 00 56 72 04 00 5E F3 FD 3F 30 30 30 30 |....Vr..^..?0000|
0x00010030  30 30 30 31 61 76 5F 63 70 75 00 00 E3 07 02 0E |0001av_cpu......| / 30 30 30 31 61 76 5F 63 70 75 00 00 E6 07 01 06 |0001av_cpu......|
0x00010040  0C 15 1D 00 00 00 00 00 00 00 00 00 89 00 01 00 |................| \ 0A 2A 38 00 00 00 00 00 00 00 00 00 89 00 01 00 |.*8.............|
0x00010050  BD 5A 04 00 30 46 03 00 4E 43 52 43 30 30 30 30 |.Z..0F..NCRC0000| / 56 76 04 00 54 53 03 00 4E 43 52 43 30 30 30 30 |Vv..TS..NCRC0000|
0x00010060  30 30 30 31 69 6D 67 00 00 00 00 00 E3 07 02 0E |0001img.........| \ 30 30 30 31 69 6D 67 00 00 00 00 00 E6 07 01 06 |0001img.........|
0x00010070  0C 11 29 00 00 00 00 00 00 00 00 00 88 00 01 00 |..).............| / 0A 29 29 00 00 00 00 00 00 00 00 00 88 00 01 00 |.)).............|
0x00010080  ED A0 07 00 18 24 23 00 4E 43 52 43 30 30 30 30 |.....$#.NCRC0000| \ AA C9 07 00 6C 42 21 00 4E 43 52 43 30 30 30 30 |....lB!.NCRC0000|

Details:

                                                                                 Partition table header
0x00010000  2A 5E 5F 5E 2A 44 4D 28 5E 6F 5E 29             |*^_^*DM(^o^)    |   Magic value
                                                00 00 3F 00 |            ..?.|   unknown
0x00010010  00 00 00 04                                     |....            |
                                                                                 Partition entry
                        00 00 40 00 14 00 30 00 FC 00 01 00 |    ..@...0.....|   
0x00010020  00 04 00 00 BD 56 04 00                         |.....V..C...0000|
                                    43 F1 C1 B4             |        C...    |   CRC32 or 'NCRC'
                                                30 30 30 30 |            0000|   always '00000001'
0x00010030  30 30 30 31                                     |0001            |
                        61 76 5F 63 70 75 00 00             |    av_cpu..    |   partition name
                                                E3 07 02 0E |            ....|   unknown
0x00010040  0C 15 1D 00 00 00 00 00 00 00 00 00 89 00 01 00 |................|

Load addresses

partition load address
booloader 0x8e200000 (raw from offset 0 to 0x10000)
demo 0x80008000 (decompressed)
img 0x80200000 (decompressed)
av_cpu 0x83e10000 (decompressed)

Boot log

ROM
MCPU: version:btinit VER 0.0.5_sym:[hg_160_fe8bc9c83d1d] Build Time:[Sep 24 2019, 17:20:30]C$9BBCCCBBU
*****************************************
**  Board: mips CPU: sym - MIPS 24KEc
**  SOC name  : 0x8080
**  PACKET type : SIP_68S_DDR2
*****************************************
DRAM:  
DDR is 64MiBytes
20 MiB
phy_clk = 405, clk=50
R_SPIN_CH0_BAUD: 40000009

[0x1c 0x3016].
 encrypt0 

 load_secondary_core_boot_word : secondary_img_start = 0x83e10000 
concerto_check_cpu_ready: start
 ^-^ In main , ebase=0x83e01001, cause=0x38800018, status=0xfc00
avcpu ver = AVCPU_VERSION:[1139:4c830f2607bd] Build Time:[Oct 23conc9r o9ch0c3_]puTria y: s4a t
 cpu!
av_stack_addr = 0x83e00000,  size = 20000
line=380: av sp: 83dffee8
concerto_check_cpu_ready: start
10123**CDU UDQ**: b85f
[FastLogo][ap_init:735]Entry...
[FastLogo][_ai_dm_init]Entry...ticks:0
[FastLogo][_ai_dm_init]set header...ticks:0
[Fastlogo] Hdmi not init success
*****************************************
**  Board: mips CPU: sym - MIPS 24KEc
**  SOC name  : 0x8080
**  PACKET type : SIP_68S_DDR2
*****************************************
DRAM:  20 MiB
phy_clk = 405, clk=50
R_SPIN_CH0_BAUD: 40000009

[0x1c 0x3016].10123
 3. sys partition size(free_mem) 11488936
**CDU UDQ**: b85f
priv->cfg.p_dem_bus = 0x80722040
_mt_fe_dmd_cs8k_sat_download_fw[4677]: fw_size = 12436
**LCK UDQ**: 2f68
cas_adt_ncs_attach
0x8cd8884700005007

eve0

-------symphony Clock Dump-------
Invalid system clock config.
ret:7 type:0 
ver:0x8000a005 pkg:0x16
cpu0_clk=576000000
cpu1_clk=411000000
cpu2_clk=0
ahb_clk=192000000
apb_clk=82285714
dma_clk=192000000
tsi_clk=131000000
secure_clk=131000000
vdec_clk=262000000
display_clk=206000000
di_clk=262000000
gpe_clk=206000000
jpeg_clk=131000000
aout_clk=262000000
uart0_clk=27000000
uart1_clk=27000000
smc0_clk=405000000
spi0_clk=405000000
irda_clk=27000000
ledkb_clk=27000000
i2c_clk=82285714
timer_clk=27000000
watchdog_clk=27000000

cpu1: ON
cpu2: ON
DDR: ON
DMA: ON
CRYPTO: ON
TSI: ON
TSI-CSA3.0: OFF
AOUT: ON
SPDIF: ON
HDMI: ON
VBI: ON
SDVENC: ON
HDVENC: ON
GRA: ON
DISP: ON
JPEG: ON
VDEC: ON
MAC: OFF
RMII: OFF
USB0: ON
USB1: ON
DEMO-C: OFF
DEMO-S: Unknown
PLL_CPU: OFF
CADC: OFF
SADC: ON
ADAC: ON
VDAC0: OFF
VDAC1: OFF
VDAC2: OFF
VDAC3: ON
RNG: OFF

reg:0xbf500000 val:0x6202033 
reg:0xbf500054 val:0x776363 
reg:0xbf500020 val:0x20000 
reg:0xbf500024 val:0xf0000 
reg:0xbf500034 val:0x31 
reg:0xbf500010 val:0x1117 
reg:0xbf500014 val:0x101 
reg:0xbf500018 val:0x3000f0f 
reg:0xbf50001c val:0x11ff03 
reg:0xbf157000 val:0x41177000 
reg:0xbf5d009c val:0x41000000 

SoC details

Memory map

start description
0x80000000 cache memory
0xa0000000 non-cache memory
0x9e000000 flash memory
0xbf000000 MMIO

References