REG
PMCDBG2(LOG,REG,1,"%s %p", (char *)km->pm_file,
PMCDBG2(PMC,REG,1, "register-owner pmc-owner=%p pmc=%p",
DBG_SET_FLAG_MIN("register", REG);
#define PCI_MASK_CONFIG(DEV,REG,MASK,SIZE) \
pci_write_config(DEV, REG, pci_read_config(DEV, REG, SIZE) MASK, SIZE)
#define PCI_MASK2_CONFIG(DEV,REG,MASK1,MASK2,SIZE) \
pci_write_config(DEV, REG, ( \
pci_read_config(DEV, REG, SIZE) MASK1) MASK2, SIZE)
#define PCI_MASK_CONFIG(DEV,REG,MASK,SIZE) \
pci_write_config(DEV, REG, pci_read_config(DEV, REG, SIZE) MASK, SIZE)
#define PCI_MASK2_CONFIG(DEV,REG,MASK1,MASK2,SIZE) \
pci_write_config(DEV, REG, ( \
pci_read_config(DEV, REG, SIZE) MASK1) MASK2, SIZE)
val = REG(ptr + PCIER_FLAGS, 2);
while ((REG(cfg->vpd.vpd_reg + PCIR_VPD_ADDR, 2) & 0x8000) != 0x8000) {
*data = (REG(cfg->vpd.vpd_reg + PCIR_VPD_DATA, 4));
while ((REG(cfg->vpd.vpd_reg + PCIR_VPD_ADDR, 2) & 0x8000) == 0x8000) {
if (REG(PCIR_VENDOR, 2) == PCIV_INVALID)
hdrtype = REG(PCIR_HDRTYPE, 1);
if (REG(PCIR_VENDOR, 2) == PCIV_INVALID)
hdrtype = REG(PCIR_HDRTYPE, 1);
if (REG(PCIR_VENDOR, 2) == PCIV_INVALID)
cfg->subvendor = REG(PCIR_SUBVEND_0, 2);
cfg->subdevice = REG(PCIR_SUBDEV_0, 2);
cfg->mingnt = REG(PCIR_MINGNT, 1);
cfg->maxlat = REG(PCIR_MAXLAT, 1);
cfg->bridge.br_seclat = REG(PCIR_SECLAT_1, 1);
cfg->bridge.br_subbus = REG(PCIR_SUBBUS_1, 1);
cfg->bridge.br_secbus = REG(PCIR_SECBUS_1, 1);
cfg->bridge.br_pribus = REG(PCIR_PRIBUS_1, 1);
cfg->bridge.br_control = REG(PCIR_BRIDGECTL_1, 2);
cfg->bridge.br_seclat = REG(PCIR_SECLAT_2, 1);
cfg->bridge.br_subbus = REG(PCIR_SUBBUS_2, 1);
cfg->bridge.br_secbus = REG(PCIR_SECBUS_2, 1);
cfg->bridge.br_pribus = REG(PCIR_PRIBUS_2, 1);
cfg->bridge.br_control = REG(PCIR_BRIDGECTL_2, 2);
cfg->subvendor = REG(PCIR_SUBVEND_2, 2);
cfg->subdevice = REG(PCIR_SUBDEV_2, 2);
vid = REG(PCIR_VENDOR, 2);
did = REG(PCIR_DEVICE, 2);
cfg->cmdreg = REG(PCIR_COMMAND, 2);
cfg->statreg = REG(PCIR_STATUS, 2);
cfg->baseclass = REG(PCIR_CLASS, 1);
cfg->subclass = REG(PCIR_SUBCLASS, 1);
cfg->progif = REG(PCIR_PROGIF, 1);
cfg->revid = REG(PCIR_REVID, 1);
cfg->hdrtype = REG(PCIR_HDRTYPE, 1);
cfg->cachelnsz = REG(PCIR_CACHELNSZ, 1);
cfg->lattimer = REG(PCIR_LATTIMER, 1);
cfg->intpin = REG(PCIR_INTPIN, 1);
cfg->intline = REG(PCIR_INTLINE, 1);
if (REG(PCIR_STATUS, 2) & PCIM_STATUS_CAPPRESENT)
num_ent = REG(PCIR_EA_NUM_ENT, 2);
val = REG(ptr, 4);
dw[b] = REG(ptr, 4);
nextptr = REG(ptrptr, 1); /* sanity check? */
nextptr = REG(ptr + PCICAP_NEXTPTR, 1);
switch (REG(ptr + PCICAP_ID, 1)) {
cfg->pp.pp_cap = REG(ptr + PCIR_POWER_CAP, 2);
val = REG(ptr + PCIR_HT_COMMAND, 2);
addr = REG(ptr + PCIR_HTMSI_ADDRESS_HI,
addr |= REG(ptr + PCIR_HTMSI_ADDRESS_LO,
cfg->msi.msi_ctrl = REG(ptr + PCIR_MSI_CTRL, 2);
cfg->msix.msix_ctrl = REG(ptr + PCIR_MSIX_CTRL, 2);
val = REG(ptr + PCIR_MSIX_TABLE, 4);
val = REG(ptr + PCIR_MSIX_PBA, 4);
val = REG(ptr + PCIR_SUBVENDCAP_ID, 4);
(0x68000000 | (SCR_REG_OFS(REG(reg))) | (op) | (((data)&0xff)<<8ul))
(0x70000000 | (SCR_REG_OFS(REG(reg))) | (op) | (((data)&0xff)<<8ul))
(0x78000000 | (SCR_REG_OFS(REG(reg))) | (op) | (((data)&0xff)<<8ul))
(0xe1000000 | (how) | (SCR_REG_OFS2(REG(reg))) | (n))
(0xe0000000 | (how) | (SCR_REG_OFS2(REG(reg))) | (n))
#define RADDR_1(label) (RELOC_REGISTER | REG(label))
#define RADDR_2(label,ofs) (RELOC_REGISTER | ((REG(label))+(ofs)))
GETREG(bas, REG(UCR3)), GETREG(bas, REG(UCR4)),
GETREG(bas, REG(USR1)), GETREG(bas, REG(USR2)));
i = (GETREG(bas, REG(UFCR)) & IMXUART_UFCR_RFDIV_MASK) >>
ubir = GETREG(bas, REG(UBIR)) + 1;
ubmr = GETREG(bas, REG(UBMR)) + 1;
SET(bas, REG(UCR1), FLD(UCR1, UARTEN));
SET(bas, REG(UCR2), FLD(UCR2, RXEN) | FLD(UCR2, TXEN));
reg = GETREG(bas, REG(UFCR));
SETREG(bas, REG(UFCR), reg);
SETREG(bas, REG(UBIR), 15);
SETREG(bas, REG(UBMR), (baseclk / baudrate) - 1);
reg = GETREG(bas, REG(UFCR));
SETREG(bas, REG(UFCR), reg);
SETREG(bas, REG(UTXD), c);
c = GETREG(bas, REG(URXD));
SETREG(bas, REG(USR1), 0xffff);
SETREG(bas, REG(USR2), 0xffff);
SETREG(&sc->sc_bas, REG(UCR4), 0);
bes = GETREG(&sc->sc_bas, REG(USR2));
usr1 = GETREG(bas, REG(USR1));
usr2 = GETREG(bas, REG(USR2));
SETREG(bas, REG(USR1), usr1);
SETREG(bas, REG(USR2), usr2);
ucr1 = GETREG(bas, REG(UCR1));
ucr2 = GETREG(bas, REG(UCR2));
ucr4 = GETREG(bas, REG(UCR4));
xc = GETREG(bas, REG(URXD));
SETREG(bas, REG(UTXD), sc->sc_txbuf[i] & 0xff);
GETREG(bas, REG(UCR1)), GETREG(bas, REG(UCR2)),
#define ENA(_bas, _r, _b) SET((_bas), REG(_r), FLD(_r, _b))
#define DIS(_bas, _r, _b) CLR((_bas), REG(_r), FLD(_r, _b))
#define IS(_bas, _r, _b) IS_SET((_bas), REG(_r), FLD(_r, _b))