Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 20 Sep 2020 15:15:47 +0200
From:      Klaus Cucinauomo <maciphone2@googlemail.com>
To:        Mark Millard <marklmi@yahoo.com>, Hans Petter Selasky <hps@selasky.org>, myfreeweb <greg@unrelenting.technology>, freebsd-arm@freebsd.org
Subject:   Re: Comment #135 for bugzilla 237666 : a USB3-handling problem with a investigatory fix for a cortex-a72 context
Message-ID:  <B02E6A40-0901-47B6-AAEA-3941D1091D33@googlemail.com>
In-Reply-To: <473332B8-B0BC-41BB-A36F-500B9416BFBB@yahoo.com>
References:  <6E618C3D-12DF-429E-A249-5BAB90FC6B15.ref@yahoo.com> <723E6915-94F5-417C-B4AF-EEEBFBDF6162@yahoo.com> <565258A0-BEE1-48F8-9851-E6C7CF7ADAE7@yahoo.com> <D28FEE99-A2CA-484E-A5E9-312334CF3FE3@yahoo.com> <75af04ec-0021-3575-40bf-c5ab9b6d4703@selasky.org> <CE9D7856-0179-4C9B-8367-AFBD8EAD4CC2@yahoo.com> <9cf87718-9d4a-60ca-004f-5818371c937b@selasky.org> <47D6CA1E-F842-47B6-97E0-C87B33610C64@yahoo.com> <8BAF3798-4BB4-4C5E-87FC-ECD1458910A2@yahoo.com> <7_E2XXmpIwdiLPwD5tkXUAFlHsAhrFIbs87-JJnE57wRg4vrRcqCL1qSToBN_52_YjcPvt7HQSrzA0v6fWDAYIoN348pYVc62bTUXNxudBU=@protonmail.com> <3D0CFAD6-A93B-401E-82CD-831E22BD8D7A@yahoo.com> <486e827b-b868-abe1-0ac9-478227779a63@selasky.org> <8E916B11-83AB-4045-A501-8F64AD93AF8A@googlemail.com> <473332B8-B0BC-41BB-A36F-500B9416BFBB@yahoo.com>

next in thread | previous in thread | raw e-mail | index | archive | help


> Am 20.09.2020 um 03:32 schrieb Mark Millard <marklmi@yahoo.com>:
>=20
> ...So: unrelated fixes. ...

> For the u-boot context, my guess is that the patch that
> restricted the size of the DMA region to 1 GiByte or so
> to allow things to progress there is effectively a work
> around that avoids touching another bug(s) some place.
> (NetBSD and Linux do not have such a small size limit.
> OpenBSD choose its small limit for other reasons.)


Ah, O.K., thanks, got it...

..the bug is that dma of 1GB is always safe but there is no =
"OS-pre-implementation"=20
for 3GB buffer in 64-bit for RPI4=E2=80=A6 while , the pcie-device =
itself DOESN`t have the=20
1GB - limit like other peripherals..
..
NetBSD also did it that (OpenBSD-)way at first , not for other but the =
same reason,=20
I GUESS(!).. while , as you know,guessing(and dma) isn't really my area =
of expertise ;-) :

=
https://github.com/NetBSD/src/commit/5cb936da2a4720fa51984394998fa62c62aea=
7cd#diff-8e16a107fed72481ef0342727619cfa8  :

#define BCM2711_DMA_SIZE	0x3c000000 =E2=80=A6,( which is 1GB)

jmcneill seems to have then added some voodoo in NetBSD :
=
https://github.com/NetBSD/src/commit/9bf4ec11d132c8b296a3926483aa0b8d43fa4=
3ad

the Tux has fixed it there :
=
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/dr=
ivers/acpi/arm64/iort.c?h=3Dv5.8&id=3Dbcf876870b95592b52519ed4aafcf9d95999=
bc9c#n1125
..they have things like dma_zone or so...

So hardcoding the 1GB constraint into https://reviews.freebsd.org/D25219=20=

or
give it a fine grain dma range to 3GB should fix it...

Since you teamed up with HPS you both now exactly know what to do,
please fix it(today of course:-)..=20
(finally yet another flat joke )

Regards









Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?B02E6A40-0901-47B6-AAEA-3941D1091D33>