source: rtems/c/src/lib/libbsp/i386/pc386/README @ dd335cf

5
Last change on this file since dd335cf was 014292a1, checked in by Chris Johns <chrisj@…>, on 04/08/16 at 08:39:38

i386/pc386: Add support for the gdb stub to use available console drivers.

Move the gdb stub from the i386 UART code to use the libchip drivers.

Use any ports discovered during the probes.

Add gdb control to the boot command line.

Change the device naming to the full device path, not a partial path.
For example /dev/com1.

  • Property mode set to 100644
File size: 2.6 KB
Line 
1#
2# This board support package works with a target PC
3#
4
5This BSP supports a standard Intel/AMD PC on i386 and up CPUs. If on
6a Pentium or above, the TSC register is used for timing calibration
7purposes rather than relying entirely on the i8254.
8
9Partial support is implemented for more modern PCs which do not have
10a complete complement of legacy peripherals.
11
12Console/Printk Device Selection
13===============================
14The pc386 console device driver supports a variety of devices
15including the VGA/keyboard and a number of serial ports. The
16default console is selected based on which devices are present
17in the following order of priority:
18
19+ VGA and keyboard
20+ COM1 through COM4aaa
21
22+ Any COM devices on the PCI bus including IO and memory mapped.
23
24Beyond the dynamic probing for device presence, a combination of
25configure and boot time options are available. By default, all devices
26are enabled. The configure time options are:
27
28+ BSP_ENABLE_VGA - value of 1 to enable, 0 to disable
29+ BSP_ENABLE_COM1_COM4 - value of 1 to enable, 0 to disable
30+ BSP_USE_COM1_AS_CONSOLE - value of 1 forces console to COM1
31
32An example of using these to force the console to COM1 is:
33
34../rtems/configure --target=i386-rtems4.12 \
35  USE_COM1_AS_CONSOLE=1 --enable-rtemsbsp=pc386 \
36  ... other arguments ...
37
38The --console and --printk options can be used to specify the
39device associated with stdin, stdout, and stderr as well as
40the device associated with kernel debug IO (e.g. printk()/getk()).
41Both take the name of a device without the "/dev/" prefix.
42
43The --console argument is interpreted first and assumed to
44specify the console and kernel debug IO device. The --printk
45is then interpreted to specify the debug kernel IO device.
46For example,
47
48--console=/dev/com1 --printk=/dev/vgacons
49
50specifies that com1 is to be used for stdin, stdout, and stderr
51while the VGA console is to be used for kernel debug IO.
52Note that the lower case com1 is intentional as this maps to
53the RTEMS device /dev/com1.
54
55The device name may be followed by a baud rate. The following
56example illustrates this:
57
58--console=/dev/com1,19200 --printk=/dev/vgacons
59
60If the specified device is not present, then a suitable fallback
61device is selected. The fallback order is based upon the probe
62order listed earlier.
63
64PCI UART devices are /dev/pcicom1 etc as they are probed and found.
65
66GDB
67===
68
69GDB can be support using:
70
71 --gdb=/dev/com1,115200  : where the device and baudrate are selectable.
72 --gdb-break             : halt at a break point in the BSP and wait for GDB.
73 --gdb-remote-debug      : Output the GDB remote protocol data to printk
74
75The GDB stub details and in shared/comm/GDB.HOWTO.
Note: See TracBrowser for help on using the repository browser.