Changeset 175b9a64 in rtems


Ignore:
Timestamp:
Apr 24, 2013, 3:36:44 PM (7 years ago)
Author:
Daniel Hellstrom <daniel@…>
Branches:
4.11, master
Children:
ecbd577
Parents:
819de55b
git-author:
Daniel Hellstrom <daniel@…> (04/24/13 15:36:44)
git-committer:
Daniel Hellstrom <daniel@…> (04/16/15 23:10:19)
Message:

GRPCI2: work-around for rev0 bug by limiting prefetching

File:
1 edited

Legend:

Unmodified
Added
Removed
  • c/src/lib/libbsp/sparc/shared/pci/grpci2.c

    r819de55b r175b9a64  
    188188        unsigned int io_map;
    189189        unsigned int pcibar_size[6];
     190        unsigned int ahb_pref;
    190191};
    191192#define CAP9_CTRL_OFS 0
     
    193194#define CAP9_IOMAP_OFS 0x20
    194195#define CAP9_BARSIZE_OFS 0x24
     196#define CAP9_AHBPREF_OFS 0x3C
    195197
    196198struct grpci2_priv *grpci2priv = NULL;
     
    225227        struct drvmgr_dev       *dev;
    226228        struct grpci2_regs              *regs;
     229        unsigned char                   ver;
    227230        char                            irq;
    228231        char                            irq_mode; /* IRQ Mode from CAPSTS REG */
     
    650653                return -1;
    651654
     655        /* Limit the prefetch for GRPCI2 version 0. */
     656        if (priv->ver == 0)
     657                grpci2_cfg_w32(host, capptr+CAP9_AHBPREF_OFS, 0);
     658
    652659        /* Enable/Disable Byte twisting */
    653660        grpci2_cfg_r32(host, capptr+CAP9_IOMAP_OFS, &io_map);
     
    709716        /* Found PCI core, init private structure */
    710717        priv->irq = apb->irq;
     718        priv->ver = apb->ver;
    711719        priv->regs = (struct grpci2_regs *)apb->start;
    712720        priv->bt_enabled = DEFAULT_BT_ENABLED;
Note: See TracChangeset for help on using the changeset viewer.