Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 28 Oct 2008 22:05:20 +0000 (UTC)
From:      Marius Strobl <marius@FreeBSD.org>
To:        cvs-src-old@freebsd.org
Subject:   cvs commit: src/sys/sparc64/pci schizo.c
Message-ID:  <200810282205.m9SM5T6o090616@repoman.freebsd.org>

next in thread | raw e-mail | index | archive | help
marius      2008-10-28 22:05:20 UTC

  FreeBSD src repository

  Modified files:
    sys/sparc64/pci      schizo.c 
  Log:
  SVN rev 184428 on 2008-10-28 22:05:20Z by marius
  
  - Turn off interrupts instead of only entering a critical section
    while doing the block store workaround so we restore the correct
    floating-point registers state in case of nested floating-point
    operations resulting from nested interrupts. This allows the
    VIS-based block copy/zero functions to be used on machines
    requiring this workaround. Alternatively, we could take care of
    saving the floating-point registers here, which would be more
    inefficiently though and also involves turning off interrupts.
  - It turns out that the SCZ_PCI_DMA_SYNC register doesn't work
    like the TOMXMS_PCI_DMA_SYNC_PEND one (but more like the
    corresponding register in of Hummingbird and Sabre bridges)
    and writing the INO of the respective device to it causes a
    Safari bus error. However, due to the Schizo errata I-23,
    SCZ_PCI_DMA_SYNC can't be used as intended either, so remove
    consistent DMA syncing for Schzio bridges for now, which means
    that add-on cards with non-"sun4u compliant" (whatever that
    means exactly) PCI-PCI-bridges should be avoided until the
    proper workaround is implemented. [1]
  
  Reported by:    Michael Moll [1]
  
  Revision  Changes    Path
  1.2       +10 -14    src/sys/sparc64/pci/schizo.c



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200810282205.m9SM5T6o090616>