Skip to content

Add optional NT98513 MIPS diagnostic tools - #246

Draft
dpiers wants to merge 1 commit into
OpenIPC:masterfrom
dpiers:codex/nt98513-diagnostics
Draft

dpiers wants to merge 1 commit into
OpenIPC:masterfrom
dpiers:codex/nt98513-diagnostics

Conversation

@dpiers

@dpiers dpiers commented Oct 14, 2026

Copy link
Copy Markdown

Adds an optional build path for three source-owned NT98513 Linux MIPS diagnostics: descriptor metadata, one raw control transaction, and a typed active-sensor query. BUILD_NT98513_DIAGNOSTICS defaults to OFF; enabling it adds a self-contained tools/nt98513 subtree and a separate NT98513Diagnostics install component.

The subtree also builds standalone with an installed compatible compiler. It checks the actual little-endian MIPS32r2/O32 soft-float compiler target, supplies freestanding syscall entries, and installs the three tools with their README and MIT notice. Ordinary configuration performs no downloads. Build and private-staging commands are in tools/nt98513/README.md.

Validation of the submitted build code:

  • Standalone and enabled parent builds with CMake 3.25.1 and MIPS GCC 12.2.0; both produce identical diagnostic executables. Static ELF attributes, selected entry calls, source/object dependencies and staged contents checked.
  • Twelve installed CLI cases, each normally and under QEMU 7.2.22 tracing: help/no arguments, invalid input and absent devices. Exact output/exit checks passed; absent-device paths make the expected failed open and no ioctl.
  • Option-OFF ARM base/candidate builds produce byte-identical ipctool and ipcinfo, including both existing ipcinfo size configurations (all: 47,356 bytes; none: 38,492 bytes).
  • The twenty diagnostic C/header/assembly files are unchanged from their separately reviewed native/sanitizer/MIPS implementations. A post-build README-only correction clarifies the documented commands' CMake 3.13 minimum; compilation code is unchanged.

Draft status: there is no camera available for validation. These tools do not establish compatible kernel/RTOS services, a bootable OpenIPC target or capture. Descriptor metadata provides no frame-payload lease. The sensor query describes mutable RTOS selection and clears shared command staging; raw control commands can change camera state. Device calls may block indefinitely. This contribution adds no autostart or firmware installation and is separate from identification PR #245.

This branch has not been deployed

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant