From mboxrd@z Thu Jan 1 00:00:00 1970 From: popcorn mix Date: Tue, 17 Mar 2015 17:53:47 +0000 Subject: [U-Boot] [RFC PATCH] usb: dwc2: handle bcm2835 phys->virt address translations In-Reply-To: <5508646C.5040802@wwwdotorg.org> References: <1426227189-30488-1-git-send-email-swarren@wwwdotorg.org> <5505AD75.2030607@wwwdotorg.org> <201503151920.56824.marex@denx.de> <550799BA.5000409@wwwdotorg.org> <550840D1.9060608@gmail.com> <5508646C.5040802@wwwdotorg.org> Message-ID: <55086A2B.30506@gmail.com> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de On 17/03/15 17:29, Stephen Warren wrote: > Do the RPi 1 and RPi 2 use different kernel binaries in the RPi Foundation's images? I'd assumed there was a single unified binary which supported both. The reason I ask is that I see: We ship separate kernel binaries (kernel.img for 2835 and kernel7.img for 2836). kernel.img is built from bcmrpi_defconfig, and kernel7.img is built from bcm2709_defconfig A single unified binary would sure be nice, but I think we have too many non-device-tree drivers in our kernel and not enough experience to make this happen easily. It's certainly a desirable goal (as it moving closer to the upstream mach-2835 kernel). > I assume the SDHCI controller (RPi SD card, CM eMMC) is affected by this just as much; we need to use bus addresses not ARM physical addresses when programming any DMA there? Yes. Any address given to the DMA controller should be a bus address. Similarly any address exchanged with the GPU (e.g. framebuffer address from mailbox interface) should be a bus address. > Perhaps this would explain why I had issues with the eMMC on the CM (I think only in the kernel though, whereas U-Boot may have been fine; I'll have to check) Using physical addresses when bus addresses are required can almost work, but with intermittent failure cases, so yes that sounds possible. > I assume 128M and 512M there should be 128K and 512K? Yes, quite right.