On Mon, 27 Oct 2008, T. Makinen wrote:
Hmm, one thought is there could be DMA issues with TT-ram. I'm not familiar with the atari pmap, but if so this should be fixable by tagging the TT-ram differently and forcing the memory provided for to come from the other set.Yes it seems to be DMA issue. ncr5380 driver sets DRIVER_BOUNCING for Falcon if TT-ram is used for DMA and final result for some reason is wrong drive size. If I bypass memory region check in atari5380.c, drive reports correct capacity and other related information, but netbsd does not continue to boot system from that drive. Actually even if I boot netbsd with TT-ram disabled, netbsd finds ffs file system from drive but usually it does not continue to boot system. No problems if I bypass CT63 accelerator (no 68060 and TT-ram). If I compile netbsd with REAL_DMA undefined, there's no problems with CT63 & TT-ram.
As a less invasic change it should be possible to adjust
scsi_dmaok() to return 0 in the CT63 accelerator case...
Hmm, Does the standard falcon System RAM and TT RAM similar
to the TT030? If the standard falcon only has TT RAM then it
should not be too hard to change the DMA behaviour when an
accelerator with additional RAM is enabled.
As a quick test could you try enabling DEBUG in
sys/arch/atari/pmap.c and recording the dmesg from a boot with
and without the CT63 enabled. I'm curious to see how the
detected memory banks differ? (David - a similar boot on
a TT030 could be interesting to compare)
As an aside - NetBSD is always looking for more developers on
the less mainstream platforms :)
Thanks
--
David/absolute -- www.NetBSD.org: No hype required --