- May 24, 2023
-
-
Jose Maria Casanova Crespo authored
Two new debugfs interfaces are implemented: - gpu_usage: exposes the total runtime since boot of each of the 5 scheduling queues available at V3D (BIN, RENDER, CSD, TFU, CACHE_CLEAN). So if the interface is queried at two different points of time the usage percentage of each of the queues can be calculated. - gpu_pid_usage: exposes the same information but to the level of detail of each process using the V3D driver. The runtime for process using the driver is stored. So the percentages of usage by PID can be calculated with measures at different timestamps. The storage of gpu_pid_usage stats is only done if the debugfs interface is polled during the last 70 seconds. If a process does not submit a GPU job during last 70 seconds its stats will also be purged. Signed-off-by: Jose Maria Casanova Crespo <jmcasanova@igalia.com>
-
Phil Elwell authored
It has been observed that edge events can be lost when GPIO edges occur close to each other. Investigation suggests this is due to a hardware bug, although no mechanism has been identified. Work around the event loss by moving the IRQ acknowledgement into the main ISR, adding missing events by explicit level-change detection. See: https://forums.raspberrypi.com/viewtopic.php?t=350295 Signed-off-by: Phil Elwell <phil@raspberrypi.com>
-
Phil Elwell authored
The XFRM_INTERFACE option enables "a virtual interface to route IPsec traffic". Add that as a module, enabling statistics and "sub policy" at the same time. See: https://github.com/raspberrypi/linux/issues/5446 Signed-off-by: Phil Elwell <phil@raspberrypi.com>
-
Phil Elwell authored
With UART numbering from DT aliases re-enabled, add aliases for the additional BCM2711 UARTs. Also use the opportunity to remove some DTS duplication. See: https://forums.raspberrypi.com/viewtopic.php?t=347868 Signed-off-by: Phil Elwell <phil@raspberrypi.com>
-
Phil Elwell authored
This reverts commit c2fa32a8dae4c4b2638c9f4de5e398e98460e693. Consistent, logical UART numbering is desirable, so remove the effective revert. See: https://forums.raspberrypi.com/viewtopic.php?t=347868 Signed-off-by: Phil Elwell <phil@raspberrypi.com>
-
Phil Elwell authored
Now that the kernel controls the onboard Bluetooth initialisation by default, the miniuart-bt overlay needs updating to match. Signed-off-by: Phil Elwell <phil@raspberrypi.com>
-
Phil Elwell authored
Change the base Device Tree files so that by default the kernel is responsible for initialisation of the onboard Bluetooth modems. Use dtparam=krnbt=off to revert to the old behaviour. Signed-off-by: Phil Elwell <phil@raspberrypi.com>
-
Phil Elwell authored
The kernel needs to recognise the default BDADDRs used by the Bluetooth modems, so add a few more that we care about. Signed-off-by: Phil Elwell <phil@raspberrypi.com>
-
Phil Elwell authored
The kernel Bluetooth framework understands that devices may not be programmed with valid Bluetooth addresses. It also has the ability to override a Bluetooth address with the value of the local-bd-address DT property, but it ignores the validity of the existing address when doing so. Add a new boolean property, fallback-bd-address, which indicates that the given local-bd-address property should only be used if the device does not already have a valid BDADDR. Signed-off-by: Phil Elwell <phil@raspberrypi.com>
-
Phil Elwell authored
The BCM2835 mini-UART has no modem status interrupt, causing all transmission to stop, never to use, if a speed change ever happens while the CTS signal is high. Add a simple polling mechanism in order to allow recovery in that situation. Signed-off-by: Phil Elwell <phil@raspberrypi.com>
-
Dave Stevenson authored
Pi 0-3 have no deep colour support and only 24bpp output, so max_bpc should remain as 8. Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
-
Dave Stevenson authored
The driver is only reading a u8, so change the overlay to match. Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
-
Dave Stevenson authored
There is no DT binding for emc2305 as mainline are still discussing how to do a generic fan binding. The 5.15 driver was reading the "emc2305," properties "cooling-levels", "pwm-max", "pwm-min", and "pwm-channel" as u8. The overlay was writing them as u16 (;) so it was working. The 6.1 driver was reading as u32, which failed as there is insufficient data. As this is all downstream only, revert to u8 to match 5.15. Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
-
Phil Elwell authored
Sinc [1] uaccess_with_memcpy.c uses __memcpy instead of memcpy. Make the optimised memcpy available as __memcpy as well to avoid linkage failures. [1] ceac10c8 ("ARM: 9290/1: uaccess: Fix KASAN false-positives") Signed-off-by: Phil Elwell <phil@raspberrypi.com>
-
Dave Stevenson authored
The i2c-pwm-pca9685a overlay was fixed to i2c-1. Add overrides to allow it to be assigned to alternate buses. Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
-
Dave Stevenson authored
The i2c-mux overlay was fixed to i2c-1. Add overrides to allow it to be assigned to alternate buses. Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
-
David Lechner authored
There is an off-by-one error in the default brightness for the PWM backlight in the MIPI DBI SPI overlay that produces the following message in the kernel logs: pwm-backlight backlight_pwm: invalid default brightness level: 16, using 15 The value is 0-based, so the max brightness is 15, not 16. Signed-off-by: David Lechner <david@lechnology.com>
-
Dave Stevenson authored
They come in varying sizes, but all have the same MCU for power control and touch controller. Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
-
Dave Stevenson authored
Adds support for the Waveshare DSI touchscreens. Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
-
Dave Stevenson authored
The interrupt line from the touch controller is not necessarily connected to the SoC, so add the option to poll for touch info. Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
-
Dave Stevenson authored
Waveshare sell a range of DSI panels of varying sizes, all using a common MCU to control the panel and backlight. Add a panel driver that supports these panels. Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
-
Dave Stevenson authored
Commit 46ef9d4e ("hwmon: emc2305: fixups for driver submitted to mailing lists") missed adding the call to thermal_of_cooling_device_register required to configure any cooling maps for the device, hence stopping it from actually ever changing speed. Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
-
Naushir Patuck authored
The 640x480 mode uses a special binning mode for high framerate operation where the pixel rate is effectively doubled. Account for this when setting up the pixel clock rate, and applying the vblank and exposure controls. Signed-off-by: Naushir Patuck <naush@raspberrypi.com>
-
Phil Elwell authored
This reverts commit 947ba6e85ea973b53e2f8d6860b191c0257e04fb. Since [1], the clock driver has automatically rounded up the UART clock frequency, so this patch is no longer needed. [1] f690a4d7 ("clk: bcm2835: Round UART input clock up") Signed-off-by: Phil Elwell <phil@raspberrypi.com>
-
Dom Cobley authored
We believe the OOM issue with MGLRU on 32-bit kernel only affects Pi4 which uses CONFIG_VMSPLIT_3G. Pi0-3 which use CONFIG_VMSPLIT_2G is expected not to suffer from this OOM issue. So lets enable MGLRU by default for these users, who many benefit from the advantages it has. See: https://github.com/raspberrypi/linux/issues/5395 Signed-off-by: Dom Cobley <popcornmix@gmail.com>
-
Clarke X authored
Add CHARGER_GPIO module into default kernel config Signed-off-by: Clarke X <1014930533@qq.com>
-
Clarke X authored
Add gpio-charger overlay for charger via gpio. Signed-off-by: Clarke X <1014930533@qq.com>
-
Clarke X authored
Add pcf857x overlay with related documents. Signed-off-by: Clarke X <1014930533@qq.com>
-
MilkyDeveloper authored
Complete USB Gadget Support to bcmrpi3_defconfig Cross-referenced with bcm2711_defconfig to include the same USB gadgets. Adds support for the Pi 3 and derivative devices (BCM2837) such as the Pi Zero 2 W. See: https://github.com/raspberrypi/linux/pull/5427
-
Phil Elwell authored
Since there is now a dedicated dts file for the rev1 Model B (the only Pi to drive the primary camera with i2c1), move the creation of the i2c_arm, i2c_vc and i2c labels, aliases and overrides into the base dts files. Signed-off-by: Phil Elwell <phil@raspberrypi.com>
-
Dave Stevenson authored
The patch adding image encode (JPEG) to the driver missed adding the alignment constraint for V4L2_PIX_FMT_RGBA32, which meant it ended up giving a stride and size of 0. Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
-
Phil Elwell authored
The kernel's time unit of jiffies should be stored as an unsigned long value. Storing it as an unsigned int, as gpio-fsm did, leads to truncation and malfunction when the kernel is built for a 64-bit platform. Signed-off-by: Phil Elwell <phil@raspberrypi.com>
-
Dave Stevenson authored
media_pipeline_start and media_pipeline_stop now validate that the pipeline is being started and stopped with the same pipe and pad handles. When running with embedded metadata (eg imx477 and imx708), the start typically happens from the metadata pad, whilst stop is always from the image pad. Always pass the image pad to media_pipeline_start to ensure that the calls are balanced. Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
-
Naushir Patuck authored
Create a cluster for the HVLIP and VFLIP controls so they are treated as a single composite control. Signed-off-by: Naushir Patuck <naush@raspberrypi.com>
-
Naushir Patuck authored
Switch the system clock name from "xclk" to "inclk". Use lower case lables for all regulator names. Signed-off-by: Naushir Patuck <naush@raspberrypi.com>
-
Naushir Patuck authored
Switch the system clock name from "xclk" to "inclk". Use lower case lables for all regulator names. Signed-off-by: Naushir Patuck <naush@raspberrypi.com>
-
Naushir Patuck authored
Replace the existing imx708.yaml file with sony,imx708.yaml that follows the latest devicetree conventions for camera sensors. Signed-off-by: Naushir Patuck <naush@raspberrypi.com>
-
Naushir Patuck authored
This commit addresses vaious tidy-ups requesed for upstreaming the IMX708 driver. Notably: - Remove #define IMX708_NUM_SUPPLIES and use ARRAY_SIZE() directly - Use dev_err_probe where possible in imx708_probe() - Fix error handling paths in imx708_probe() Signed-off-by: Naushir Patuck <naush@raspberrypi.com>
-
Naushir Patuck authored
Remove unused and redundant control fields from the state structure. Signed-off-by: Naushir Patuck <naush@raspberrypi.com>
-
Naushir Patuck authored
Add a parameter to change the sensor device CSI-2 link frequency to one of the following values: 450Mhz (default), 447Mhz, or 453Mhz. Signed-off-by: Naushir Patuck <naush@raspberrypi.com>
-