26

I can find the hardware documentation for both Raspberry Pi 1's and Raspberry Pi 2's SoC on the Documentation - Hardware site from raspberrypi.org (Broadcom BCM2835 and Broadcom BCM2836).

However, I couldn't find any documentation for the Raspberry Pi 3 Model B's SoC (Broadcom BCM2837), which I purchased recently.

Is there any similar document what you can recommend for Raspberry Pi 3?

h0ch5tr4355
  • 383
  • 1
  • 5
  • 11
  • The Foundation tends to take its time with afterthoughts like "documentation". They may have it already posted publicly just haven't added a link there. – goldilocks Apr 13 '16 at 18:43
  • @goldilocks But did not found it by research, I didn't just look on the foundation's site. – h0ch5tr4355 Apr 13 '16 at 19:19
  • 3
    That wasn't a criticism of you! I'm just holding out a small candle of hope that someone may come along with an answer for you, having stumbled across it in some official forum post, list mail, etc., that is practically impossible to find through normal searching. However, note that the relationship between the Foundation and Broadcom is at some kind of "arm's length" -- I think the Foundation's core are former BCM employees -- and BCM does not seem to be known as a purveyor of "open hardware". So there's a lot of information that is simply theirs to keep secret. – goldilocks Apr 13 '16 at 19:30
  • 2
    A lot of people are looking for this, so I guess its time to start mailing Broadcom and ask them what the problem is by releasing it. Other developers have answered along the lines of "well, it's similar enough", well that is simply not good enough! Totoally different databus and clocks and PLLs etc. – not2qubit Apr 21 '16 at 22:14

6 Answers6

9

Depending on what you want to accomplish with the documentation, you might find your answers in a few different places.

I found this general discussion quite helpful:

http://www.cnx-software.com/2016/03/01/raspberry-pi-3-odroid-c2-and-pine-a64-development-boards-comparison/

And for the CPU itself:

http://www.arm.com/products/processors/cortex-a/cortex-a53-processor.php

And for the VideoCore, this:

https://docs.broadcom.com/docs-and-downloads/docs/support/videocore/VideoCoreIV-AG100-R.pdf

JDA3
  • 226
  • 1
  • 3
  • 1
    This is from the first link: `Documentation is available via eLinux RPI Wiki, with little info about Raspberru Pi 3 specifically, but it’s not really an issue, as it’s software compatible with Raspberry Pi 2

    Schematics are not available, even in PDF format, and the board hardware is closed source.

    Broadcom BCM2837 datasheet is not available, however many of the peripherals will be similar to BCM2835 where the datasheet has been released.

    Read more: http://www.cnx-software.com/2016/03/01/raspberry-pi-3-odroid-c2-and-pine-a64-development-boards-comparison/#ixzz470bJNO00`

    – h0ch5tr4355 Apr 27 '16 at 07:14
  • which is an answer, thx for the further links and sorry for the late response. – h0ch5tr4355 Apr 27 '16 at 07:14
  • RPI3 has the A53 core, but it appears to be missing Crypto extensions found in nearly all other ARMv8.1 silicon. Interestingly, it has the CRC32 extension. The BCM2837 is the only CPU I've seen in that configuration - with CRC32, without Crypto. I purchased the ODROID-C2 and PINE64 recently. I'll know something about them soon (they have not arrived yet). –  Jul 30 '16 at 21:36
5

I've found a BCM2837 datasheet linked from Stanford's CS 140e class. It does correctly map the peripherals to address 0x3Fnnnnnnn, unlike 0x20nnnnnn for the BCM2835.

It's at https://web.stanford.edu/class/cs140e/docs/BCM2837-ARM-Peripherals.pdf

This is the description on the class web page:

Our modified version of the BCM2835 documentation with fixes for the BCM2837 and known errata.

kvu787
  • 151
  • 1
  • 2
  • Google gave me that as well. The big question is: can they legally distribute that, and if so, why doesn't Broadcom distribute it themselves from their website / where is it? – Ciro Santilli Jan 02 '19 at 18:38
  • 1
    The link is now dead, as they started a new study year and wiped all previous documents clean. Majestic. – berkus Mar 03 '19 at 15:57
  • A user named attila has found what looks to be a copy of this file in an answer below. https://web.archive.org/web/20190407101616/https://cs140e.sergio.bz/docs/BCM2837-ARM-Peripherals.pdf – Oskar Skog Apr 07 '19 at 10:21
3

The documentation also contains a section for the RPI 3 specifically: https://www.raspberrypi.org/documentation/hardware/raspberrypi/bcm2837/README.md which says:

This is the Broadcom chip used in the Raspberry Pi 3, and in later models of the Raspberry Pi 2. The underlying architecture of the BCM2837 is identical to the BCM2836.

So you can look up the docs for the Pi 2 on a sibling page https://www.raspberrypi.org/documentation/hardware/raspberrypi/bcm2836/README.md which say:

The underlying architecture in BCM2836 is identical to BCM2835.

which is at: https://www.raspberrypi.org/documentation/hardware/raspberrypi/bcm2835/README.md

So I guess you can somewhat trust in the PDFs for the Pi 1 and Pi 2 pages:

2

I found the BCM2837 ARM Peripherals here:

https://cs140e.sergio.bz/docs/BCM2837-ARM-Peripherals.pdf

Attila
  • 21
  • 1
1

The BMC2837 PDF is also available on the raspberrypi github: https://github.com/raspberrypi/documentation/files/1888662/BCM2837-ARM-Peripherals.-.Revised.-.V2-1.pdf

thakis
  • 111
  • 2
1

It seems that BCM2837 shares MIPI interface with camera module, thus distributing the 4 lanes to 2 lane MIPI for DSI and another two for camera support. That's why resolution of display is only 800x600 pixel. If You can use a chip like ICN6202, You can probably convert existing 2 lanes to LVDS and have a third party LCD, but abandoning the camera and using 4 lane MIPI to LVDS would mean to setting the broadcomm chip, without documentation impossible.

KarCol
  • 11
  • 1