static int pci_ampci_write_config_dword(struct pci_bus *bus, unsigned int devfn, int where, u32 value) { u32 rawval; if (bus->number == 0 && devfn == PCI_DEVFN(0, 0)) { __pcbdebug("<= %08x", &BRIDGEREGL(where), value); BRIDGEREGL(where) = value; } else { if (__query(bus, devfn)) __pcidebug("<= %08x", bus, devfn, where, value); CONFIG_ADDRESS = CONFIG_CMD(bus, devfn, where); rawval = CONFIG_ADDRESS; CONFIG_DATAL(where) = value; } return PCIBIOS_SUCCESSFUL; }
static int pci_ampci_read_config_dword(struct pci_bus *bus, unsigned int devfn, int where, u32 *_value) { u32 rawval, value; if (bus->number == 0 && devfn == PCI_DEVFN(0, 0)) { value = BRIDGEREGL(where); __pcbdebug("=> %08x", &BRIDGEREGL(where), value); } else { CONFIG_ADDRESS = CONFIG_CMD(bus, devfn, where); rawval = CONFIG_ADDRESS; value = CONFIG_DATAL(where); if (__query(bus, devfn)) __pcidebug("=> %08x", bus, devfn, where, value); } *_value = value; return PCIBIOS_SUCCESSFUL; }
inline void query_tree(const TreeGrammar& tree_grammar, const Grammar& grammar, const HyperGraph& graph_in, IteratorTree result_tree, IteratorRule result_rule) { QueryTree __query(tree_grammar, grammar); __query(graph_in, result_tree, result_rule); }