https://github.com/raspberrypi/linux

sort by:
Revision Author Date Message Commit Date
ea34d5a ARM: dts: Move rpi-otp nodes onto a dedicated bus The rpi-otp driver uses a virtualised, OTP-relative addressing scheme. However, when instance nodes are children of "/soc" they appear to be addressable directly by the host, which is wrong (but not in a way which causes an error unless one goes looking for one). Add a wrapper (bus) node without a "ranges" property to make the separation clear. See: https://github.com/raspberrypi/linux/issues/6196 Signed-off-by: Phil Elwell <phil@raspberrypi.com> 03 June 2024, 17:49:20 UTC
e82ad4a fix Hsync and Vsync polarity can't change from negatieve to positief … (#6193) vc4/hdmi: Fix Hsync and Vsync polarity changes Polarity bits were only ever set and never cleared. Make sure they can also be cleared. Signed-off-by: Michiel Vanbiervliet <michiel.vanbiervliet@gmail.com> 03 June 2024, 17:49:20 UTC
73659b0 Update DAC8x to support 384khz (#6187) Update rpi-simple-soundcard.c with 384kHz support. 03 June 2024, 17:49:19 UTC
233fb22 DTS: overlays: add mmio-hi parameter to pciex1-compat-pi5 I225-V network adapters have a buggy ROM that won't complete internal initialisation if (at least) BAR0 has an assigned address of 0x0. Add a parameter to the pciex1-compat-pi5 overlay to make outbound addresses start at 2GB. Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com> 03 June 2024, 17:49:19 UTC
a5abf3c configs: Enable Hailo accelerator driver Signed-off-by: Phil Elwell <phil@raspberrypi.com> 03 June 2024, 17:49:19 UTC
ae1f69e drivers: media: pci: Add Hailo accelerator device drivers Add version 4.17.1 of the Hailo PCIe device drivers. Sourced from https://github.com/hailo-ai/hailort-drivers/ Signed-off-by: Naushir Patuck <naush@raspberrypi.com> 03 June 2024, 17:49:19 UTC
d4aee1d drm/bridge: panel: Name an associated backlight device Pass the DRM connector name to any configured backlight device so that userspace can associate the two items. Ideally this should be in drm_panel, but it is bridge/panel that creates the drm_connector and therefore knows the name. Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com> 03 June 2024, 17:49:19 UTC
46dbe56 backlight: Add a display name to the core, and a function to set it The naming of backlight devices is not terribly useful for associating a backlight controller with a display (assuming it is attached to one). Add a sysfs node that will return a display name that can be set by other subsystems. Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com> 03 June 2024, 17:49:19 UTC
24eef2b ARM: dts: Fix camera sync parameters The camera sync parameter declarations include are invalid in that they have both embedded string values and following cell values. The intention here was to use the cell values, but the embedded "0" was not removed as it should have been. The implication of this mistake is that inverted sync flags would be ignored because the 0 value corresponds to GPIO_ACTIVE_HIGH. The extra cell value would be treated as the start of another override, but then ignored because the end of the parameter is reached. These errors should have been picked up by the automated checks, but the base dts files weren't subjected to the same validation. This has now been corrected. Signed-off-by: Phil Elwell <phil@raspberrypi.com> 03 June 2024, 17:49:19 UTC
56a9416 drivers: pcie-brcmstb: add best-effort workaround for QoS bug on bcm2712 If a set of read requests are issued by an endpoint, they are streamed into a resynchronisation FIFO prior to exiting the RC. This FIFO has an edge case where it can drop QoS for a request to 0 if there's a single outstanding read request in the FIFO, and another is pushed when the FIFO is popped. Requests with a QoS of 0 can take hundreds of microseconds to complete. By adding an experimentally-determined amount of backpressure on the pop side, the critical level transition can largely be avoided. Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com> 03 June 2024, 17:49:19 UTC
1afd465 drivers: staging: bcm2835-isp: Respect caller's stride value The stride value reported for output image buffers should be at least as large as any value that was passed in by the caller (subject to correct alignment for the pixel format). If the value is zero (meaning no value was passed), or is too small, the minimum acceptable value will be substituted. Signed-off-by: David Plowman <david.plowman@raspberrypi.com> 03 June 2024, 17:49:19 UTC
5d6b12d overlays: Add sdio -> sdio-pi5 mapping There is already an sdio-pi5 overlays, but the automatic mapping was missing. Signed-off-by: Phil Elwell <phil@raspberrypi.com> 03 June 2024, 17:49:19 UTC
566cb54 DTS: overlays: add pciex1-compat-pi5 Interop testing with the M.2 HAT has revealed that there are many quirky endpoint devices out there, so users should have a way of rapidly iterating to find which quirk is causing reliability issues. Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com> 03 June 2024, 17:49:19 UTC
ead65e6 DTS: bcm2712: don't assume L1 sub-state support at chip level L1 sub-states require the connection of the CLKREQ# auxiliary signal which is a PCB-level decision, and also depends on the vagrancies of adapters/interposers/slots that may exist between the chip and the endpoint. If this parameter is present, and the RC driver sees an L1 substate capability in the endpoint, then the result is a broken link if CLKREQ# isn't end-to-end connected - regardless of the state of the L1.x enable bits in the RC. Board-specific methods (HAT+ overlay, board DTB) should define this property if required. Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com> 03 June 2024, 17:49:19 UTC
fc573f8 dtoverlay: Add rgb-order override for vc4-kms-dpi-generic Sets the new DT property for rgb-order. Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com> 03 June 2024, 17:49:19 UTC
898e03c drm/vc4: dpi: Add override for RGB order There are no MEDIA_BUS_FMT_* defines for GRB or BRG, and adding them is a pain. Add a DT override to allow setting the order. Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com> 03 June 2024, 17:49:19 UTC
532b3bc regulator: rpi_panel_v2: Add delay on I2C reads As with many microcontrollers, the panel wants to use clock stretching during a read so that the appropriate return value can be generated and programmed into the hardware. With Pi0-3 really not supporting clock stretching, this resulted in the panel firmware dying. Insert a delay between the write and the read to give the firmware a chance to generate the relevant return value. Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com> 03 June 2024, 17:49:19 UTC
72f53c8 regulator: rpi_panel_v2: Add remove and shutdown hooks Add shutdown and remove hooks so that the panel gets powered off with the system. Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com> 03 June 2024, 17:49:19 UTC
aa9f3f5 dtoverlays: Fix noints mode of mcp23017 noints mode disables 2 fragments that configure a GPIO to be used for the interrupt line from the MCP23017, but fails to remove the pinctrl-0 reference or pinctrl-names. It therefore fails to load due to an invalid phandle. Move the pinctrl-0 and pinctrl-names properties so they also get disabled by the noints override. https://forums.raspberrypi.com/viewtopic.php?t=370907 Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com> 03 June 2024, 17:49:19 UTC
98eaf83 DTS: bcm2712: set nonzero QoS values for PCIE1 If PCIE1 is left with the default (zero) AXI QoS values, endpoints can receive extremely poor service for non-posted transactions e.g. reads. Such transactions can take milliseconds to complete on a contended system. Bump priorities for every TC above the non-realtime greedy peripherals in BCM2712, to allow reasonable service without competing against hard realtime peripherals. Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com> 03 June 2024, 17:49:18 UTC
2464706 staging: bcm2835_codec: Pass framerate to the component if set late For video encoding, if the framerate was set after the component was created, then it wasn't set correctly on the port, and an old value was encoded in the bitstream. Update the port status when the framerate is set. https://github.com/raspberrypi/rpicam-apps/issues/664 Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com> 03 June 2024, 17:49:18 UTC
0ac69a1 spi: dw: Handle any number of gpiod CS lines Even when configured to use only gpiod CS lines, the DW SPI controller still expects a bit to be set in the SER register, otherwise transfers stall. For the csgpiod case, nominate bit 0 for the job. See: https://github.com/raspberrypi/linux/issues/6159 Signed-off-by: Phil Elwell <phil@raspberrypi.com> 03 June 2024, 17:49:18 UTC
d8df0d6 staging: bcm2835-codec: 32bpp RGB formats need a 64byte alignment The firmware needs 16 pixel alignment on RGBx 32bpp formats, which would be 64 byte. The driver was only setting 32byte alignment. Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com> 03 June 2024, 17:49:18 UTC
2bb68dc dts: bcm2712: Drop snd_bcm2835 bootargs references from Pi5 Pi5 has no VCHIQ to support the snd_bcm2835 firmware audio driver, so remove the reference to it from bootargs. https://forums.raspberrypi.com/viewtopic.php?p=2219395#p2219395 Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com> 03 June 2024, 17:49:18 UTC
47a0669 drm/vc4: Fix potential null pointer read when disabling vblank vc4_disable_vblank assumed that vc4_encoder was always assigned, which isn't guaranteed. If it isn't assigned then disable the interrupt anyway as it's not connected. https://github.com/raspberrypi/linux/issues/6146 Fixes: 63c0bcc4b747 ("drm/vc4: Add option to call from crtc to encoder on vblank") Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com> 03 June 2024, 17:49:18 UTC
6115d46 ARM: dts: Update strict_gpiod dtparams Following the adoption upstream of a similar parameter but with another name, update the dtparam definitions to use the new name and sense. Signed-off-by: Phil Elwell <phil@raspberrypi.com> 03 June 2024, 17:49:18 UTC
63c3797 pinctrl: rp1: Use persist_gpio_outputs Following 8ff05989b44e1a8f7d2bbe67320990ebc2fbb5e5, adopt the same parameter name but with the opposite default. Signed-off-by: Phil Elwell <phil@raspberrypi.com> 03 June 2024, 17:49:18 UTC
3e1e617 pinctrl: bcm2835: Persist outputs by default Having accepted the upstream change to add the persist_gpio_outputs parameter, make it true by default. See: https://github.com/raspberrypi/linux/pull/6117 Signed-off-by: Phil Elwell <phil@raspberrypi.com> 03 June 2024, 17:49:18 UTC
ac310bc pinctrl: bcm2835: Make pin freeing behavior configurable commit 8ff05989b44e1a8f7d2bbe67320990ebc2fbb5e5 upstream. Until now after a bcm2835 pin was freed its pinmux was set to GPIO_IN. So in case it was configured as GPIO_OUT before the configured output level also get lost. As long as GPIO sysfs was used this wasn't actually a problem because the pins and their possible output level were kept by sysfs. Since more and more Raspberry Pi users start using libgpiod they are confused about this behavior. So make the pin freeing behavior of GPIO_OUT configurable via module parameter. In case pinctrl-bcm2835.persist_gpio_outputs is set to 1, the output level is kept. This patch based on the downstream work of Phil Elwell. Link: https://github.com/raspberrypi/linux/pull/6117 Signed-off-by: Stefan Wahren <wahrenst@gmx.net> Message-ID: <20240503062745.11298-1-wahrenst@gmx.net> Signed-off-by: Linus Walleij <linus.walleij@linaro.org> 03 June 2024, 17:49:18 UTC
0bbab73 Revert "pinctrl: bcm2835: Only return non-GPIOs to inputs" This reverts commit 2f8da7f53ea26023dbd921edfbfa398d8f3b19d5. 03 June 2024, 17:49:18 UTC
f6b53c6 Revert "pinctrl: bcm2835: Add strict_gpiod module parameter" This reverts commit c6ee9316ac1ed750c61d068cecc155d2c744fa1b. 03 June 2024, 17:49:18 UTC
cf8bd6c configs: Enable BCACHEFS as a module BCACHEFS is a new, copy on write filesystem. Enable it as a module for evaluation, along with some of the optional features. See: https://github.com/raspberrypi/linux/issues/6135 Signed-off-by: Phil Elwell <phil@raspberrypi.com> 03 June 2024, 17:49:18 UTC
262725a overlays: Add sc16is750-spi0 Essentially a rename of the equivalent overlay for the SC16IS752. Signed-off-by: Phil Elwell <phil@raspberrypi.com> 03 June 2024, 17:49:18 UTC
b4649d6 defconfigs: Add ILI9881 to rpi and bcm2709 defconfigs Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com> 03 June 2024, 17:49:18 UTC
5d9e9cf overlays: qca7000: Adjust URL & README info in-tech smart charging is now called chargebyte. Our product name seems to be more stable than our company name, so drop them where it's possible. Signed-off-by: Stefan Wahren <stefan.wahren@chargebyte.com> 03 June 2024, 17:49:18 UTC
ab35dc4 drm: rp1: dpi: Add support for MEDIA_BUS_FMT_RGB565_1X24_CPADHI This new format corresponds to the Raspberry Pi legacy DPI mode 3. Signed-off-by: Nick Hollinghurst <nick.hollinghurst@raspberrypi.com> 03 June 2024, 17:49:18 UTC
ccbb4ff overlays: Add overlay for the Pineboards Hat Ai! This overlay simplifies the configuration of the Coral Edge TPU (Single and Dual Edge) on the Pi 5. 03 June 2024, 17:49:17 UTC
6b7b0f5 regulator/rpi-panel: Power off display on shutdown Adds a shutdown function to turn off the backlight, bridge, and touch controller on shutdown. Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com> 03 June 2024, 17:49:17 UTC
75f0b1c drm/vc4: Fixup mode for 7inch panel on DSI0 The TC358762 bridge and panel decodes the mode differently on DSI0 to DSI1 for no obvious reason, and results in a shift off the screen. Whilst it would be possible to change the compatible used for the panel, that then messes up Pi5. As it appears to be restricted to vc4 DSI0, fix up the mode in vc4_dsi. Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com> 03 June 2024, 17:49:17 UTC
013f810 drm/panel-simple: Increase pixel clock on Pi 7inch panel The Toshiba bridge is very fussy and doesn't like the CM3 output when being told to produce a 27.777MHz pixel clock, which is an almost perfect match to the DSI link integer divider. Increasing to 30MHz will switch the DSI link from 333MHz to 400MHz and makes the bridge happy with the same video timing as works on Pi4. (Pi4 will be using a link frequency of 375MHz due to a 3GHz parent PLL). Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com> 03 June 2024, 17:49:17 UTC
5f4633d drm/panel-simple: Fix 7inch panel mode for misalignment The 7inch panel is one line off the screen both horizontally and vertically. Alter the panel mode to correct this. Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com> 03 June 2024, 17:49:17 UTC
c077d30 ARM: dts: bcm283x: Switch DSI0 to taking clock from PLLD PLLD is considered more stable than PLLA as it doesn't get varied. The clock muxing has been updated to driver DSI0 from PLLD, so update DT to match. Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com> 03 June 2024, 17:49:17 UTC
7238fa0 clk-bcm2835: Use PLLD for DSI0 HS clock DSI0 can take the clock from either PLLA or PLLD. PLLA is the default muxing, but PLLD is considered the more stable. Switch to using PLLD. Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com> 03 June 2024, 17:49:17 UTC
7d33167 drm/vc4: Add vblank callback to DSI0 to reset FIFO The pixel to byte FIFO appears to not always reset correctly, which can lead to colour errors and/or horizontal shifts. Reset on every vblank to work around the issue. Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com> 03 June 2024, 17:49:17 UTC
2ddd780 drm/vc4: Add option to call from crtc to encoder on vblank DSI0 is misbehaving and needs to action things on vblank to work around it. Add a new hook to call across during vblank. Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com> 03 June 2024, 17:49:17 UTC
3119c7b drm/vc4: Ensure DSI is enabled for FIFO resets The block must be enabled for the FIFO resets to be actioned, so ensure this is the case. Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com> 03 June 2024, 17:49:17 UTC
1be8fc0 drm: vc4: Reset DSI AFE on disable vc4_dsi_bridge_disable wasn't resetting things during shutdown, so add that in. Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com> 03 June 2024, 17:49:17 UTC
1269d98 drm: vc4: dsi: Clocks should be running before reset The initialisation sequence differs slightly from the documentation in that the clocks are meant to be running before resets and similar. Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com> 03 June 2024, 17:49:17 UTC
bb1f77a drm/bridge: tc358762: revert move ops to enable Reverts 8a4b2fc9c91a ("drm/bridge: tc358762: Split register programming from pre-enable to enable") as we want the config commands sent before video starts. Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com> 03 June 2024, 17:49:17 UTC
38a8ae4 drm/bridge: tc358762: Program the DPI mode into the chip The autodetection of resolution/timing by the TC358762 can lead to the display being shifted by a pixel or two. Program the TC358762 with the requested mode timing so that it can reproduce it accurately. Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com> 03 June 2024, 17:49:17 UTC
965eaa3 dts: overlay: ov5647: Specify clock-noncontinuous on CSI endpoint The OV5647 declares that it wants a non-continuous clock in its endpoint configuration. However, it does not expose this information via get_mbus_config. Even if it would implement get_mbus_config the bcm2835-unicam driver would not evaluate the flags field of it. By also specifying clock-noncontinuous on the CSI endpoint itself, the CSI driver properly picks up the requests and enables the non-continuous clock mode. Signed-off-by: Christian Speich <christian@spei.ch> 03 June 2024, 17:49:17 UTC
a69306f configs: Add IP_NF_TARGET_SYNPROXY=m This is the IPv4 version of the IPv6 option IP6_NF_TARGET_SYNPROXY, which is already enabled as a module. See: https://github.com/raspberrypi/linux/issues/6127 Signed-off-by: Phil Elwell <phil@raspberrypi.com> 03 June 2024, 17:49:17 UTC
050e223 drm: rp1: vec: Support more video modes in the RP1 VEC driver Support a wider range of pixel clock rates. The driver will round pixclock up to 108MHz/n but tries to honour the desired image width and position (of the centre of the display relative to HSYNC_STARTs). This adds complexity but removes the need for separate 13.5MHz and 15.428MHz modes. Support "fake" double-rate progressive modes (in which only every 2nd scanline is displayed). To work around aspect ratio issues. Add Monochrome TV mode support. Add "vintage" modes (544x380i for System A; 848x738i for System E) when configured for Monochrome. Add a way to create a "custom" display mode from a module parameter. Signed-off-by: Nick Hollinghurst <nick.hollinghurst@raspberrypi.com> 03 June 2024, 17:49:16 UTC
a45a4ab drm/panel-simple: Remove custom handling of orientation The framework now handles reading orientation from DT, therefore remove the custom get_orientation hook from panel-simple. Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com> 03 June 2024, 17:49:16 UTC
5b330be Revert "drm/panel: simple: Remove custom handling of orientation" This reverts commit 8b2f7c09e480d769e622a42e25cfd1c4c42b092c. 03 June 2024, 17:49:16 UTC
1fa9395 Revert "drm/panel-simple: hack ignore orientation" This reverts commit 1b2a7364e82f14295137dd64fdecb336c1a3ef7b. 03 June 2024, 17:49:16 UTC
fef4179 drm/panel: Add and initialise an orientation field to drm_panel from OF "rotation" is listed as a standard property of panels in panel-common.yaml, therefore it would be logical to process that from within the core code should a panel driver not implement the get_orientation hook. Call of_drm_get_panel_orientation from drm_connector_set_orientation_from_panel to get that information. This removes the need for any boiler-plate in panel drivers for calling drm_connector_set_orientation_from_panel or drm_connector_set_panel_orientation. Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com> 03 June 2024, 17:49:16 UTC
ab273ed DRM: rp1: rp1-dsi: Fix escape clock divider and timeouts. Escape clock divider was fixed at 5, which is correct at 800Mbps/lane but increasingly out of spec for higher rates. Compute it correctly. High speed timeout was fixed at 5*512 == 2560 byte-clocks per lane. Compute it conservatively to be 8/7 times the line period (assuming there will be a transition to LP some time during each scanline?) keeping the old value as a lower bound. Increase LPRX TO to 1024, and BTA TO to 0xb00 (same value as in bridge/synopsys/dw-mipi-dsi). (No change to LP_CMD_TIM. To do: compute this correctly.) Signed-off-by: Nick Hollinghurst <nick.hollinghurst@raspberrypi.com> 03 June 2024, 17:49:16 UTC
c7b270a vc4/hdmi: Ignore hotplug interrupt with force_hotplug The intention of the vc4.force_hotplug setting is to ignore hotplug completely. It can be used when a display toggles hotplug when switching AV inputs, going into standby or changing a KVM switch, and some side effect of that is unwanted. It turns out while vc4.force_hotplug currently makes hotplug always read as asserted, that isn't enough to stop drm doing lots of stuff, including re-reading the edid. An example of what drm does with a hotplug deasert/assert and vc4.force_hotplug=1 currently is: https://paste.debian.net/hidden/dc07434b/ That is unwanted. Lets ignore the hotplug interrupt completely so drm is blissfully unaware of the hotplug change. Signed-off-by: Dom Cobley <popcornmix@gmail.com> 03 June 2024, 17:49:16 UTC
2ad1753 drivers: media: cfe: Add remap entries for mono formats The 8-bit and 16-bit mono formats were missing the appropriate remap entries in the format table. Signed-off-by: Naushir Patuck <naush@raspberrypi.com> 03 June 2024, 17:49:16 UTC
948e0b5 dw-axi-dmac-platform: Avoid trampling with zero length buffer This code: for_each_sg(sgl, sg, sg_len, i) num_sgs += DIV_ROUND_UP(sg_dma_len(sg), axi_block_len); determines how many hw_desc are allocated. If sg_dma_len(sg)=0 we don't allocate for this sgl. However in the next loop, we will increment loop for this case, and loop gets higher than num_sgs and we trample memory. Signed-off-by: Dom Cobley <popcornmix@gmail.com> 03 June 2024, 17:49:16 UTC
f84fc56 overlays: README: Document the strict_gpiod dtparam Describe the function of the strict_gpiod dtparam. Signed-off-by: Phil Elwell <phil@raspberrypi.com> 03 June 2024, 17:49:16 UTC
7165532 overlays: README: Sort the dtparam names There are enough dtparams now that not having them in alphabetical order makes them hard to find. Signed-off-by: Phil Elwell <phil@raspberrypi.com> 03 June 2024, 17:49:16 UTC
4f964f9 ARM: dts: Add strict_gpiod dtparam Setting strict_gpiod disables the GPIO output persistence, such that pins are returned to being inputs when they are released. Note that this applies to the GPIO/pinctrl driver for the user-facing GPIOs, not the SoC GPIOs on Pi 5. Signed-off-by: Phil Elwell <phil@raspberrypi.com> 03 June 2024, 17:49:16 UTC
ccb29eb pinctrl: rp1: Add strict_gpiod module parameter Setting strict_gpiod to Y makes libgpiod and the gpiod utilities behave as documented, i.e. pins are returned to being GPIO inputs when they are released. Signed-off-by: Phil Elwell <phil@raspberrypi.com> 03 June 2024, 17:49:16 UTC
3bfb241 pinctrl: bcm2835: Add strict_gpiod module parameter Setting strict_gpiod to Y makes libgpiod and the gpiod utilities behave as documented, i.e. pins are returned to being GPIO inputs when they are released. drivers/pinctrl/bcm/pinctrl-bcm2835.c Signed-off-by: Phil Elwell <phil@raspberrypi.com> 03 June 2024, 17:49:16 UTC
1bbe570 ARM: dts: rp1: Add a gpio-ranges property gpio-ranges declares a relationship between pinctrl and GPIO controllers. It is required for "strict" mode to work. Signed-off-by: Phil Elwell <phil@raspberrypi.com> 03 June 2024, 17:49:16 UTC
26f3d26 dt: Add camX_sync option to configure a GPIO following cam FS/FE Unicam now takes an optional GPIO to expose frame start/end timing, so add an override to configure that. Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com> 03 June 2024, 17:49:16 UTC
78d6ab3 media: bcm2835-unicam: Add option for a GPIO to reflect FS/FE timing The legacy stack had an option to have a GPIO track frame start and end events to give basic synchronisation to the incoming image stream. https://forums.raspberrypi.com/viewtopic.php?t=190314 Replicate this in the kernel Unicam driver. Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com> 03 June 2024, 17:49:16 UTC
da1c322 overlays/README: Document that vc4-(f)kms requires >=512MB The firmware stops vc4-kms-v3d and vc4-fkms-v3d loading if the system has less than 512MB of RAM. It can work if gpu_mem and CMA heap size are set appropriately, but can't be guaranteed. Document this restriction. Also drops Eric's name from the overlay description as it isn't relevant or accurate anymore. Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com> 03 June 2024, 17:49:15 UTC
10ec60e dts: bcm2712: cm5: Force the ANT pins to GPIOs The magic required to make requesting a GPIO automatically change the pinmux settings is currently absent. Work around that by explicitly requesting that the ANT pins be in GPIO mode. Signed-off-by: Phil Elwell <phil@raspberrypi.com> 03 June 2024, 17:49:15 UTC
2de0a8c dts: bcm2712: cm5: Add antenna controls Use the same ant1/ant2/noant controls as CM4. Signed-off-by: Phil Elwell <phil@raspberrypi.com> 03 June 2024, 17:49:15 UTC
45205ad dts: bcm2712: cm5: There is no card detect signal Delete the reference to the EMMC/SD card detect signal because the pin is used for ANT1 on CM5. Signed-off-by: Phil Elwell <phil@raspberrypi.com> 03 June 2024, 17:49:15 UTC
b74b8ac ASoC: bcm: Add "owner" info for more soundcards See: https://github.com/raspberrypi/linux/issues/5697 Signed-off-by: Phil Elwell <phil@raspberrypi.com> 03 June 2024, 17:49:15 UTC
5374005 fixup! bcm2708 framebuffer driver Make CONFIG_FB_BCM2708 select CONFIG_FB_DEVICE, to avoid potential build problems. See: https://github.com/raspberrypi/linux/issues/6059 Signed-off-by: Phil Elwell <phil@raspberrypi.com> 03 June 2024, 17:49:15 UTC
487e305 overlays: Force IRQ pins to inputs Requesting a GPIO as an interrupt source does not automatically make it an input (or even a GPIO pin). Add the necessary pinctrl nodes to the overlays that don't already do this. See: https://github.com/raspberrypi/linux/issues/6106 Signed-off-by: Phil Elwell <phil@raspberrypi.com> 03 June 2024, 17:49:15 UTC
a7748a0 ASoC: bcm: Use power-of-2 bclk_ratios The soundcard drivers originally used snd_pcm_format_physical_width, but a later commit changed that to snd_pcm_format_width because the in-memory sample storage width should not be a factor in determining the bclk_ratio. However, the physical width rounds the sample bits up to the nearest power of 2, which makes it easier to find integer clock divisors. Restore the old behaviour, but with an implementation that makes it clear what is going on. See: https://github.com/raspberrypi/linux/issues/6104 Signed-off-by: Phil Elwell <phil@raspberrypi.com> 03 June 2024, 17:49:15 UTC
7d25375 DTS: overlays: fix Pi 5 midi-over-UART The UART source clock is 50MHz not 100MHz, so fix the fake-clock used to munge the baudrate. See https://forums.raspberrypi.com/viewtopic.php?p=2212755 Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com> 03 June 2024, 17:49:15 UTC
cea1c0e DTS: rp1: fix setting xHCI TX burst fifo thresholds The property should be a u8, and should target the non-periodic SuperSpeed transmit FIFO not the periodic one. Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com> 03 June 2024, 17:49:15 UTC
c77e00b configs: Add various Intel Ethernet drivers See: https://github.com/raspberrypi/linux/issues/5797 See: https://github.com/raspberrypi/linux/issues/6102 Signed-off-by: Phil Elwell <phil@raspberrypi.com> 03 June 2024, 17:49:15 UTC
2f86753 ARM: dts: Move virtgpio under the firmware node In the 6.6 kernel, devices that use the raspberrypi firmware driver should be children of the firmware node. Signed-off-by: Phil Elwell <phil@raspberrypi.com> 03 June 2024, 17:49:15 UTC
91663dc workflows: Update other workflow files Get rid of the remaining node.js warnings by updating the actions. Signed-off-by: Phil Elwell <phil@raspberrypi.com> 03 June 2024, 17:49:15 UTC
26ee062 overlays: Add SunFounder Pironman 5 overlay 03 June 2024, 17:49:15 UTC
08267da module: Avoid ABI changes when debug info is disabled CI builds are done with debug info disabled, but this removes some members from struct module. This causes builds to fail if there is an ABI reference for the current ABI. Define these members unconditionally, so that there is no ABI change. 03 June 2024, 17:49:15 UTC
e5a6f62 drivers: mmc: sdhci-brcmstb: bcm2712 supports HS400es and clock gating Enhanced Strobe and clock gating are set in the SDHCI_VENDOR register, so make the driver aware it needs to do this for this controller. Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com> 03 June 2024, 17:49:15 UTC
d3e4a07 drivers: mmc: disable write-caching on Samsung 2023 model year SD cards Samsung EVO Plus, Pro Plus and Evo Ultimate cards of this era appear to have a broken cache-flush implementation when operating in CQ mode. Unfortunately the cards seem to use a separate CID name string for every variant and capacity, so nobble the cache feature for this MANFID, OEMID and year. Turning this off seems to have negligible impact on random-write throughput in non-CQ mode. Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com> 03 June 2024, 17:49:15 UTC
9c43609 drivers: mmc: apply SD quirks earlier during probe Applying MMC_QUIRK_BROKEN_SD_CACHE is broken, as the card's extended registers are parsed prior to the quirk being applied in mmc_blk. Split this out into an SD-specific list of quirks and apply in mmc_sd_init_card instead. Fixes: c467c8f08185 ("mmc: Add MMC_QUIRK_BROKEN_SD_CACHE for Kingston Canvas Go Plus from 11/2019") Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com> 03 June 2024, 17:49:14 UTC
180eecc nvmem: raspberrypi: Enable nvmem otp driver through DT Signed-off-by: Dom Cobley <popcornmix@gmail.com> 03 June 2024, 17:49:14 UTC
7993969 nvmem: raspberrypi: Add nvmem driver for accessing OTP data This supports reading and writing OTP using the firmware mailbox interface. It needs supporting firmware to run. Signed-off-by: Dom Cobley <popcornmix@gmail.com> 03 June 2024, 17:49:14 UTC
c5fdfa3 pinctrl: rp1: Clear events when setting IRQ type When setting the interrupt type, it is unlikely that any latched events are of interest, so clear them. Signed-off-by: Phil Elwell <phil@raspberrypi.com> 03 June 2024, 17:49:14 UTC
8ecee75 pinctrl: rp1: Support interrupt CPU affinity See: https://github.com/raspberrypi/linux/issues/6077 Signed-off-by: Phil Elwell <phil@raspberrypi.com> 03 June 2024, 17:49:14 UTC
af21da4 pinctrl: rp1: Allow legacy brcm,pins on all banks Support the use of the brcm,pins property for GPIOs in banks 1 and 2, but only for inputs and outputs - no other legacy mapping. Signed-off-by: Phil Elwell <phil@raspberrypi.com> 03 June 2024, 17:49:14 UTC
06c4275 pinctrl: rp1: Use the correct per-bank GPIO base The GPIO start for each bank - min_gpio - must be used in the IRQ handler. Signed-off-by: Phil Elwell <phil@raspberrypi.com> 03 June 2024, 17:49:14 UTC
90b5358 mfd: rp1: Support interrupt CPU affinity See: https://github.com/raspberrypi/linux/issues/6077 Signed-off-by: Phil Elwell <phil@raspberrypi.com> 03 June 2024, 17:49:14 UTC
9204e1c i2c: designware: Make the SDA hold time half LCNT In the absence of a value in Device Tree, set the SDA hold time to half the SCL low time. Signed-off-by: Phil Elwell <phil@raspberrypi.com> 03 June 2024, 17:49:14 UTC
ee9b6e1 dts: bcm2712: cm5: Disable HS400 Disable HS400 support on CM5 until this is proved to be stable. Signed-off-by: Tim Gover <tim.gover@raspberrypi.com> 03 June 2024, 17:49:14 UTC
ee021b3 i2c: designware: Add support for bus clear feature Newer versions of the DesignWare I2C block support the detection of stuck signals, and a mechanism to recover from them. Add the required software support to the driver. This change was prompted by the observation that reading a single byte from register 0 of a VEML7700 seems to cause it to issue an ACK too early, and the controller to complain about losing arbitration. There is a suspicion that this may be a more widespread problem, but at least this patch prevents the bus from locking up. See: https://github.com/raspberrypi/linux/issues/6057 Signed-off-by: Phil Elwell <phil@raspberrypi.com> 03 June 2024, 17:49:14 UTC
ab2f78f drivers: mmc: handle 1024-byte SD General Info lengths The spec allows for up to two 512-byte pages to be allocated for the Extension Register General Info block, so allocate accordingly. Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com> 03 June 2024, 17:49:14 UTC
8695cf3 drivers: mmc: add debugfs entries for SD extension registers Also report the card's supported queue depth in the message log. Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com> 03 June 2024, 17:49:14 UTC
850ef62 drivers: mmc: be more cautious when manipulating Command Queue enable Don't attempt to turn on CQ if the other mandatory features are not indicated as supported by the card. Also make sure that the register write actually stuck, as some cards claim support but never report back that the queue engine is enabled. Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com> 03 June 2024, 17:49:14 UTC
back to top