- Jun 26, 2019
-
-
Phil Elwell authored
Signed-off-by:
Phil Elwell <phil@raspberrypi.org>
-
Dave Stevenson authored
The firmware sets up simple fb should one of the KMS drivers be enabled, but the driver isn't being built. Add it to the build. Signed-off-by:
Dave Stevenson <dave.stevenson@raspberrypi.org>
-
Dave Stevenson authored
The wrong vc_image formats were being checked for in the switch statement. Correct these. Signed-off-by:
Dave Stevenson <dave.stevenson@raspberrypi.org>
-
Dave Stevenson authored
Without the include the peripheral is configured to have 0 data lanes, which doesn't allow much data to be passed. Signed-off-by:
Dave Stevenson <dave.stevenson@raspberrypi.org>
-
Dave Stevenson authored
Lots of things like USB DVB tuners were missing from the defconfig. Resync it with bcm2709_defconfig Signed-off-by:
Dave Stevenson <dave.stevenson@raspberrypi.org>
-
Phil Elwell authored
Signed-off-by:
Phil Elwell <phil@raspberrypi.org>
-
Phil Elwell authored
The updated bcm2835-dma driver does not require the BULK channel to be removed from the set of available channels, as provided by dma-channel-mask. Signed-off-by:
Phil Elwell <phil@raspberrypi.org>
-
Phil Elwell authored
The 40-bit additions are not fully tested, but it should be capable of supporting both 40-bit memcpy on BCM2711 and regular Lite channels on BCM2835. Signed-off-by:
Phil Elwell <phil@raspberrypi.org>
-
Jonathan Bell authored
Signed-off-by:
Jonathan Bell <jonathan@raspberrypi.org>
-
Phil Elwell authored
This commit adds initial support for 64-bit 2711 builds. However, it will only work as much as it does if the Pi4 RAM is limited to 1GB - more than that and several things break (SD card, coherent allocations, etc.) Signed-off-by:
Phil Elwell <phil@raspberrypi.org>
-
Phil Elwell authored
-
Phil Elwell authored
-
Tim Gover authored
The 2711 B0 boot EEPROM is programmed via SPI0 on GPIO pins 40-43 CS0. Add a device tree overlay to optionally change the SPI0 pinmux from the external GPIO pins to the boot EEPROM pins.
-
Martin Sperl authored
Signed-off-by:
Martin Sperl <kernel@martin.sperl.org>
-
Phil Elwell authored
Signed-off-by:
Phil Elwell <phil@raspberrypi.org>
-
Phil Elwell authored
Signed-off-by:
Phil Elwell <phil@raspberrypi.org>
-
Stefan Wahren authored
We want all common BCM2835/6/7/8 functions in bcm283x.dtsi and all BCM2835/6/7 specific in the new bcm2835-common.dtsi. Signed-off-by:
Stefan Wahren <wahrenst@gmx.net>
-
James Hughes authored
-
Dave Stevenson authored
The allocation code had been copied in from an old branch prior to having added the IDR for 64bit support. It was therefore pushing a pointer into the kernel_id field instead of an IDR handle, the lookup therefore failed, and we never released the buffer. Signed-off-by:
Dave Stevenson <dave.stevenson@raspberrypi.org>
-
Dave Stevenson authored
They weren't errors but were logged as such. Signed-off-by:
Dave Stevenson <dave.stevenson@raspberrypi.org>
-
Dave Stevenson authored
Until the udev rules are updated, open up access to this node by default. Signed-off-by:
Dave Stevenson <dave.stevenson@raspberrypi.org>
-
Dave Stevenson authored
The old driver allowed for direct cache manipulation and that was used by various clients. Replicate here. Signed-off-by:
Dave Stevenson <dave.stevenson@raspberrypi.org>
-
Dave Stevenson authored
Replacing the functionality from the older vc-sm driver, add in a userspace API that allows allocation of buffers, and importing of dma-bufs. The driver hands out dma-buf fds, therefore much of the handling around lifespan and odd mmaps from the old driver goes away. Signed-off-by:
Dave Stevenson <dave.stevenson@raspberrypi.org>
-
Dave Stevenson authored
The driver is already a platform driver, so that can be deleted from the TODO. There are no known issues that need to be resolved. Signed-off-by:
Dave Stevenson <dave.stevenson@raspberrypi.org>
-
Dave Stevenson authored
Module has to change from tristate to bool as all CMA functions are boolean. Signed-off-by:
Dave Stevenson <dave.stevenson@raspberrypi.org>
-
Dave Stevenson authored
Removes obsolete comment about wanting to pass a function pointer into mmal-vchiq as we now do. As the function is passed as a function pointer, the function itself can be static. Signed-off-by:
Dave Stevenson <dave.stevenson@raspberrypi.org>
-
Dave Stevenson authored
The max resolution had been increased from 2048 to 7680 for all platforms. This code is common with Pi0-3 which have a max render target for GL of 2048, therefore the increased resolution has to be conditional on the platform. Switch based on whether the bcm2835-v3d node is found, as that is not present on Pi4. (There is a potential configuration on Pi0-3 with no v3d, but this is very unlikely). Signed-off-by:
Dave Stevenson <dave.stevenson@raspberrypi.org>
-
Dave Stevenson authored
The VPU has configured clocks for 4k (or not) via config.txt, and will limit the choice of video modes based on that. Make fkms query it for these limits too to avoid selecting modes that can not be handled by the current clock setup. Signed-off-by:
Dave Stevenson <dave.stevenson@raspberrypi.org>
-
Dave Stevenson authored
It was accepting NV21 which doesn't map through, but also wasn't advertising the modifier so nothing would know to request it. Signed-off-by:
Dave Stevenson <dave.stevenson@raspberrypi.org>
-
Dave Stevenson authored
Assignment was to the wrong structure. Signed-off-by:
Dave Stevenson <dave.stevenson@raspberrypi.org>
-
Dave Stevenson authored
Extends the DPI/DSI support to also report the VEC output which supports interlacing too. Signed-off-by:
Dave Stevenson <dave.stevenson@raspberrypi.org>
-
Jonathan Bell authored
It's reasonable for the firmware to return zero as the number of attached displays. Handle this case as otherwise drm thinks that the DSI panel is attached, which is nonsense. Signed-off-by:
Jonathan Bell <jonathan@raspberrypi.org>
-
Dave Stevenson authored
For DPI and DSI displays query the firmware as to the configuration and add it as the only mode for DRM. In theory we can add plumbing for setting the DPI/DSI mode from KMS, but this is not being added at present as the support frameworks aren't present in the firmware. Signed-off-by:
Dave Stevenson <dave.stevenson@raspberrypi.org>
-
Dave Stevenson authored
The mode was incorrectly listed as interlaced, which was then rejected. Correct this and FKMS works with the DSI display. Signed-off-by:
Dave Stevenson <dave.stevenson@raspberrypi.org>
-
Dave Stevenson authored
The flags contain info such as limited/full range RGB, aspect ratio, and a fwe other useful things. Signed-off-by:
Dave Stevenson <dave.stevenson@raspberrypi.org>
-
Dave Stevenson authored
The overscan support was required for the old mailbox API in order to match up the cursor and frame buffer planes. With the newer API directly talking to dispmanx there is no difference, therefore FKMS does not need to make any adjustments. Signed-off-by:
Dave Stevenson <dave.stevenson@raspberrypi.org>
-
Stefan Wahren authored
The new BCM2838 supports an additional emmc2 clock. So add a new compatible to register this clock only for BCM2838. Signed-off-by:
Stefan Wahren <wahrenst@gmx.net>
-
Eric Anholt authored
My various attempts at re-enabling runtime PM have failed, so just crank the clock down when V3D is idle to reduce power consumption. Signed-off-by:
Eric Anholt <eric@anholt.net>
-
Eric Anholt authored
The compute shader dispatch interface is pretty simple -- just pass in the regs that userspace has passed us, with no CLs to run. However, with no CL to run it means that we need to do manual cache flushing of the L2 after the HW execution completes (for SSBO, atomic, and image_load_store writes that are the output of compute shaders). This doesn't yet expose the L2 cache's ability to have a region of the address space not write back to memory (which could be used for shared_var storage). So far, the Mesa side has been tested on V3D v4.2 simpenrose (passing the ES31 tests), and on the kernel side on 7278 (failing atomic compswap tests in a way that doesn't reproduce on simpenrose). v2: Fix excessive allocation for the clean_job (reported by Dan Carpenter). Keep refs on jobs until clean_job is finished, to avoid spurious MMU errors if the output BOs are freed by userspace before L2 cleaning is finished. Signed-off-by:
Eric Anholt <eric@anholt.net> Link: https://patchwork.freedesktop.org/patch/msgid/20190416225856.20264-4-eric@anholt.net Acked-by:
Rob Clark <robdclark@gmail.com>
-
Eric Anholt authored
This falls under the same "we can reprogram glitch-free as long as we pause generation" rule as updating the div/frac fields. This can be used for runtime reclocking of V3D to manage power leakage. Signed-off-by:
Eric Anholt <eric@anholt.net>
-