• Andrew Jeffery's avatar
    fsi: aspeed: Fix OPB0 byte order register values · 5e502299
    Andrew Jeffery authored
    The data byte order selection registers in the APB2OPB primarily expose some
    internal plumbing necessary to get correct write accesses onto the OPB.
    OPB write cycles require "data mirroring" across the 32-bit data bus to
    support variable data width slaves that don't implement "byte enables".
    For slaves that do implement byte enables the master can signal which
    bytes on the data bus the slave should consider valid.
    
    The data mirroring behaviour is specified by the following table:
    
        +-----------------+----------+-----------------------------------+
        |                 |          |          32-bit Data Bus          |
        +---------+-------+----------+---------+---------+-------+-------+
        |         |       |          |         |         |       |       |
        |   ABus  | Mn_BE |  Request |   Dbus  |   Dbus  |  Dbus |  Dbus |
        | (30:31) | (0:3) | Transfer |   0:7   |   8:15  | 16:23 | 24:31 |
        |         |       |   Size   |  byte0  |  byte1  | byte...
    5e502299
fsi-master-aspeed.c 12.8 KB