Skip to content

Add support Novatek NT98513 #262

Closed
Closed

Description

@igorssv

I connected to UART of vendor firmware with Novatek NT98513.

root@NVTEVM:/tmp$ uname -a
Linux NVTEVM 4.1.0 #1 PREEMPT Fri Sep 4 14:18:00 CST 2020 mips GNU/Linux

So I downloaded the latest ipctool-mips32 and run it.

root@NVTEVM:/tmp$ ./ipctool-mips32
ipctool: SoC not recognised, no hardware report possible.
  no UART0 entry in /proc/iomem
  no vendor matches /proc/cpuinfo: Novatek
Run it as root on the camera. If this is an IP camera or DVR,
please report the SoC with the output of
'cat /proc/cpuinfo; cat /proc/iomem; dmesg | head -40' at
https://github.com/OpenIPC/ipctool/issues

Additional information:

root@NVTEVM:/tmp$ cat /proc/cpuinfo
system type             : NVT NA51023
machine                 : Novatek NA51023 evaluation board
processor               : 0
cpu model               : MIPS 24KEc V5.5
BogoMIPS                : 643.79
wait instruction        : yes
microsecond timers      : yes
tlb_entries             : 32
extra interrupt vector  : yes
hardware watchpoint     : yes, count: 4, address/irw mask: [0x0ffc, 0x0ffc, 0x0ffb, 0x0ffb]
isa                     : mips1 mips2 mips32r1 mips32r2
ASEs implemented        : mips16 dsp
shadow register sets    : 2
kscratch registers      : 0
package                 : 0
core                    : 0
VCED exceptions         : not available
VCEI exceptions         : not available


root@NVTEVM:/tmp$ cat /proc/iomem
00101000-043fffff : System RAM
  00101000-0041b677 : Kernel code
  0041b678-00548fff : Kernel data
c0060000-c00600ff : /soc/rtc@c0060000
c0090000-c00901ff : /soc/cc@c0090000
c0210000-c0211fff : /soc/nvt_pwm@c0210000
c0260000-c0261ffe : /soc/adc@c0260000
c0300000-c030001f : serial
c0310000-c031001f : serial
c0400000-c0400fff : /soc/nor@C0400000
c0420000-c04201ff : mmc0
c0600000-c06003ff : /soc/nvtim@c0600000
c0601000-c06011ff : /soc/nvtim@c0600000

