startup-apic
Startup for Intel Advanced Programmable Interrupt Controller (APIC) systems (QNX OS)
Syntax:
startup-apic [-ABb] [-D channel[.channel_opts]]
[-F [~]value]
[-f [cpu_freq][,[cycles_freq][,timer_freq]]]
[-I flag] [-i ifs2_size[,flags][,paddr_src][,paddr_dst]]
[-j addr] [-K channel[.channel_opts]]
[-N hostname] [-P max_cpus]
[-R size[,align[,name[,use_low_memory]]]] [-r addr,size[,flag]]
[-S [~]section] [-T] [-v[v]...] [-x] [-z[z]]
Runs on:
QNX OS
Targets:
x86_64
Options:
In addition to the generic startup-* and x86-specific options, startup-apic supports the following options:
- -b
- Don't reserve the bottom 4 KB of memory for virtual 8086 mode. This provides an extra 4 KB of memory for system use.
Debug channels
The debug channel specified with the -D and -K options can be:
8250
[.port[^shift][.baud[.clock[.divisor]]]]- Use a generic 8250-compatible serial chip, with:
- port
- Specify the I/O port base address for the 8250, in hexadecimal.
The default is
3f8
. - shift
- Specify the spacing between the I/O registers, in 2shift bytes. The default is 0.
- baud
- Specify the baud rate for the debug channel. The default is 57600.
- clock
- Specify the clock rate (in Hz) input to the chip. The default is 1843200.
- divisor
- Specify the divisor used on the clock rate by the chip. The default is 16.
console
- Use the PC console.
-D 8250..9600
-D console
-K 8250.3f8^0.57600.1843200.16
Description:
The startup-apic program is the startup for boards that support Intel Advanced Programmable Interrupt Controllers (APIC). They support Message Signaled Interrupts (MSI) and Extended MSI (MSI-X).
In order to prevent the sharing of the HPET0 interrupt with PCI devices, it's configured in legacy interrupt mode and so uses IRQ 2. This configuration also configures HPET1 in legacy interrupt mode on IRQ8, which eliminates the use of the RTC interrupts. The QNX OS doesn't use RTC interrupts; if you need to use them, use the -z option to startup-apic to revert to the 8254 as system clock. Other HPET timers (if the system supports them) aren't affected by the legacy interrupt routing of HPET0 and HPET1.
Examples:
startup-apic -Nnode120 -vvvv -Dconsole
startup-apic -Nnode120 -vvvv -D8250..115200
2f8
:
startup-apic -Nnode120 -vvvv -D8250.2f8.115200