staticinlinebool brcmnand_bcma_needs_swapping(u32 offset)
{ switch (offset) { case BCMA_CC_NAND_SPARE_RD0: case BCMA_CC_NAND_SPARE_RD4: case BCMA_CC_NAND_SPARE_RD8: case BCMA_CC_NAND_SPARE_RD12: case BCMA_CC_NAND_SPARE_WR0: case BCMA_CC_NAND_SPARE_WR4: case BCMA_CC_NAND_SPARE_WR8: case BCMA_CC_NAND_SPARE_WR12: case BCMA_CC_NAND_DEVID: case BCMA_CC_NAND_DEVID_X: case BCMA_CC_NAND_SPARE_RD16: case BCMA_CC_NAND_SPARE_RD20: case BCMA_CC_NAND_SPARE_RD24: case BCMA_CC_NAND_SPARE_RD28: returntrue;
}
/* Offset into the NAND block and deal with the flash cache separately */ if (offset == BRCMNAND_NON_MMIO_FC_ADDR)
offset = BCMA_CC_NAND_CACHE_DATA; else
offset += BCMA_CC_NAND_REVISION;
val = bcma_cc_read32(sc->cc, offset);
/* Swap if necessary */ if (brcmnand_bcma_needs_swapping(offset))
val = be32_to_cpu((__force __be32)val); return val;
}
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.