| Previous | Next |
| ERROR_HASH_NOT_PRESENT | ERROR_GPIO_CLIENT_INFORMATION_INVALID |
ERROR_SECONDARY_IC_PROVIDER_NOT_REGISTERED
Secondary interrupt-controller provider is absent
ERROR_SECONDARY_IC_PROVIDER_NOT_REGISTERED is Windows system result 15321 (0x00003BD9). The interrupt resource refers to a controller instance that the platform has not made available to the consumer.
ERROR_SECONDARY_IC_PROVIDER_NOT_REGISTERED is primarily an ordering and ownership result. The requested interrupt can exist in firmware data, but the secondary provider that translates or routes it has not registered.
Where this value belongs
ERROR_SECONDARY_IC_PROVIDER_NOT_REGISTEREDcan be observed when a child device starts before its secondary interrupt controller.ERROR_SECONDARY_IC_PROVIDER_NOT_REGISTEREDcan be observed when platform firmware describes an interrupt routed through a cascaded controller.ERROR_SECONDARY_IC_PROVIDER_NOT_REGISTEREDcan be observed when a provider driver fails during registration while consumers continue enumeration.
The investigation should connect the consumer resource to its provider instance. Reinstalling an unrelated GPIO client cannot repair a missing secondary interrupt-controller registration.
Common interpretation mistakes
ERROR_SECONDARY_IC_PROVIDER_NOT_REGISTEREDis mishandled when the interrupt number is analyzed without its controller or resource source.ERROR_SECONDARY_IC_PROVIDER_NOT_REGISTEREDis mishandled when child start is retried before provider start failure is fixed.ERROR_SECONDARY_IC_PROVIDER_NOT_REGISTEREDis mishandled when firmware topology and driver load order are not compared.ERROR_SECONDARY_IC_PROVIDER_NOT_REGISTEREDis mishandled when the missing provider is mistaken for a masked GPIO pin.
Diagnostic sequence
- Capture the consumer device instance and raw interrupt resource.
- Identify the ACPI or platform node that owns the secondary controller.
- Verify the provider driver loaded and completed registration.
- Compare provider start time with child enumeration time.
- Inspect firmware tables and resource translation diagnostics.
- Restart enumeration only after the provider is known to be registered.
Evidence worth keeping
- For
ERROR_SECONDARY_IC_PROVIDER_NOT_REGISTERED, preserve consumer and provider device instance paths. - For
ERROR_SECONDARY_IC_PROVIDER_NOT_REGISTERED, preserve raw and translated interrupt resources. - For
ERROR_SECONDARY_IC_PROVIDER_NOT_REGISTERED, preserve provider driver load and registration events. - For
ERROR_SECONDARY_IC_PROVIDER_NOT_REGISTERED, preserve ACPI topology or firmware identifiers. - For
ERROR_SECONDARY_IC_PROVIDER_NOT_REGISTERED, preserve first provider-start failure status.
For ERROR_SECONDARY_IC_PROVIDER_NOT_REGISTERED, retain the parent-child topology because a numeric interrupt alone cannot identify the missing routing provider.
Correct handling and recovery
Correct firmware description, provider driver installation, or start ordering so the secondary controller registers before its interrupt is consumed.
Re-enumeration is reasonable after provider registration succeeds. Repeated child starts while the provider remains absent only obscure the first failure.
Difference from nearby values
ERROR_GPIO_CLIENT_INFORMATION_INVALID concerns data supplied by a GPIO client driver. This code is about the missing provider instance that manages a particular interrupt.
Practical scenario
A child sensor is enumerated before a cascaded interrupt controller finishes starting. The sensor receives code 15321; a dependency fix starts the provider first and the same interrupt resource then translates successfully.
Implementation guidance
Platform drivers should publish dependencies explicitly and log provider instance IDs. Firmware and driver teams should validate cold boot, resume, and surprise-restart ordering.
For code 15321, record secondary_ic_consumer, secondary_ic_provider, secondary_ic_resource, secondary_ic_start_order, and secondary_ic_registration_status.
References
- Microsoft: System Error Codes 12000–15999 — official Microsoft documentation relevant to
ERROR_SECONDARY_IC_PROVIDER_NOT_REGISTERED. - Microsoft: GpioClx DDI — official Microsoft documentation relevant to
ERROR_SECONDARY_IC_PROVIDER_NOT_REGISTERED. - Microsoft: ACPI system description tables — official Microsoft documentation relevant to
ERROR_SECONDARY_IC_PROVIDER_NOT_REGISTERED.
Looking for a different code? Search another status or error code.