Home
last modified time | relevance | path

Searched +full:bcm2835 +full:- +full:i2c (Results 1 – 25 of 36) sorted by relevance

12

/openbmc/linux/Documentation/devicetree/bindings/i2c/
H A Dbrcm,bcm2835-i2c.yaml1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
3 ---
4 $id: http://devicetree.org/schemas/i2c/brcm,bcm2835-i2c.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
7 title: Broadcom BCM2835 I2C controller
10 - Stephen Warren <swarren@wwwdotorg.org>
13 - $ref: /schemas/i2c/i2c-controller.yaml#
18 - enum:
19 - brcm,bcm2835-i2c
20 - items:
[all …]
/openbmc/linux/arch/arm/boot/dts/broadcom/
H A Dbcm2835-common.dtsi1 // SPDX-License-Identifier: GPL-2.0
4 * bcm2835, bcm2836 and bcm2837 implementations.
8 interrupt-parent = <&intc>;
11 dma: dma-controller@7e007000 {
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>;
[all …]
H A Dbcm283x.dtsi1 #include <dt-bindings/pinctrl/bcm2835.h>
2 #include <dt-bindings/clock/bcm2835.h>
3 #include <dt-bindings/clock/bcm2835-aux.h>
4 #include <dt-bindings/gpio/gpio.h>
5 #include <dt-bindings/interrupt-controller/irq.h>
6 #include <dt-bindings/soc/bcm2835-pm.h>
8 /* firmware-provided startup stubs live here, where the secondary CPUs are
14 * bcm2835 and bcm2836 implementations, leaving the CPU configuration to
15 * bcm2835.dtsi and bcm2836.dtsi.
19 compatible = "brcm,bcm2835";
[all …]
H A Dbcm2711.dtsi1 // 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 …]
/openbmc/u-boot/arch/arm/dts/
H A Dbcm283x.dtsi1 #include <dt-bindings/pinctrl/bcm2835.h>
2 #include <dt-bindings/clock/bcm2835.h>
3 #include <dt-bindings/clock/bcm2835-aux.h>
4 #include <dt-bindings/gpio/gpio.h>
6 /* firmware-provided startup stubs live here, where the secondary CPUs are
12 * bcm2835 and bcm2836 implementations, leaving the CPU configuration to
13 * bcm2835.dtsi and bcm2836.dtsi.
17 compatible = "brcm,bcm2835";
18 model = "BCM2835";
19 interrupt-parent = <&intc>;
[all …]
/openbmc/qemu/hw/arm/
H A Dbcm2835_peripherals.c9 * See the COPYING file in the top-level directory.
23 /* Capabilities for SD controller: no DMA, high-speed, default clocks etc. */
27 * According to Linux driver & DTS, dma channels 0--10 have separate IRQ,
28 * while channels 11--14 share one IRQ:
33 /* All three I2C controllers share the same IRQ */
44 memory_region_add_subregion_overlap(&ps->peri_mr, ofs, in create_unimp()
45 sysbus_mmio_get_region(SYS_BUS_DEVICE(uds), 0), -1000); in create_unimp()
54 object_initialize_child(obj, "rng", &s->rng, TYPE_BCM2835_RNG); in bcm2835_peripherals_init()
57 object_initialize_child(obj, "thermal", &s->thermal, TYPE_BCM2835_THERMAL); in bcm2835_peripherals_init()
60 object_initialize_child(obj, "gpio", &s->gpio, TYPE_BCM2835_GPIO); in bcm2835_peripherals_init()
[all …]
/openbmc/linux/Documentation/devicetree/bindings/clock/
H A Dbrcm,bcm2835-cprman.txt1 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
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
20 - reg: Specifies base physical address and size of the registers
[all …]
/openbmc/linux/drivers/i2c/busses/
H A Di2c-bcm2835.c1 // SPDX-License-Identifier: GPL-2.0
3 * BCM2835 master mode driver
8 #include <linux/clk-provider.h>
11 #include <linux/i2c.h>
27 * 16-bit field for the number of SCL cycles to wait after rising SCL
76 writel(val, i2c_dev->regs + reg); in bcm2835_i2c_writel()
81 return readl(i2c_dev->regs + reg); in bcm2835_i2c_readl()
104 return -EINVAL; in clk_bcm2835_i2c_calc_divider()
116 if (divider == -EINVAL) in clk_bcm2835_i2c_set_rate()
117 return -EINVAL; in clk_bcm2835_i2c_set_rate()
[all …]
H A DMakefile1 # SPDX-License-Identifier: GPL-2.0
3 # Makefile for the i2c bus drivers.
7 obj-$(CONFIG_I2C_SCMI) += i2c-scmi.o
9 # Auxiliary I2C/SMBus modules
10 obj-$(CONFIG_I2C_CCGX_UCSI) += i2c-ccgx-ucsi.o
13 obj-$(CONFIG_I2C_ALI1535) += i2c-ali1535.o
14 obj-$(CONFIG_I2C_ALI1563) += i2c-ali1563.o
15 obj-$(CONFIG_I2C_ALI15X3) += i2c-ali15x3.o
16 obj-$(CONFIG_I2C_AMD756) += i2c-amd756.o
17 obj-$(CONFIG_I2C_AMD756_S4882) += i2c-amd756-s4882.o
[all …]
H A DKconfig1 # SPDX-License-Identifier: GPL-2.0-only
6 menu "I2C Hardware Bus support"
16 for Cypress CCGx Type-C controller. Individual bus drivers
25 controller is part of the 7101 device, which is an ACPI-compliant
29 will be called i2c-ali1535.
37 controller is part of the 7101 device, which is an ACPI-compliant
41 will be called i2c-ali1563.
48 Acer Labs Inc. (ALI) M1514 and M1543 motherboard I2C interfaces.
51 will be called i2c-ali15x3.
58 756/766/768 mainboard I2C interfaces. The driver also includes
[all …]
/openbmc/linux/Documentation/devicetree/bindings/display/
H A Dbrcm,bcm2835-hdmi.yaml1 # 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#
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
27 - description: The HDMI state machine clock
[all …]
/openbmc/qemu/tests/qtest/
H A Dbcm2835-i2c-test.c6 * SPDX-License-Identifier: MIT
28 #include "libqtest-single.h"
30 #include "hw/i2c/bcm2835_i2c.h"
101 g_strdup_printf("/bcm2835/bcm2835-i2c%d/read_write", i); in main()
106 /* Run I2C tests with TMP105 slaves on all three buses */ in main()
107 qtest_start("-M raspi3b " in main()
108 "-device tmp105,address=0x50,bus=i2c-bus.0 " in main()
109 "-device tmp105,address=0x50,bus=i2c-bus.1 " in main()
110 "-device tmp105,address=0x50,bus=i2c-bus.2"); in main()
H A Dmeson.build2 'ahci-test': 150,
3 'aspeed_smc-test': 360,
4 'bios-tables-test' : 910,
5 'cdrom-test' : 610,
6 'device-introspect-test' : 720,
7 'ide-test' : 120,
8 'migration-test' : 480,
9 'npcm7xx_pwm-test': 300,
10 'npcm7xx_watchdog_timer-test': 120,
11 'qmp-cmd-test' : 120,
[all …]
/openbmc/linux/Documentation/hwmon/
H A Dsbrmi.rst1 .. SPDX-License-Identifier: GPL-2.0-or-later
8 * Sideband Remote Management Interface (SB-RMI) compliant AMD SoC
15 To instantiate this driver on an AMD CPU with SB-RMI
16 support, the i2c bus number would be the bus connected from the board
22 As mentioned in AMD's APML specification, The SB-RMI address is
27 Datasheet: The SB-RMI interface and protocol along with the Advanced
31 https://www.amd.com/en/support/tech-docs?keyword=55898
36 -----------
39 (SB-RMI) module from the external SMBus master that can be used to report socket
40 power on AMD platforms using mailbox command and resembles a typical 8-pin remote
[all …]
/openbmc/qemu/hw/i2c/
H A Dbcm2835_i2c.c6 * SPDX-License-Identifier: MIT
29 #include "hw/i2c/bcm2835_i2c.h"
37 if (s->c & BCM2835_I2C_C_INTR && s->s & BCM2835_I2C_S_RXR) { in bcm2835_i2c_update_interrupt()
42 if (s->c & BCM2835_I2C_C_INTT && s->s & BCM2835_I2C_S_TXW) { in bcm2835_i2c_update_interrupt()
47 if (s->c & BCM2835_I2C_C_INTD && s->s & BCM2835_I2C_S_DONE) { in bcm2835_i2c_update_interrupt()
50 qemu_set_irq(s->irq, do_interrupt); in bcm2835_i2c_update_interrupt()
55 int direction = s->c & BCM2835_I2C_C_READ; in bcm2835_i2c_begin_transfer()
56 if (i2c_start_transfer(s->bus, s->a, direction)) { in bcm2835_i2c_begin_transfer()
57 s->s |= BCM2835_I2C_S_ERR; in bcm2835_i2c_begin_transfer()
59 s->s |= BCM2835_I2C_S_TA; in bcm2835_i2c_begin_transfer()
[all …]
/openbmc/qemu/include/hw/i2c/
H A Dbcm2835_i2c.h6 * SPDX-License-Identifier: MIT
28 #include "hw/i2c/i2c.h"
31 #define TYPE_BCM2835_I2C "bcm2835-i2c"
43 #define BCM2835_I2C_C_I2CEN BIT(15) /* I2C enable */
49 #define BCM2835_I2C_C_READ BIT(0) /* I2C read mode */
59 #define BCM2835_I2C_S_DONE BIT(1) /* I2C Transfer complete */
60 #define BCM2835_I2C_S_TA BIT(0) /* I2C Transfer active */
/openbmc/qemu/include/hw/arm/
H A Dbcm2835_peripherals.h9 * See the COPYING file in the top-level directory.
20 #include "hw/or-irq.h"
33 #include "hw/usb/hcd-dwc2.h"
35 #include "hw/i2c/bcm2835_i2c.h"
40 #define TYPE_BCM_SOC_PERIPHERALS_BASE "bcm-soc-peripherals-base"
43 #define TYPE_BCM2835_PERIPHERALS "bcm2835-peripherals"
73 BCM2835I2CState i2c[3]; member
H A Draspi_platform.h2 * bcm2708 aka bcm2835/2836 aka Raspberry Pi/Pi2 SoC platform defines
5 * arch/arm/mach-{bcm2708,bcm2709}/include/mach/platform.h
25 * https://github.com/hermanhermitage/videocoreiv/wiki/MMIO-Register-map
34 /* Registered machine type (matches RPi Foundation bootloader and U-Boot) */
37 #define TYPE_RASPI_BASE_MACHINE MACHINE_TYPE_NAME("raspi-base")
73 #define MPHI_OFFSET 0x6000 /* Message-based Parallel Host Intf. */
74 #define DMA_OFFSET 0x7000 /* DMA controller, channels 0-14 */
92 #define BSC0_OFFSET 0x205000 /* BSC0 I2C/TWI */
114 #define BSC1_OFFSET 0x804000 /* BSC1 I2C/TWI */
115 #define BSC2_OFFSET 0x805000 /* BSC2 I2C/TWI */
[all …]
/openbmc/linux/drivers/pinctrl/bcm/
H A DKconfig1 # SPDX-License-Identifier: GPL-2.0-only
21 tristate "Broadcom BCM2835 GPIO (with PINCONF) driver"
30 Say Y here to enable the Broadcom BCM2835 GPIO driver.
44 If compiled as module it will be called pinctrl-bcm4908.
119 The Broadcom iProc based SoCs- Cygnus, NS2, NSP and Stingray, use
124 the always-ON GPIO controller (CRMU/AON). All 3 GPIO controllers are
170 The Broadcom Northstar pins driver supports muxing multi-purpose pins
171 that can be used for various functions (e.g. SPI, I2C, UART) as well
/openbmc/qemu/docs/system/arm/
H A Draspi.rst8 ARM1176JZF-S core, 512 MiB of RAM
10 Cortex-A7 (4 cores), 1 GiB of RAM
12 Cortex-A53 (4 cores), 512 MiB of RAM
14 Cortex-A53 (4 cores), 1 GiB of RAM
16 Cortex-A72 (4 cores), 2 GiB of RAM
19 -------------------
21 * ARM1176JZF-S, Cortex-A7, Cortex-A53 or Cortex-A72 CPU
27 * Serial ports (BCM2835 AUX - 16550 based - and PL011)
38 * Broadcom Serial Controller (I2C)
41 ---------------
/openbmc/linux/drivers/spi/
H A DKconfig1 # SPDX-License-Identifier: GPL-2.0-only
13 dynamic device discovery; some are even write-only or read-only.
17 chips, analog to digital (and d-to-a) converters, and more.
44 If your system has an master-capable SPI controller (which
56 by providing a high-level interface to send memory-like commands.
145 supports spi-mem interface.
164 tristate "BCM2835 SPI controller"
168 This selects a driver for the Broadcom BCM2835 SPI master.
170 The BCM2835 contains two types of SPI master controller; the
176 tristate "BCM2835 SPI auxiliary controller"
[all …]
/openbmc/linux/drivers/mfd/
H A DMakefile1 # SPDX-License-Identifier: GPL-2.0
6 88pm860x-objs := 88pm860x-core.o 88pm860x-i2c.o
7 obj-$(CONFIG_MFD_88PM860X) += 88pm860x.o
8 obj-$(CONFIG_MFD_88PM800) += 88pm800.o 88pm80x.o
9 obj-$(CONFIG_MFD_88PM805) += 88pm805.o 88pm80x.o
10 obj-$(CONFIG_MFD_ACT8945A) += act8945a.o
11 obj-$(CONFIG_MFD_SM501) += sm501.o
12 obj-$(CONFIG_ARCH_BCM2835) += bcm2835-pm.o
13 obj-$(CONFIG_MFD_BCM590XX) += bcm590xx.o
14 obj-$(CONFIG_MFD_BD9571MWV) += bd9571mwv.o
[all …]
/openbmc/linux/drivers/pwm/
H A DKconfig1 # SPDX-License-Identifier: GPL-2.0-only
3 bool "Pulse-Width Modulation (PWM) Support"
5 Generic Pulse-Width Modulation (PWM) support.
7 In Pulse-Width Modulation, a variation of the width of pulses
52 will be called pwm-ab8500.
64 will be called pwm-apple.
74 will be called pwm-atmel.
82 (Atmel High-end LCD Controller). This PWM output is mainly used
86 will be called pwm-atmel-hlcdc.
99 will be called pwm-atmel-tcb.
[all …]
/openbmc/linux/drivers/irqchip/
H A DMakefile1 # SPDX-License-Identifier: GPL-2.0
2 obj-$(CONFIG_IRQCHIP) += irqchip.o
4 obj-$(CONFIG_AL_FIC) += irq-al-fic.o
5 obj-$(CONFIG_ALPINE_MSI) += irq-alpine-msi.o
6 obj-$(CONFIG_ATH79) += irq-ath79-cpu.o
7 obj-$(CONFIG_ATH79) += irq-ath79-misc.o
8 obj-$(CONFIG_ARCH_BCM2835) += irq-bcm2835.o
9 obj-$(CONFIG_ARCH_BCM2835) += irq-bcm2836.o
10 obj-$(CONFIG_ARCH_ACTIONS) += irq-owl-sirq.o
11 obj-$(CONFIG_DAVINCI_CP_INTC) += irq-davinci-cp-intc.o
[all …]
/openbmc/openbmc/meta-raspberrypi/docs/
H A Dextra-build-config.md6 <http://www.yoctoproject.org/docs/latest/ref-manual/ref-manual.html>
32 See: <https://www.raspberrypi.com/documentation/computers/config_txt.html#memory-options>
36 …erland`. Be aware that `userland` has not support for 64-bit arch. If you disable `vc4` on a 64-bi…
50 See: <https://www.raspberrypi.com/documentation/computers/config_txt.html#licence-key-and-codec-opt…
85 …b`. The "mmc" is required to load an image from the SD card, following the u-boot specification. S…
108 See: <https://www.raspberrypi.com/documentation/computers/config_txt.html#overclocking-options>
125 See: <https://www.raspberrypi.com/documentation/computers/configuration.html#hdmi-configuration>
140 This will enable the firmware to fall back to off-line compositing of Dispmanx
141 elements. Normally the compositing is done on-line, during scanout, but cannot
142 handle too many elements. With off-line enabled, an off-screen buffer is
[all …]

12