3 ms·
The iPhone is probably the only major device where the modem is a USB peripheral. Qualcomm, Samsung, and Meditek all offer DMA between their radios and ARM core
by subway 8y ago
The iPhone is probably the only major device where the modem is a USB peripheral. Qualcomm, Samsung, and Meditek all offer DMA between their radios and ARM cores.
I certainly don't trust any of those players to even ship relatively secure or even modern code to boot the ARM cores, let alone properly protect memory.
With the Purism stance of ensuring the baseband is on separate silicon, on a relatively limited (and easily hardware isolated) bus, they're able to effectively treat the baseband as an untrusted device.
- codedokode 8y agoCan it be that they just allow modem to use the same RAM and ROM that CPU uses, so that they don't have to install another RAM chip?
- subway 8y agoYes/No/It's Complicated. If when you say "ROM" you're talking about the persistent storage holding the modem's firmware, then absolutely -- that firmware lives in a "vendor" partition on the same emmc as the OS. When talking about "RAM", things get a bit more complex. Most usb and even pcie modems are going to ship with enough built-in (that is, on the same die) RAM to get the job done. They have absolutely no need for the quantities or qualities of external DDR (where your OS is running from most of the time). That said, when the modem is embedded in the SoC, all bets are off -- it's really convenient to share as much as possible, and is entirely possible for the modem cores to depend on the same DDR memory as your ARM cores.
- biktor_gj 8y agoOn Qualcomm SoCs, a chunk of the memory area is reserved for the baseband, and another section is reserved for TrustZone kernel, but it does the same as an integrated GPU in a PC. Then it connects via a pseudo tty with a kernel driver, but as the baseband has more privilleges than the main cpu, it really could do whatever it wants, just like TrustZone.
- cjbprime 8y agoIt can share the CPU's RAM chip without being able to read from (the rest of) it, because of the IOMMU.
- subway 8y agoAnd Qualcomm would never improperly configure their SMMU: https://nvd.nist.gov/vuln/detail/CVE-2016-10444 https://nvd.nist.gov/vuln/detail/CVE-2016-10444 They only sat on this one for two years before fixing it.