/Linux-v6.1/Documentation/devicetree/bindings/display/ |
D | brcm,bcm2835-hdmi.yaml | 1 # SPDX-License-Identifier: GPL-2.0 3 --- 4 $id: http://devicetree.org/schemas/display/brcm,bcm2835-hdmi.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: Broadcom VC4 (VideoCore4) HDMI Controller 10 - Eric Anholt <eric@anholt.net> 14 const: brcm,bcm2835-hdmi 18 - description: HDMI register range 19 - description: HD register range 26 - description: The pixel clock [all …]
|
D | brcm,bcm2835-vc4.yaml | 1 # SPDX-License-Identifier: GPL-2.0 3 --- 4 $id: http://devicetree.org/schemas/display/brcm,bcm2835-vc4.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Eric Anholt <eric@anholt.net> 14 with HDMI output and the HVS (Hardware Video Scaler) for compositing 20 - brcm,bcm2711-vc5 21 - brcm,bcm2835-vc4 22 - brcm,cygnus-vc4 25 - compatible [all …]
|
/Linux-v6.1/arch/arm/boot/dts/ |
D | bcm2835-common.dtsi | 1 // SPDX-License-Identifier: GPL-2.0 4 * bcm2835, bcm2836 and bcm2837 implementations. 8 interrupt-parent = <&intc>; 12 compatible = "brcm,bcm2835-dma"; 25 /* dma channel 11-14 share one irq */ 32 interrupt-names = "dma0", 47 "dma-shared-all"; 48 #dma-cells = <1>; 49 brcm,dma-channel-mask = <0x7f35>; 52 intc: interrupt-controller@7e00b200 { [all …]
|
D | bcm2711.dtsi | 1 // SPDX-License-Identifier: GPL-2.0 4 #include <dt-bindings/interrupt-controller/arm-gic.h> 5 #include <dt-bindings/soc/bcm2835-pm.h> 10 #address-cells = <2>; 11 #size-cells = <1>; 13 interrupt-parent = <&gicv2>; 16 compatible = "brcm,bcm2711-vc5"; 20 clk_27MHz: clk-27M { 21 #clock-cells = <0>; 22 compatible = "fixed-clock"; [all …]
|
D | bcm2835-rpi-b.dts | 1 // SPDX-License-Identifier: GPL-2.0 2 /dts-v1/; 3 #include "bcm2835.dtsi" 4 #include "bcm2835-rpi.dtsi" 5 #include "bcm283x-rpi-smsc9512.dtsi" 6 #include "bcm283x-rpi-usb-host.dtsi" 9 compatible = "raspberrypi,model-b", "brcm,bcm2835"; 18 led-act { 26 * Taken from Raspberry-Pi-Rev-1.0-Model-AB-Schematics.pdf 33 gpio-line-names = "SDA0", [all …]
|
D | bcm2835-rpi-zero.dts | 1 // SPDX-License-Identifier: GPL-2.0+ 6 /dts-v1/; 7 #include "bcm2835.dtsi" 8 #include "bcm2835-rpi.dtsi" 9 #include "bcm283x-rpi-usb-otg.dtsi" 12 compatible = "raspberrypi,model-zero", "brcm,bcm2835"; 21 led-act { 35 gpio-line-names = "ID_SDA", 92 pinctrl-0 = <&gpioout &alt0 &i2s_alt0>; 101 &hdmi { [all …]
|
D | bcm2835-rpi-b-rev2.dts | 1 // SPDX-License-Identifier: GPL-2.0 2 /dts-v1/; 3 #include "bcm2835.dtsi" 4 #include "bcm2835-rpi.dtsi" 5 #include "bcm283x-rpi-smsc9512.dtsi" 6 #include "bcm283x-rpi-usb-host.dtsi" 9 compatible = "raspberrypi,model-b-rev2", "brcm,bcm2835"; 18 led-act { 26 * Taken from Raspberry-Pi-Rev-2.0-Model-AB-Schematics.pdf 33 gpio-line-names = "SDA0", [all …]
|
D | bcm2835-rpi-a.dts | 1 // SPDX-License-Identifier: GPL-2.0 2 /dts-v1/; 3 #include "bcm2835.dtsi" 4 #include "bcm2835-rpi.dtsi" 5 #include "bcm283x-rpi-usb-host.dtsi" 8 compatible = "raspberrypi,model-a", "brcm,bcm2835"; 17 led-act { 25 * Taken from Raspberry-Pi-Rev-1.0-Model-AB-Schematics.pdf 32 gpio-line-names = "SDA0", 90 pinctrl-0 = <&gpioout &alt0 &i2s_alt2>; [all …]
|
D | bcm2835-rpi-b-plus.dts | 1 // SPDX-License-Identifier: GPL-2.0 2 /dts-v1/; 3 #include "bcm2835.dtsi" 4 #include "bcm2835-rpi.dtsi" 5 #include "bcm283x-rpi-smsc9514.dtsi" 6 #include "bcm283x-rpi-usb-host.dtsi" 9 compatible = "raspberrypi,model-b-plus", "brcm,bcm2835"; 18 led-act { 22 led-pwr { 25 default-state = "keep"; [all …]
|
D | bcm2835-rpi-zero-w.dts | 1 // SPDX-License-Identifier: GPL-2.0+ 6 /dts-v1/; 7 #include "bcm2835.dtsi" 8 #include "bcm2835-rpi.dtsi" 9 #include "bcm283x-rpi-usb-otg.dtsi" 10 #include "bcm283x-rpi-wifi-bt.dtsi" 13 compatible = "raspberrypi,model-zero-w", "brcm,bcm2835"; 23 stdout-path = "serial1:115200n8"; 27 led-act { 34 shutdown-gpios = <&gpio 45 GPIO_ACTIVE_HIGH>; [all …]
|
D | bcm2835-rpi-a-plus.dts | 1 // SPDX-License-Identifier: GPL-2.0 2 /dts-v1/; 3 #include "bcm2835.dtsi" 4 #include "bcm2835-rpi.dtsi" 5 #include "bcm283x-rpi-usb-host.dtsi" 8 compatible = "raspberrypi,model-a-plus", "brcm,bcm2835"; 17 led-act { 21 led-pwr { 24 default-state = "keep"; 25 linux,default-trigger = "default-on"; [all …]
|
D | bcm2835-rpi-cm1-io1.dts | 1 // SPDX-License-Identifier: GPL-2.0 2 /dts-v1/; 3 #include "bcm2835-rpi-cm1.dtsi" 4 #include "bcm283x-rpi-usb-host.dtsi" 7 compatible = "raspberrypi,compute-module", "brcm,bcm2835"; 19 gpio-line-names = "GPIO0", 76 pinctrl-0 = <&gpioout &alt0>; 79 &hdmi { 80 hpd-gpios = <&gpio 46 GPIO_ACTIVE_LOW>; 81 power-domains = <&power RPI_POWER_DOMAIN_HDMI>; [all …]
|
D | bcm2711-rpi.dtsi | 1 // SPDX-License-Identifier: GPL-2.0 2 #include "bcm2835-rpi.dtsi" 4 #include <dt-bindings/reset/raspberrypi,firmware-reset.h> 23 compatible = "raspberrypi,firmware-clocks"; 24 #clock-cells = <1>; 28 compatible = "raspberrypi,firmware-gpio"; 29 gpio-controller; 30 #gpio-cells = <2>; 35 compatible = "raspberrypi,firmware-reset"; 36 #reset-cells = <1>; [all …]
|
/Linux-v6.1/drivers/staging/vc04_services/bcm2835-audio/ |
D | bcm2835.c | 1 // SPDX-License-Identifier: GPL-2.0 10 #include "bcm2835.h" 17 MODULE_PARM_DESC(enable_hdmi, "Enables HDMI virtual audio device"); 38 return -ENOMEM; in bcm2835_devm_add_vchi_ctx() 95 .shortname = "bcm2835 HDMI", 96 .longname = "bcm2835 HDMI", 108 .shortname = "bcm2835 Headphones", 109 .longname = "bcm2835 Headphones", 145 err = snd_card_new(dev, -1, NULL, THIS_MODULE, sizeof(*chip), &card); in snd_add_child_device() 151 chip = card->private_data; in snd_add_child_device() [all …]
|
D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0 3 tristate "BCM2835 Audio" 8 Say Y or M if you want to support BCM2835 built in audio. 9 This driver handles both 3.5mm and HDMI audio, by leveraging
|
/Linux-v6.1/Documentation/devicetree/bindings/clock/ |
D | brcm,bcm2835-cprman.txt | 1 Broadcom BCM2835 CPRMAN clocks 4 Documentation/devicetree/bindings/clock/clock-bindings.txt 7 of the BCM2835. There is a level of PLLs deriving from an external 9 few PLLs, and a level of mostly-generic clock generators sourcing from 11 clock generators, but a few (like the ARM or HDMI) will source from 15 - compatible: should be one of the following, 16 "brcm,bcm2711-cprman" 17 "brcm,bcm2835-cprman" 18 - #clock-cells: Should be <1>. The permitted clock-specifier values can be 19 found in include/dt-bindings/clock/bcm2835.h [all …]
|
/Linux-v6.1/drivers/gpu/drm/vc4/ |
D | vc4_drv.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Copyright (C) 2014-2015 Broadcom 11 * OpenGL ES 2.0-compatible 3D engine called V3D, and a highly 12 * configurable display output pipeline that supports HDMI, DSI, DPI, 16 * compute shader-style jobs using the same shader processor as is 26 #include <linux/dma-mapping.h> 39 #include <soc/bcm2835/raspberrypi-firmware.h> 67 int min_pitch = DIV_ROUND_UP(args->width * args->bpp, 8); in vc4_dumb_fixup_args() 69 if (args->pitch < min_pitch) in vc4_dumb_fixup_args() 70 args->pitch = min_pitch; in vc4_dumb_fixup_args() [all …]
|
D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0-only 24 VC4 GPU, such as the Raspberry Pi or other BCM2708/BCM2835. 31 bool "Broadcom VC4 HDMI CEC Support"
|
D | vc4_hdmi.c | 1 // SPDX-License-Identifier: GPL-2.0-only 10 * DOC: VC4 Falcon HDMI module 12 * The HDMI core has a state machine and a PHY. On BCM2835, most of 16 * HDMI infoframes are kept within a small packet ram, where each 19 * HDMI audio is implemented entirely within the HDMI IP block. A 20 * register in the HDMI encoder takes SPDIF frames from the DMA engine 21 * and transfers them over an internal MAI (multi-channel audio 25 * The driver's HDMI encoder does not yet support power management. 26 * The HDMI encoder's power domain and the HSM/pixel clocks are kept 27 * continuously running, and only the HDMI logic and packet ram are [all …]
|
D | vc4_crtc.c | 1 // SPDX-License-Identifier: GPL-2.0-only 21 * image domain can feed either HDMI or the SDTV controller. The 22 * pixel valve chooses from the CPRMAN clocks (HSM for HDMI, VEC for 27 * output-specific clock. Since the encoders also directly consume 53 #define CRTC_WRITE(offset, val) writel(val, vc4_crtc->regs + (offset)) 54 #define CRTC_READ(offset) readl(vc4_crtc->regs + (offset)) 75 struct vc4_hvs *hvs = vc4->hvs; in vc4_crtc_get_cob_allocation() 77 /* Top/base are supposed to be 4-pixel aligned, but the in vc4_crtc_get_cob_allocation() 84 return top - base + 4; in vc4_crtc_get_cob_allocation() 93 struct drm_device *dev = crtc->dev; in vc4_crtc_get_scanout_position() [all …]
|
D | vc4_vec.c | 1 // SPDX-License-Identifier: GPL-2.0-only 13 * PAL and PAL-M or NTSC and NTSC-J. 177 #define VEC_READ(offset) readl(vec->regs + (offset)) 178 #define VEC_WRITE(offset, val) writel(val, vec->regs + (offset)) 273 struct drm_connector_state *state = connector->state; in vc4_vec_connector_get_modes() 276 mode = drm_mode_duplicate(connector->dev, in vc4_vec_connector_get_modes() 277 vc4_vec_tv_modes[state->tv.mode].mode); in vc4_vec_connector_get_modes() 280 return -ENOMEM; in vc4_vec_connector_get_modes() 302 struct drm_connector *connector = &vec->connector; in vc4_vec_connector_init() 305 connector->interlace_allowed = true; in vc4_vec_connector_init() [all …]
|
/Linux-v6.1/drivers/clk/bcm/ |
D | clk-raspberrypi.c | 1 // SPDX-License-Identifier: GPL-2.0+ 5 * Even though clk-bcm2835 provides an interface to the hardware registers for 8 * over-temperature and under-voltage protections provided by the firmware. 14 #include <linux/clk-provider.h> 19 #include <soc/bcm2835/raspberrypi-firmware.h> 54 [RPI_FIRMWARE_PIXEL_BVB_CLK_ID] = "pixel-bvb", 111 * HDMI connector, the firmware will skip the HSM 122 * The clock is shared between the two HDMI controllers 160 * https://github.com/raspberrypi/firmware/wiki/Mailbox-property-interface 173 .id = cpu_to_le32(data->id), in raspberrypi_clock_property() [all …]
|
D | clk-bcm2835.c | 1 // SPDX-License-Identifier: GPL-2.0+ 8 * DOC: BCM2835 CPRMAN (clock manager for the "audio" domain) 13 * and "HDMI displays". Those 5 PLLs each can divide their output to 15 * be consumed by other hardware components (like "H264" or "HDMI 27 #include <linux/clk-provider.h> 38 #include <dt-bindings/clock/bcm2835.h> 45 # define CM_DIV_FRAC_MASK GENMASK(CM_DIV_FRAC_BITS - 1, 0) 253 # define A2W_PLL_FRAC_MASK ((1 << A2W_PLL_FRAC_BITS) - 1) 337 writel(CM_PASSWORD | val, cprman->regs + reg); in cprman_write() 342 return readl(cprman->regs + reg); in cprman_read() [all …]
|
/Linux-v6.1/drivers/soc/bcm/ |
D | raspberrypi-power.c | 1 // SPDX-License-Identifier: GPL-2.0 13 #include <dt-bindings/power/raspberrypi-power.h> 14 #include <soc/bcm2835/raspberrypi-firmware.h> 55 packet.domain = rpi_domain->domain; in rpi_firmware_set_power() 57 return rpi_firmware_property(rpi_domain->fw, in rpi_firmware_set_power() 58 rpi_domain->old_interface ? in rpi_firmware_set_power() 83 struct rpi_power_domain *dom = &rpi_domains->domains[xlate_index]; in rpi_common_init_power_domain() 85 dom->fw = rpi_domains->fw; in rpi_common_init_power_domain() 87 dom->base.name = name; in rpi_common_init_power_domain() 88 dom->base.power_on = rpi_domain_on; in rpi_common_init_power_domain() [all …]
|
D | bcm2835-power.c | 1 // SPDX-License-Identifier: GPL-2.0+ 3 * Power domain driver for Broadcom BCM2835 8 #include <dt-bindings/soc/bcm2835-pm.h> 12 #include <linux/mfd/bcm2835-pm.h> 16 #include <linux/reset-controller.h> 109 #define PM_READ(reg) readl(power->base + (reg)) 110 #define PM_WRITE(reg, val) writel(PM_PASSWORD | (val), power->base + (reg)) 154 void __iomem *base = power->asb; in bcm2835_asb_control() 163 if (power->rpivid_asb) in bcm2835_asb_control() 164 base = power->rpivid_asb; in bcm2835_asb_control() [all …]
|