Creating A devicetree.cb: Difference between revisions
Eocallaghan (talk | contribs) m (→Keywords) |
Eocallaghan (talk | contribs) |
||
Line 13: | Line 13: | ||
When a device in '''devicetree.cb''' is found during the coreboot PCI/system scan process the functions to do customized initialization are called via the '''device_operations''' and the '''chip_operations''' structures. You will find these structures in the devices source files. | When a device in '''devicetree.cb''' is found during the coreboot PCI/system scan process the functions to do customized initialization are called via the '''device_operations''' and the '''chip_operations''' structures. You will find these structures in the devices source files. | ||
== Keywords == | == Keywords & Symbols == | ||
<source lang="ada"> | <source lang="ada"> | ||
chip, device, register,on,off,pci,ioapic,pnp,i2c,lapic,cpu_cluster,domain,irq,drq,io,ioapic_irq,inherit,subsystemid,end,= | |||
</source> | </source> | ||
Revision as of 10:58, 18 February 2014
This article should help people who are writting a devicetree.cb for their system.
What you will need
- lspci -nvvv output
Introduction
The mainboard's devicetree.cb file contains many build and platform configuration settings. One of the most important items is the mainboard device list.
A device needs to be listed in the mainboard devicetree.cb if it requires more setup than standard PCI initialization (resource allocation). Typically, that includes the CPU, northbridge, southbridge, and Super I/O. These devices are usually required for system specific configuration as well as indicate the system bus structure (pci_domain).
When a device in devicetree.cb is found during the coreboot PCI/system scan process the functions to do customized initialization are called via the device_operations and the chip_operations structures. You will find these structures in the devices source files.
Keywords & Symbols
<source lang="ada"> chip, device, register,on,off,pci,ioapic,pnp,i2c,lapic,cpu_cluster,domain,irq,drq,io,ioapic_irq,inherit,subsystemid,end,= </source>
Syntax
..
Grammar
..
Examples
NorthBridge
..
Super I/O
» chip superio/fintek/f71869ad » » device pnp 4e.00 off # Floppy » » » io 0x60 = 0x3f0 » » » irq 0x70 = 6 » » » drq 0x74 = 2 » » end » » device pnp 4e.01 on # COM1 » » » io 0x60 = 0x3f8 » » » irq 0x70 = 4 » » end » » » device pnp 4e.02 off # COM2 » » » io 0x60 = 0x2f8 » » » irq 0x70 = 3 » » end » » device pnp 4e.03 off # Parallel Port » » » io 0x60 = 0x378 » » » irq 0x70 = 7 » » » drq 0x74 = 3 » » end » » device pnp 4e.04 on # Hardware Monitor » » » io 0x60 = 0x295 » » » irq 0x70 = 0 » » end » » device pnp 4e.05 on # KBC » » » io 0x60 = 0x060 » » » irq 0x70 = 1 # Keyboard IRQ » » » irq 0x72 = 12 # Mouse IRQ » » end » » device pnp 4e.06 off end # GPIO » » device pnp 4e.07 on end # BSEL » » device pnp 4e.0a off end # PME » end # f71869ad
This file is licensed under Creative Commons Attribution 2.5 License. In short: you are free to distribute and modify the file as long as you attribute its author(s) or licensor(s). |