root@NVTEVM:/tmp$` dmesg | head -40
Supports RX COE and LRO
Queue0 Tx fifo size 2048, Rx fifo size 2048
Disabled JUMBO pkt
Enabled Rx watchdog timer
Enabled TSO
Disabled Rx Split header mode
nvt_gmi.ko v1.3:  (mmap 0x83ae0000 size 0xc000) build(Sep 25 2019,18:11:13)

LOG base 0x83a90000(ddr0) size 64K (start pointer 0xe01e31fc) dump_path(/tmp)
PAGE_OFFSET(0x80000000) VMALLOC START(0xe0000000) HZ(250)
[ISP_INFO]: ISP510 v1.0.16.0071, built @ Jan 10 2019 18:48:10
[ISP_INFO]: ISP IPC ID = 6
[ISP_INFO]: sensor version is 0x010001
[ISP_INFO]: lens version is 0x010001
[ISP_INFO]: AE version is 0x010004
[ISP_INFO]: AWB version is 0x010004
[ISP_INFO]: AF version is 0x010000
[ISP_INFO]: ISP is NT98513
[ISP_INFO]: config#0: /usr/isp510_os05a10_day.cfg
[ISP_INFO]: max_iso_num#0 = 12
DWC_ETH_QOS c02b0000.eth eth0: Link is Up - 100Mbps/Full - flow control rx/tx
[ISP_WARN]: fail to read param bin: /usr/isp510_os05a10_final_ecs_matrix.bin!
[ISP_WARN]: fail to read param bin: /usr/isp510_os05a10_final_cc3d_matrix.bin!
[ISP_INFO]: cfg param ste#0 = 0x3FF7FFFF7
nvt_mmc c0420000.mmc: Using DMA, 4-bit mode
DWC_ETH_QOS c02b0000.eth eth0: Link is Down
Queue0 Tx fifo size 2048, Rx fifo size 2048
Disabled JUMBO pkt
Enabled Rx watchdog timer
Enabled TSO
Disabled Rx Split header mode
[ISP_WARN]: fail to read param bin: /usr/isp510_os05a10_final_ecs_matrix.bin!
[ISP_WARN]: fail to read param bin: /usr/isp510_os05a10_final_cc3d_matrix.bin!
DWC_ETH_QOS c02b0000.eth eth0: Link is Up - 100Mbps/Full - flow control rx/tx
[ISP_INFO]: cfg param ste#0 = 0x3FF7FFFF7
[ISP_INFO]: cfg param ste#0 = 0x3FFFFFFFF
hrtimer: interrupt took 147175 ns
cat: page allocation failure: order:9, mode:0xc0d0
CPU: 0 PID: 814 Comm: cat Tainted: G           O    4.1.0 #1
Stack : 00000000 00000000 805746f2 0000003c 00000001 0000003c 8014fa60 804cf380

I'd like to add support of ipctool for this SoC. Ready for any tests if needed.

Activity

  1. widgetii commented on Nov 3, 2026

    @widgetii
    Member

    Thanks for the detailed report. #263 adds NA51023 detection on mips: the Novatek row was compiled for ARM only, and this die's chip ID (0x6E19 at 0xC00100F0, taken from the NA51023 BSP) is now read when the kernel has no /proc/nvt_info.

    Once the rolling latest release rebuilds (a few minutes after the merge), could you download ipctool-mips32 from https://github.com/OpenIPC/ipctool/releases/tag/latest, run it with no arguments, and post the full output together with:

    cat /proc/device-tree/model
    ls /proc/nvt_info /dev/i2c*
    devmem 0xC00100F0
    

    That confirms the chip ID and shows whether sensor detection (your OS05A10) and the memory figures can work on this kernel. The report will name the chip NA51023, because the same ID covers NT96672 and the NT9851x parts.

  2. igorssv commented on Nov 3, 2026

    @igorssv
    Author

    Thank you for quick response. Below required commands output:

    root@NVTEVM:/tmp$ ./ipctool-mips32
    ---
    chip:
      vendor: Novatek
      model: NA51023
    ethernet:
      mac: "ec:71:db:c5:30:b0"
    rom:
    - type: nor
      block: 64K
      partitions:
        - name: loader
          size: 0x10000
          sha1: eb2673e0
        - name: modelext
          size: 0x10000
          sha1: abaf10d1
        - name: uitron
          size: 0x3a0000
          sha1: 9ddfb268
        - name: uboot
          size: 0x50000
          sha1: 92bae9f3
        - name: uenv
          size: 0x10000
          sha1: 1adc95be
        - name: linux
          size: 0x200000
          sha1: 92d8af48
        - name: rootfs
          size: 0x900000
          sha1: 5ef89928
        - name: para
          size: 0xc0000
          path: /mnt/para,jffs2,rw
        - name: sp
          size: 0x10000
          sha1: 6550cf04
        - name: ext_para
          size: 0x10000
          sha1: 1adc95be
      size: 16M
    ram:
      total: 64M
    firmware:
      kernel: "4.1.0 (PREEMPT Fri Sep 4 14:18:00 CST 2020)"
      toolchain: gcc version 4.9.3 (Buildroot 2015.11.1-00003-gfd1edb1)
      main-app: ./device
    
    root@NVTEVM:/tmp$ cat /proc/device-tree/model
    Novatek NA51023 evaluation board
    
    root@NVTEVM:/tmp$ ls /proc/nvt_info /dev/i2c*
    ls: /dev/i2c*: No such file or directory
    /proc/nvt_info:
    bootts   memperf  tm0
    
    root@NVTEVM:/tmp$ devmem 0xC00100F0
    0x6E190000
    
  3. widgetii commented on Nov 3, 2026

    @widgetii
    Member

    Thanks for testing. devmem 0xC00100F0 = 0x6E190000 confirms the NA51023 chip ID, and detection works, so I'm closing this as fixed by #263.

    The sensor isn't reported because this kernel has no /dev/i2c*, so ipctool has no bus to probe the OS05A10 on. If you'd like that too, please open a new issue with the output of ls /dev; cat /proc/devices; ls /sys/class/i2c-adapter /proc/nvt_info/*.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions