https://github.com/raspberrypi/linux

sort by:
Revision Author Date Message Commit Date
e3376fb media: imx219: Advertise embedded data node on media pad 1 This commit updates the imx219 driver to adverise support for embedded data streams. This can then be used by the bcm2835-unicam driver, which has recently been updated to expose the embedded data stream to userland. The imx219 sensor subdevice overloads the media pad to differentiate between image stream (pad 0) and embedded data stream (pad 1) when performing the v4l2_subdev_pad_ops functions. Signed-off-by: Naushir Patuck <naush@raspberrypi.com> Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com> 14 March 2023, 10:58:07 UTC
7032a77 media: i2c: imx219: make HBLANK r/w to allow longer exposures The HBLANK control was read-only, and always configured such that the sensor HTS register was 3448. This limited the maximum exposure time that could be achieved to around 1.26 secs. Make HBLANK read/write so that the line time can be extended, and thereby allow longer exposures (and slower frame rates). Retain the overall HTS setting when changing modes rather than resetting it to a default. Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com> 14 March 2023, 10:58:06 UTC
555efca media: i2c: imx219: Correct the minimum vblanking value The datasheet for this sensor documents the minimum vblanking as being 32 lines. It does fix some problems with occasional black lines at the bottom of images (tested on Raspberry Pi). Signed-off-by: David Plowman <david.plowman@raspberrypi.com> 14 March 2023, 10:58:06 UTC
4d1d361 media: i2c: imx219: Sensor should report RAW color space Tested on Raspberry Pi running libcamera. Signed-off-by: David Plowman <david.plowman@raspberrypi.com> 14 March 2023, 10:58:06 UTC
9b523e1 overlays: vc4-kms/fkms-v3d: Raise CMA to 512MB On Pi 4, raise the requested CMA size to 512MB by default, on the understanding that the firmware will cap that to 256MB if it's a 32-bit kernel with less than 2GB of RAM. Signed-off-by: Phil Elwell <phil@raspberrypi.com> 14 March 2023, 10:58:06 UTC
b82a46e ARM: dts: bcm2711-rpi-400: Add dummy cam1 regulator Adding the cam1_reg label to the dummy camera regulator gets rid of an error when all overlays are tried against all boards, and brings it closer to what's happening in 6.2. Signed-off-by: Phil Elwell <phil@raspberrypi.com> 14 March 2023, 10:58:06 UTC
ac2bc6b ARM: dts: bcm2711-rpi-400: Restore the ACT LED Pi 400 doesn't have an ACT LED, only a green PWR LED, but a user may wish to remap the ACT functionality to a GPIO on the 40-pin header. Restore the ACT LED declaration, but leave it disabled in order to prevent a GPIO being claimed until either the act_led_gpio dtparam or the act-led overlay is used. Signed-off-by: Phil Elwell <phil@raspberrypi.com> 14 March 2023, 10:58:06 UTC
ea14f14 ARM: dts: Standardise on the upstream LED names Historically, downstream Pi DTS files have named the LEDs led0 and (if present) led1, while upstream have used the more meaningful "ACT" and "PWR". As part of a closer alignment with upstream, make the LED names match. Signed-off-by: Phil Elwell <phil@raspberrypi.com> 14 March 2023, 10:58:05 UTC
84c9048 workflows: We all love checkpatch, so add it to the CI workflows This is currently running on defaults, so the --strict desired for media drivers and similar won't be observed. That may be possible to add later. Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com> 14 March 2023, 10:58:05 UTC
5359abd iio: light: veml6070: Add DT compatible string Signed-off-by: Phil Elwell <phil@raspberrypi.com> 14 March 2023, 10:58:05 UTC
a0d38ea iio: light: tsl4531: Add DT compatible string Signed-off-by: Phil Elwell <phil@raspberrypi.com> 14 March 2023, 10:58:05 UTC
8f8ca5f hwmon: (sht3x) Add DT compatible string Signed-off-by: Phil Elwell <phil@raspberrypi.com> 14 March 2023, 10:58:05 UTC
e6aeecf rtc: ds3232: Add DT compatible string for ds3234 Signed-off-by: Phil Elwell <phil@raspberrypi.com> 14 March 2023, 10:58:05 UTC
f3bf607 hwmon: (ds1621) Add DT compatible strings Signed-off-by: Phil Elwell <phil@raspberrypi.com> 14 March 2023, 10:58:04 UTC
19867a0 hwmon: (aht10): Add DT compatible string Signed-off-by: Phil Elwell <phil@raspberrypi.com> 14 March 2023, 10:58:04 UTC
d0ed2d4 configs: Enable some modules required by overlays Signed-off-by: Phil Elwell <phil@raspberrypi.com> 14 March 2023, 10:58:04 UTC
87c8837 gpio: pca953x: Add ti,tca9554 compatible string Signed-off-by: Phil Elwell <phil@raspberrypi.com> 14 March 2023, 10:58:04 UTC
294d81c mfd: arizona-i2c: Declare of MODULE_DEVICE_TABLE Without a MODULE_DEVICE_TABLE declare for the of_device_ids, the compatible strings won't be turned into module aliases. Signed-off-by: Phil Elwell <phil@raspberrypi.com> 14 March 2023, 10:58:04 UTC
0c16f10 overlays: Use vendor-qualified compatible strings Signed-off-by: Phil Elwell <phil@raspberrypi.com> 14 March 2023, 10:58:04 UTC
91f6b47 ASoC: adau1977: Add correct compatible strings Signed-off-by: Phil Elwell <phil@raspberrypi.com> 14 March 2023, 10:58:03 UTC
5d5763a iio: adc: mcp3422: Add correct compatible strings Signed-off-by: Phil Elwell <phil@raspberrypi.com> 14 March 2023, 10:58:03 UTC
3ef246e overlays: pca953x: Fix a typos in the pcal variants Signed-off-by: Phil Elwell <phil@raspberrypi.com> 14 March 2023, 10:58:03 UTC
47c0bc3 overlays: Remove lirc-rpi from media-center lirc-rpi was retired years ago, suggesting that this overlay is not being used. Before deleting outright, remove the lirc-rpi element. Signed-off-by: Phil Elwell <phil@raspberrypi.com> 14 March 2023, 10:58:03 UTC
7c78a28 drm/panel/panel-sitronix-st7701: Support SPI config and RGB data The ST7701 supports numerous different interface mechanisms for MIPI DSI, RGB, or SPI. The driver was only implementing DSI input, so add RGB parallel input with SPI configuration. Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com> 14 March 2023, 10:58:03 UTC
b249b23 dtoverlays: Add Arducam64MP support to camera mux overlays Signed-off-by: Lee Jackson <lee.jackson@arducam.com> 14 March 2023, 10:58:03 UTC
2f35e1d dtoverlays: Add VCM option to Arducam64MP VCM is enabled by default, but you can use 'vcm=off' to disable VCM support. Signed-off-by: Lee Jackson <lee.jackson@arducam.com> 14 March 2023, 10:58:02 UTC
a35b5da ASoC: bcm: Fix Rpi-PROTO and audioinjector.net Pi As of kernel 5.19 the WM8731 driver has separate I2C and SPI support modules. Change the Kconfig definitions for the audioinjector.net Pi and Rpi-PROTO soundcards to select SND_SOC_WM8731_I2C. See: https://github.com/raspberrypi/linux/issues/5364 Signed-off-by: Phil Elwell <phil@raspberrypi.com> 14 March 2023, 10:58:02 UTC
8326f95 vc04_services: bcm2835_codec: Ignore READ_ONLY ctrls in s_ctrl In adding the MPEG2/MPEG4/H264 level and profile controls to the decoder, they weren't declared as read-only, nor handlers added to bcm2835_codec_s_ctrl. That resulted in an error message "Invalid control" being logged every time v4l2_ctrl_handler_setup was called from bcm2835_codec_create_component. Define those controls as read only, and exit early from s_ctrl on read only controls. Fixes: "media: bcm2835-v4l2-codec: Add profile & level ctrls to decode" Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com> 14 March 2023, 10:58:02 UTC
bfa7191 dtoverlays: Add IMX519 support to camera mux overlays Signed-off-by: Lee Jackson <lee.jackson@arducam.com> 14 March 2023, 10:58:02 UTC
3d207e2 dtoverlays: Add VCM option to imx519 VCM is enabled by default, but you can use 'vcm=off' to disable VCM support. Signed-off-by: Lee Jackson <lee.jackson@arducam.com> 14 March 2023, 10:58:02 UTC
e4d6615 configs: Add CONFIG_VIDEO_AK7375=m Include the driver module for the AK7375. Signed-off-by: Lee Jackson <lee.jackson@arducam.com> 14 March 2023, 10:58:02 UTC
831502b media: i2c: ak7375: Add regulator management commit 90f7e76eac50c1ae54a445abc6a286837ade46cf upstream Make the driver get needed regulators on probe and enable/disable them on runtime PM callbacks. Signed-off-by: Yassine Oudjana <y.oudjana@protonmail.com> Tested-by: Umang Jain <umang.jain@ideasonboard.com> 14 March 2023, 10:58:01 UTC
8c0ff21 media: dt-bindings: ak7375: Add supplies commit 04a79f078329b14f260db15250e84c97022f42cd upstream Add supply properties to describe regulators needed to power the AK7375 VCM. Signed-off-by: Yassine Oudjana <y.oudjana@protonmail.com> Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Tested-by: Umang Jain <umang.jain@ideasonboard.com> 14 March 2023, 10:58:01 UTC
1992d66 media: dt-bindings: ak7375: Convert to DT schema commit 6d801f89ad7c485bbb14c0138d991beebd307aa6 upstream Convert DT bindings document for AKM AK7375 VCM to DT schema format and add an example. Signed-off-by: Yassine Oudjana <y.oudjana@protonmail.com> Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Tested-by: Umang Jain <umang.jain@ideasonboard.com> 14 March 2023, 10:58:01 UTC
b8dacbe drm/vc4: Calculate bpc based on max_requested_bpc This aligns vc4 with Intel, AMD and Synopsis drivers and fixes max bpc connector property not working as expected on monitors with YCbCr 4:2:2 support but not deep color support. max_bpc in connector state is clamped at max_bpc from display info and the latter only takes deep color modes into account so it will always be 8, even if the display can do 4:2:2 12-bit output. Signed-off-by: Matthias Reichl <hias@horus.com> 14 March 2023, 10:58:01 UTC
ab578af drm/vc4_plane: Add support for YUV444 formats Support displaying DRM_FORMAT_YUV444 and DRM_FORMAT_YVU444 formats. Tested with kmstest and kodi. e.g. kmstest -r 1920x1080@60 -f 400x300-YU24 Note: without the shift of width, only half the chroma is fetched, resulting in correct left half of image and corrupt colours on right half. The increase in width shouldn't affect fetching of Y data, as the hardware will clamp at dest width. Signed-off-by: Dom Cobley <popcornmix@gmail.com> 14 March 2023, 10:58:01 UTC
a6ac424 media: bcm2835-v4l2-codec: Add profile & level ctrls to decode In order to support discovery of what profile & levels are supported by stateful decoders implement the profile and level controls where they are defined by V4L2. Signed-off-by: John Cox <jc@kynesim.co.uk> 14 March 2023, 10:58:01 UTC
e547ed6 configs: Add MTD_SPI_NAND=m See: https://github.com/raspberrypi/linux/issues/5338 Signed-off-by: Phil Elwell <phil@raspberrypi.com> 14 March 2023, 10:58:00 UTC
bf7563b configs: add CONFIG_DM_INTEGRITY=m This is necessary for volumes with integrity protection, both with and without DM_CRYPT. Signed-off-by: Stanislav Zidek <e.p@centrum.cz> 14 March 2023, 10:58:00 UTC
37d2ae8 .github/workflows: Retain artifacts for 90 days Signed-off-by: Phil Elwell <phil@raspberrypi.com> 14 March 2023, 10:58:00 UTC
f4649cf README.md: Replace 6.0 build status with 6.2 6.0 is EOL and 6.2 is heading towards release, so update the build status display accordingly. 14 March 2023, 10:58:00 UTC
7373c65 ARM: dts: Set the LED default-state to "off" The default-state property for an LED determines the state of the LED when its trigger is set to "none". Many users expect that specifying a trigger of "none" means that the LED will be off, and there is a logic to that assumption, but the current default of "keep" makes the assumption false. Given that no Pi models have a default-trigger of "none", changing the default-state should have no visible impact for most people, but doing so will permit a more obvious and more consistent way of turning off the LEDs. Note that 6.2 included an upstream DT reorganisation that required some downstream changes, and while doing that I changed the default states. This commit brings rpi-6.1.y into line with rpi-6.2.y. See: https://github.com/raspberrypi/firmware/issues/1742 Signed-off-by: Phil Elwell <phil@raspberrypi.com> 14 March 2023, 10:58:00 UTC
12e28f0 drm/vc4: hvs: Destroy dlist allocations immediately when running a test When running a kunit test, the driver runs with a mock device. As such, any attempt to read or write to a hardware register will fail the current test immediately. The dlist allocation management recently introduced will read the current frame count from the HVS to defer its destruction until a subsequent frame has been output. This obviously involves a register read that fails the Kunit tests. Change the destruction deferral function to destroy the allocation immediately if we run under kunit. This is essentially harmless since the main reason for that deferall is to prevent any access to the hardware dlist while a frame described by that list is rendered. On our mock driver, we have neither a hardware dlist nor a rendering, so it doesn't matter. Signed-off-by: Maxime Ripard <maxime@cerno.tech> 14 March 2023, 10:58:00 UTC
63fc438 drm/vc4: hvs: Move the dlist allocation destruction to a function We'll need to destroy a dlist allocation in multiple code paths, so let's move it to a separate function. Signed-off-by: Maxime Ripard <maxime@cerno.tech> 14 March 2023, 10:57:59 UTC
e4abd90 drm/vc4: hvs: Initialize the dlist allocation list entry The vc4_hvs_dlist_allocation structure has a list that we don't initialize when we allocate a new instance. This makes any call reading the list structure (such as list_empty) fail with a NULL pointer dereference. Let's make sure our list is always initialized. Signed-off-by: Maxime Ripard <maxime@cerno.tech> 14 March 2023, 10:57:59 UTC
6395d01 kunit: Use the static key when retrieving the current test In order to detect if a KUnit test is running, and to access its context, the 'kunit_test' member of the current task_struct is used. Usually, this is accessed directly or via the kunit_fail_current_task() function. In order to speed up the case where no test is running, add a wrapper, kunit_get_current_test(), which uses the static key to fail early. Equally, Speed up kunit_fail_current_test() by using the static key. This should make it convenient for code to call this unconditionally in fakes or error paths, without worrying that this will slow the code down significantly. If CONFIG_KUNIT=n (or m), this compiles away to nothing. If CONFIG_KUNIT=y, it will compile down to a NOP (on most architectures) if no KUnit test is currently running. Note that kunit_get_current_test() does not work if KUnit is built as a module. This mirrors the existing restriction on kunit_fail_current_test(). Note that the definition of kunit_fail_current_test() still wraps an empty, inline function if KUnit is not built-in. This is to ensure that the printf format string __attribute__ will still work. Also update the documentation to suggest users use the new kunit_get_current_test() function, update the example, and to describe the behaviour when KUnit is disabled better. Cc: Jonathan Corbet <corbet@lwn.net> Cc: Sadiya Kazi <sadiyakazi@google.com> Signed-off-by: David Gow <davidgow@google.com> Reviewed-by: Daniel Latypov <dlatypov@google.com> Signed-off-by: Shuah Khan <skhan@linuxfoundation.org> 14 March 2023, 10:57:59 UTC
17b8f08 kunit: Provide a static key to check if KUnit is actively running tests KUnit does a few expensive things when enabled. This hasn't been a problem because KUnit was only enabled on test kernels, but with a few people enabling (but not _using_) KUnit on production systems, we need a runtime way of handling this. Provide a 'kunit_running' static key (defaulting to false), which allows us to hide any KUnit code behind a static branch. This should reduce the performance impact (on other code) of having KUnit enabled to a single NOP when no tests are running. Note that, while it looks unintuitive, tests always run entirely within __kunit_test_suites_init(), so it's safe to decrement the static key at the end of this function, rather than in __kunit_test_suites_exit(), which is only there to clean up results in debugfs. Signed-off-by: David Gow <davidgow@google.com> Reviewed-by: Daniel Latypov <dlatypov@google.com> Signed-off-by: Shuah Khan <skhan@linuxfoundation.org> 14 March 2023, 10:57:59 UTC
53be559 overlays: i2c-sensor: Add SHT4X support Add support for the Sensirion SHT4X temperature and humidity sensor. See: https://github.com/raspberrypi/linux/issues/5334 Signed-off-by: Phil Elwell <phil@raspberrypi.com> 14 March 2023, 10:57:59 UTC
0e84104 configs: Enable the sht4x driver See: https://github.com/raspberrypi/linux/issues/5334 Signed-off-by: Phil Elwell <phil@raspberrypi.com> 14 March 2023, 10:57:59 UTC
52ae709 .github/workflows: Switch to a matrix build Remove the per-build duplication by putting build parameters in a matrix. Signed-off-by: Phil Elwell <phil@raspberrypi.com> 14 March 2023, 10:57:58 UTC
282f805 media: bcm2835-v4l2-codec: Enable selection ioctl for ISP The ISP cases do nothing. Remove the break that separates them from the deinterlace case so they now do the same as deinterlace. This enables simple width & height setting, but does not enable setting left and top coordinates. Signed-off-by: John Cox <jc@kynesim.co.uk> 14 March 2023, 10:57:58 UTC
b23136c vc4/hdmi: Always enable GCP with AVMUTE cleared See: https://forum.libreelec.tv/thread/24780-le-10-0-1-rpi4-no-picture-after-update-from-le-10-0-0 Issue is some displays go blank at the point of firmware to kms handover. Plugging/unplugging hdmi cable, power cycling display, or switching standby off/on typically resolve this case. Finally managed to find a display that suffers from this, and track down the issue. The firmware uses AVMUTE in normal operation. It will set AVMUTE before disabling hdmi clocks and phy. It will clear AVMUTE after clocks and phy are set up for a new hdmi mode. But with the hdmi handover from firmware to kms, AVMUTE will be set by firmware. kms driver typically has no GCP packet (except for deep colour modes). The spec isn't clear on whether to consider the AVMUTE as continuing indefinitely in the absense of a GCP packet, or to consider that state to have ended. Most displays behave as we want, but there are a number (from mutiple manufacturers) which need to see AVMUTE cleared before displaying a picture. Lets just always enable GCP packet with AVMUTE cleared. That resolves the issue on problematic displays. From HDMI 1.4 spec: A CD field of zero (Color Depth not indicated) shall be used whenever the Sink does not indicate support for Deep Color. This value may also be used in Deep Color mode to transmit a GCP indicating only non-Deep Color information (e.g. AVMUTE). So use CD=0 where we were previously not enabling a GCP. Signed-off-by: Dom Cobley <popcornmix@gmail.com> 14 March 2023, 10:57:58 UTC
013f247 drm/vc4: hvs: Defer dlist slots deallocation During normal operations, the cursor position update is done through an asynchronous plane update, which on the vc4 driver basically just modifies the right dlist word to move the plane to the new coordinates. However, when we have the overscan margins setup, we fall back to a regular commit when we are next to the edges. And since that commit happens to be on a cursor plane, it's considered a legacy cursor update by KMS. The main difference it makes is that it won't wait for its completion (ie, next vblank) before returning. This means if we have multiple commits happening in rapid succession, we can have several of them happening before the next vblank. In parallel, our dlist allocation is tied to a CRTC state, and each time we do a commit we end up with a new CRTC state, with the previous one being freed. This means that we free our previous dlist entry (but don't clear it though) every time a new one is being committed. Now, if we were to have two commits happening before the next vblank, we could end up freeing reusing the same dlist entries before the next vblank. Indeed, we would start from an initial state taking, for example, the dlist entries 10 to 20, then start a commit taking the entries 20 to 30 and setting the dlist pointer to 20, and freeing the dlist entries 10 to 20. However, since we haven't reach vblank yet, the HVS is still using the entries 10 to 20. If we were to make a new commit now, chances are the allocator are going to give the 10 to 20 entries back, and we would change their content to match the new state. If vblank hasn't happened yet, we just corrupted the active dlist entries. A first attempt to solve this was made by creating an intermediate dlist buffer to store the current (ie, as of the last commit) dlist content, that we would update each time the HVS is done with a frame. However, if the interrupt handler missed the vblank window, we would end up copying our intermediate dlist to the hardware one during the composition, essentially creating the same issue. Since making sure that our interrupt handler runs within a fixed, constrained, time window would require to make Linux a real-time kernel, this seems a bit out of scope. Instead, we can work around our original issue by keeping the dlist slots allocation longer. That way, we won't reuse a dlist slot while it's still in flight. In order to achieve this, instead of freeing the dlist slot when its associated CRTC state is destroyed, we'll queue it in a list. A naive implementation would free the buffers in that queue when we get our end of frame interrupt. However, there's still a race since, just like in the shadow dlist case, we don't control when the handler for that interrupt is going to run. Thus, we can end up with a commit adding an old dlist allocation to our queue during the window between our actual interrupt and when our handler will run. And since that buffer is still being used for the composition of the current frame, we can't free it right away, exposing us to the original bug. Fortunately for us, the hardware provides a frame counter that is increased each time the first line of a frame is being generated. Associating the frame counter the image is supposed to go away to the allocation, and then only deallocate buffers that have a counter below or equal to the one we see when the deallocation code should prevent the above race from occuring. Signed-off-by: Maxime Ripard <maxime@cerno.tech> 14 March 2023, 10:57:58 UTC
40e2914 dtoverlay: Update vc4-kms-dpi-generic for changed mediabus formats Several of the media bus formats aren't merged upstream yet, therefore the values change when upstream does introduce new formats. As vc4-kms-dpi-generic references the media bus formats explicitly by number, update it to match. Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com> 14 March 2023, 10:57:58 UTC
51ab4bf overlays: i2c-sensor: Add BNO055 IMU sensor Add support for the Bosch BNO055 9-dof IMU sensor. Signed-off-by: PolarStarWalker <savmot1929@gmail.com> Signed-off-by: Phil Elwell <phil@raspberrypi.com> 14 March 2023, 10:57:58 UTC
bdf3e4b overlays: i2c-sensor: Use TABs for indentation A whitespace-only change replacing groups of 8 spaces with TABs. Signed-off-by: Phil Elwell <phil@raspberrypi.com> 14 March 2023, 10:57:57 UTC
43f043a configs: Enable BNO055 IMU sensor Signed-off-by: PolarStarWalker <savmot1929@gmail.com> 14 March 2023, 10:57:57 UTC
152a449 .github/workflows: Correct kernel builds artifacts Modify the kernel build workflow to create artifacts with the correct names and structure, both as an example of what we expect and in case anyone wants to use the output. Signed-off-by: Phil Elwell <phil@raspberrypi.com> 14 March 2023, 10:57:57 UTC
0f97fbe overlays: i2c-sensor: Add mpu6050 and mpu9250 Add support for the MPU6050 and MPU9250 IMU sensors to the i2c-sensor container overlay. At the same time, deprecate the standalone mpu6050 overlay, but keep it around for now. (Also fix a few typos spotted while editing) See: https://github.com/raspberrypi/linux/issues/5325 Signed-off-by: Phil Elwell <phil@raspberrypi.com> 14 March 2023, 10:57:57 UTC
b4d34a7 .github/workflows: Set warnings-as-errors for builds To avoid code with build warnings being introduced into the tree, force CONFIG_WERROR=y in the build workflow. Signed-off-by: Phil Elwell <phil@raspberrypi.com> 14 March 2023, 10:57:57 UTC
f0d06c9 bcm2835-mmc: Honor return value of mmc_of_parse() bcm2835_mmc_probe() ignores errors returned by mmc_of_parse() and in particular ignores -EPROBE_DEFER, which may be returned if the power sequencing driver configured in the devicetree is compiled as a module. The user-visible result is that access to the SDIO device fails because its power sequencing requirements have not been observed. Fix it. Signed-off-by: Lukas Wunner <lukas@wunner.de> 14 March 2023, 10:57:57 UTC
7b66d84 drm/vc4: hdmi: Add property to allow manual config of RGB or YCbCr Add a custom property "Output format" that allows the overriding of the default colourspace choice in the way that the old firmware hdmi_pixel_encoding property did. If the chosen format is not supported, then it will still drop back to the older behaviour. This won't be acceptable to upstream, but it adds back the missing functionality of hdmi_pixel_encoding. Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com> 14 March 2023, 10:57:56 UTC
381da14 drm/vc4: hdmi: Correct CSC setup for YCbCr4:4:4 The CSC requires the coefficients to be swapped around for 4:4:4 mode, but the swap was incorrectly defined. Correct the swap. Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com> 14 March 2023, 10:57:56 UTC
f2fd857 drm_probe_helper: Cancel previous job before starting new one Currently we schedule a call to output_poll_execute from drm_kms_helper_poll_enable for 10s in future. Later we try to replace that in drm_helper_probe_single_connector_modes with a 0s schedule with delayed_event set. But as there is already a job in the queue this fails, and the immediate job we wanted with delayed_event set doesn't occur until 10s later. And that call acts as if connector state has changed, reprobing modes. This has a side effect of waking up a display that has been blanked. Make sure we cancel the old job before submitting the immediate one. Signed-off-by: Dom Cobley <popcornmix@gmail.com> 14 March 2023, 10:57:56 UTC
4d439c2 configs: Add DM_MULTIPATH=m "Allow volume managers to support multipath hardware." See: https://github.com/raspberrypi/linux/issues/4886 Signed-off-by: Phil Elwell <phil@raspberrypi.com> 14 March 2023, 10:57:56 UTC
2276ee4 drivers: media: i2c: imx708: Fix crop information The 1536x864 mode contained incorrect crop information. Signed-off-by: David Plowman <david.plowman@raspberrypi.com> 14 March 2023, 10:57:56 UTC
50dfb23 drivers: media: imx708: Enable long exposure mode Enable long exposure modes by using the long exposure shift register setting in the imx708 sensor. Signed-off-by: Naushir Patuck <naush@raspberrypi.com> 14 March 2023, 10:57:56 UTC
befd958 configs: Enable the MS5637 temp + pressure driver Signed-off-by: Phil Elwell <phil@raspberrypi.com> 14 March 2023, 10:57:55 UTC
b84e8ea overlays: i2c-sensor: MS temp & pressure sensors Add support for the Measurement Specialities temperature and pressure sensors to the i2c-sensor overlay. The supported devices are MS5637, MS5803, MS5805, MS5837 and MS8607. Signed-off-by: Phil Elwell <phil@raspberrypi.com> 14 March 2023, 10:57:55 UTC
5ae74cd net: phy: broadcom: Make LEDs 3+4 shadow LEDs 1+2 CM4 uses BCM54210PE, which supports 2 additional LEDs, choosing LED3 for the amber LED because it shows activity by default (LED4 is not connected). However, this makes it uncontrollable by the eth_led<n> dtparams which target LEDs 1+2. Solve the problem by making LEDs 3+4 mirror LEDs 1+2 (which is much simpler than adding baseboard-specific overrides, but comes with a risk of making one of the LEDs redundant). See: https://github.com/raspberrypi/linux/issues/5289 Signed-off-by: Phil Elwell <phil@raspberrypi.com> 14 March 2023, 10:57:55 UTC
fa45fc7 dtoverlays: Add overlays for the IMX708 image sensor New overlay to support the Sony IMX708 image sensor. This includes a VCM for lens control. Also adds support to the camera mux overlays. Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com> 14 March 2023, 10:57:55 UTC
1a6543e defconfigs: Add IMX708 to all Pi defconfigs Adds the IMX708 image sensor driver to the defconfigs. Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com> 14 March 2023, 10:57:55 UTC
69cbf67 media/i2c: Add a driver for the Sony IMX708 image sensor The imx708 is a 12MP MIPI sensor with a 16:9 aspect ratio, here using two CSI-2 lanes. It is a "quad Bayer" sensor with all 3 modes offering 10-bit output: 12MP: 4608x2592 up to 14.35fps (full FoV) 1080p: 2304x1296 up to 56.02fps (full FoV) 720p: 1536x864 up to 120.12fps (cropped) This imx708 sensor driver is based heavily on the imx477 driver and has been tested on the Raspberry Pi platform using libcamera. Signed-off-by: Nick Hollinghurst <nick.hollinghurst@raspberrypi.com> Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com> 14 March 2023, 10:57:55 UTC
1ee5520 dtbindings: media: i2c: Add IMX708 CMOS sensor binding Add YAML devicetree binding for IMX708 CMOS image sensor. Let's also add a MAINTAINERS entry for the binding and driver. Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com> 14 March 2023, 10:57:54 UTC
12da899 media: dw9807-vcm: Smooth the first user movement of the lens The power up/down sequence is already ramped. Extend this to the first user movement as well, as this will generally avoid the "tick" noises due to rapid movements and overshooting. Subsequent movements are generally smaller and so don't cause issues. Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com> 14 March 2023, 10:57:54 UTC
3101a25 media: dw9807-vcm: Add regulator support to the driver Uses the regulator notifier framework so that the current focus position will be restored whenever any user of the regulator powers it up. This means that should the VCM and sensor share a common regulator then starting the sensor will automatically restore the default position. If they have independent regulators then it will behave be powered up when the VCM subdev is opened. Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com> 14 March 2023, 10:57:54 UTC
84d6bc8 media: dt-bindings: Add regulator to dw9807-vcm The VCM driver will often be controlled via a regulator, therefore add in the relevant DT hooks. Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com> 14 March 2023, 10:57:54 UTC
da6428a media: dw9807-vcm: Add support for DW9817 bidirectional VCM driver The DW9817 is effectively the same as DW9807 from a programming interface, however it drives +/-100mA instead of 0-100mA. This means that the power on ramp needs to take the lens from the midpoint, and power off return it there. It also changes the default position for the module. Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com> 14 March 2023, 10:57:54 UTC
b705663 media: dt-bindings: Add DW9817 to DW9807 binding The DW9817 is programmatically the same as DW9807, but the output drive is a bi-directional -100 to +100mA instead of 0-100mA. Add the appropriate compativle string. Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com> 14 March 2023, 10:57:54 UTC
e171fa9 overlays: audremap: Fix setting of the pin function The brcm,function property must be set in the overlay fragment too - otherwise the parametrization won't work. At least that's the case for bcm2711-rpi-cm4.dts which starts with empty properties: &gpio { audio_pins: audio_pins { brcm,pins = <>; brcm,function = <>; }; }; This was broken since a56df85d2f42fd461fdc05f33617141aca5ba465. Signed-off-by: Krzysztof Kotlenga <k.kotlenga@sims.pl> 14 March 2023, 10:57:53 UTC
112f518 configs: Enable PWM drivers Add CONFIG_PWM, which now predicates the PWM drivers. Signed-off-by: Phil Elwell <phil@raspberrypi.com> 14 March 2023, 10:57:53 UTC
bedf602 drm/panel: simple: Add Innolux AT056tN53V1 5.6" VGA Add support for the Innolux AT056tN53V1 5.6" VGA (640x480) TFT LCD panel. Signed-off-by: Joerg Quinten <aBUGSworstnightmare@gmail.com> Signed-off-by: Phil Elwell <phil@raspberrypi.com> 14 March 2023, 10:57:53 UTC
7649d2d xhci: constrain XHCI_VLI_HUB_TT_QUIRK to old firmware versions VLI have a firmware update for the VL805 which resolves the incorrect frame time calculation in the hub's TT. Limit applying the quirk to known-bad firmwares. Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com> 14 March 2023, 10:57:53 UTC
b4173f5 overlays: Add disable-emmc2 Add a new overlay that disables the EMMC2 controller on BCM2711. This can be useful on a Compute Module 4 if the onboard EMMC2 storage is unreliable and the system can be booted by other means e.g Network / USB. Signed-off-by: Tim Gover <tim.gover@raspberrypi.com> 14 March 2023, 10:57:53 UTC
b8d518e dt: Add camX_reg and camX_reg_gpio overrides to CM4S CM4S follows the pattern of CM1&3 for routing camera GPIO control, but didn't have the overrides defined to allow enabling and configuring the camera regulator GPIOs. Add them. Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com> 14 March 2023, 10:57:53 UTC
37c1aa1 dt: Add camX_reg_gpio to CM4 To make it easier for custom routing of camera control GPIOs, add the camX_reg_gpio parameter to CM4 DT as well. Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com> 14 March 2023, 10:57:52 UTC
ede8192 dt: Correct cam_reg GPIO assignments for CM1&3. The standard instructions for wiring up cameras on CM1&3 assign GPIOs for both the shutdown and LED pins on the camera connectors. The assignment in DT matched the LED wiring, not the shutdown line, so didn't control the camera power correctly. Update the base DT accordingly. Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com> 14 March 2023, 10:57:52 UTC
d4b7a20 dtoverlays: Add overlay cm-swap-i2c0 to swap buses on i2c0mux The legacy camera stack wiring instructions connect the cameras to the opposite sets of GPIOs compared to the arrangement more normally used with libcamera on all other platforms. Add an overlay to allow easy swapping of the assignments so that the legacy wiring can be used with libcamera. Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com> 14 March 2023, 10:57:52 UTC
32047ab dts: bcm2711: Add 'eee' dtparam The 'eee' dtparam allows EEE to be disabled on the onboard Ethernet controller. Adding 'dtparam=eee=off' to config.txt causes 'genet.eee=N' to be added to the kernel command line, which in turn tells the Genet driver to disable EEE. See: https://github.com/raspberrypi/linux/issues/4289 Signed-off-by: Phil Elwell <phil@raspberrypi.com> 14 March 2023, 10:57:52 UTC
941657a net: bcmgenet: Add 'eee' module parameter On some switches, having EEE enabled causes the link to become unstable. With this patch, adding 'genet.eee=N' to the kernel command line will cause EEE to be disabled on the link. See: https://github.com/raspberrypi/linux/issues/4289 Signed-off-by: Phil Elwell <phil@raspberrypi.com> 14 March 2023, 10:57:52 UTC
1f52c17 configs: Add 8DEV USB2CAN driver support See: https://github.com/raspberrypi/linux/pull/5273 Requested-by: lihgong <lihgong@gmail.com> Signed-off-by: Phil Elwell <phil@raspberrypi.com> 14 March 2023, 10:57:52 UTC
5658307 overlays: Add crystalfontz-cfa050_pi_m Add support for the Crystalfontz CFA050-PI-M series of Raspberry Pi CM4-based modules using the CFAF7201280A0_050Tx TFT LCD displays. Signed-off-by: Mark Williams <mwp@mwp.id.au> 14 March 2023, 10:57:51 UTC
f1bf82b configs: Enable LM3630A backlight module Added LM3630A module to defconfig to support Crystalfontz CFA050-PI-M. Signed-off-by: Mark Williams <mwp@mwp.id.au> 14 March 2023, 10:57:51 UTC
e34e022 drm/panel: panel-ilitek9881c: Crystalfontz support Add support for Crystalfontz CFAF7201280A0-050Tx panel. Signed-off-by: Mark Williams <mwp@mwp.id.au> 14 March 2023, 10:57:51 UTC
f3d9a8d drm/panel: panel-ilitek9881c: Use cansleep methods Use cansleep version of gpiod_set_value so external IO drivers (like via I2C) can be used. Signed-off-by: Mark Williams <mwp@mwp.id.au> 14 March 2023, 10:57:51 UTC
a973907 README: Add README.md with CI kernel build status tags This is a copy of README with the tags added. You can not delete the file README as then checkpatch complains you aren't in a kernel tree. Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com> 14 March 2023, 10:57:51 UTC
2c7d316 .github/workflows: Create workflow to CI kernel builds Builds the bcmrpi, bcm2709, bcm2711, and bcm2835 32 bit kernels, and defconfig and bcm2711 64bit kernels, saving the artifacts for 7 days. Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com> 14 March 2023, 10:57:51 UTC
a2f0dc0 .github/workflows: Add dtoverlaycheck workflow Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com> 14 March 2023, 10:57:50 UTC
c354e04 .github: Add Github Workflow for KUnit Now that we have some KUnit coverage, let's add a github actions file to run them on each push or pull request. Signed-off-by: Maxime Ripard <maxime@cerno.tech> 14 March 2023, 10:57:50 UTC
8ce05be Documentation: gpu: vc4: Add KUnit Tests Section Now that we have VC4-specific tests in place, let's document them properly. Signed-off-by: Maxime Ripard <maxime@cerno.tech> 14 March 2023, 10:57:50 UTC
back to top