Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

The enforced open drain problem appears after connecting the PCA9685 #1381

Closed
roxanaluca opened this issue Apr 28, 2020 · 9 comments
Closed

Comments

@roxanaluca
Copy link

Describe the bug
I have connected PCA9685 and Arducam Multi Camera Adapter on Raspberry Pi. The first pin supplies 3.3V on Arducam Adapter, and at the same time the PCA9685 motor driver. The Raspberry Pi detect the PCA9685 connection via detect -y 3.
To reproduce
Adding a new bus 3 in /boot/config in config.txt
start_x=1
gpu_mem=128
dtparam=i2c_arm=on
dtoverlay=i2c-gpio,bus=3,i2c_gpio_delay_us=1,i2c_gpio_sda=16,i2c_gpio_scl=26

Expected behaviour
The error should not happen because I measured the voltage in Raspberry and the PCA9685. I follow the Adafruit guideline.

Actual behaviour
It is possible that the servo motors wouldn't work properly.

System

  • Which model of Raspberry Pi? Pi3B+
  • Which OS and version (cat /etc/rpi-issue)?
    Generated using pi-gen, https://github.com/RPi-Distro/pi-gen, 150e25c4f8123a4c9c63e8dca1b4737fa6c1135c, stage5
  • Which firmware version (vcgencmd version)?
    Feb 12 2020 12:39:27
    Copyright (c) 2012 Broadcom
    version 53a54c770c493957d99bf49762dfabc4eee00e45 (clean) (release) (start_x)
  • Which kernel version (uname -a)?
    Linux raspberrypi 4.19.97-v7+ No sound on HDMI or headphone jack except hello_audio #1294 SMP Thu Jan 30 13:15:58 GMT 2020 armv7l GNU/Linux

Logs
dmesg | grep i2c
[ 3.033396] i2c /dev entries driver
[ 4.707228] gpio-16 (3.i2c): enforced open drain please flag it properly in DT/ACPI DSDT/board file
[ 4.707308] gpio-26 (3.i2c): enforced open drain please flag it properly in DT/ACPI DSDT/board file
[ 4.707769] i2c-gpio 3.i2c: using lines 16 (SDA) and 26 (SCL)

@roxanaluca
Copy link
Author

I put pull up resistances between SDA and SCL pins and it doesn't work.
Please let me know what to do.
Many thanks

@pelwell
Copy link
Contributor

pelwell commented May 1, 2020

The Pi GPIO pins don't have an "open drain" mode - they do outputs and inputs (and the alternate functions). What you are seeing is a warning about what something sees as an invalid or incomplete configuration in Device Tree, rather than a real problem with the hardware. I'll try to understand the issue to see if we can avoid the warning, but until then I don't think there is any chance of you damaging the servo motor as a result of the "problem" that causes the message.

@pelwell
Copy link
Contributor

pelwell commented May 1, 2020

You do, however, need pull-ups on any I2C bus. Pis have built-in 1K8 pullups on the hardware I2C buses.

Is the servo motor not working for you? I didn't understand that from your original report - I thought you were suggesting a possible problem rather than an actual one.

@roxanaluca
Copy link
Author

The servo motors are working properly. I was worried about this problem.

pelwell added a commit to raspberrypi/linux that referenced this issue May 2, 2020
The i2c-gpio driver expects to use a GPIO in open-drain mode. Failure
to configure it in that way causes alarming warnings in the kernel log.
The BCM283x and BCM2711 GPIO blocks don't support open-drain mode,
but i2c-gpio works anyway. Silence the warning by declaring that
open-drain mode has been enabled by other means.

See: raspberrypi/firmware#1381

Signed-off-by: Phil Elwell <phil@raspberrypi.com>
pelwell added a commit to raspberrypi/linux that referenced this issue May 2, 2020
The i2c-gpio driver expects to use a GPIO in open-drain mode. Failure
to configure it in that way causes alarming warnings in the kernel log.
The BCM283x and BCM2711 GPIO blocks don't support open-drain mode,
but i2c-gpio works anyway. Silence the warning by declaring that
open-drain mode has been enabled by other means.

See: raspberrypi/firmware#1381

Signed-off-by: Phil Elwell <phil@raspberrypi.com>
@pelwell
Copy link
Contributor

pelwell commented May 2, 2020

The i2c-gpio overlay has been updated to avoid the alarming warnings. This does not change the functionality at all. The change is in our Linux kernel source repo, and will appear later in the Raspbian kernel package when it is next rebuilt.

pelwell added a commit to raspberrypi/linux that referenced this issue May 2, 2020
The i2c-gpio driver expects to use a GPIO in open-drain mode. Failure
to configure it in that way causes alarming warnings in the kernel log.
The BCM283x and BCM2711 GPIO blocks don't support open-drain mode,
but i2c-gpio works anyway. Silence the warning by declaring that
open-drain mode has been enabled by other means.

See: raspberrypi/firmware#1381

Signed-off-by: Phil Elwell <phil@raspberrypi.com>
popcornmix pushed a commit to raspberrypi/linux that referenced this issue May 4, 2020
The i2c-gpio driver expects to use a GPIO in open-drain mode. Failure
to configure it in that way causes alarming warnings in the kernel log.
The BCM283x and BCM2711 GPIO blocks don't support open-drain mode,
but i2c-gpio works anyway. Silence the warning by declaring that
open-drain mode has been enabled by other means.

See: raspberrypi/firmware#1381

Signed-off-by: Phil Elwell <phil@raspberrypi.com>
popcornmix pushed a commit to raspberrypi/linux that referenced this issue May 4, 2020
The i2c-gpio driver expects to use a GPIO in open-drain mode. Failure
to configure it in that way causes alarming warnings in the kernel log.
The BCM283x and BCM2711 GPIO blocks don't support open-drain mode,
but i2c-gpio works anyway. Silence the warning by declaring that
open-drain mode has been enabled by other means.

See: raspberrypi/firmware#1381

Signed-off-by: Phil Elwell <phil@raspberrypi.com>
popcornmix pushed a commit to raspberrypi/linux that referenced this issue May 11, 2020
The i2c-gpio driver expects to use a GPIO in open-drain mode. Failure
to configure it in that way causes alarming warnings in the kernel log.
The BCM283x and BCM2711 GPIO blocks don't support open-drain mode,
but i2c-gpio works anyway. Silence the warning by declaring that
open-drain mode has been enabled by other means.

See: raspberrypi/firmware#1381

Signed-off-by: Phil Elwell <phil@raspberrypi.com>
popcornmix added a commit that referenced this issue May 12, 2020
kernel: vc4_hdmi: Add CEC support for 2711
See: raspberrypi/linux#3601

kernel: overlays: Move fixed-clock nodes to the root
See: raspberrypi/linux#3607

kernel: bcm2835_isp fixes for constness
See: raspberrypi/linux#3592

kernel: video: bcm2708_fb: Disable FB if no displays found
See: raspberrypi/linux#3598

kernel: vc4_hdmi_phy: Fix typo in phy_get_cp_current
See: raspberrypi/linux#3594

kernel: configs: Add missing TOUCHSCREEN_RASPBERRYPI_FW=m
See: Hexxeh/rpi-firmware#223

kernel: configs: Add missing PPS configs
See: raspberrypi/linux#3593

kernel: overlays: gpio-keys: Avoid open-drain warnings
See: #1381

kernel: overlays: Make the i2c-gpio overlay safe again

kernel: ARM: dts: bcm2711: Allow 40-bit DMA for SPI
See: raspberrypi/linux#3570

firmware: In KMS mode, prevent use of the firmware rotations

firmware: power: Adjust ARM:AXI divider ratio if ARM freq > 1500 MHz

firmware: imx477: Remove STILLS flag from 720p mode

userland: tvservice: Fix freeze on old firmware
popcornmix added a commit to Hexxeh/rpi-firmware that referenced this issue May 12, 2020
kernel: vc4_hdmi: Add CEC support for 2711
See: raspberrypi/linux#3601

kernel: overlays: Move fixed-clock nodes to the root
See: raspberrypi/linux#3607

kernel: bcm2835_isp fixes for constness
See: raspberrypi/linux#3592

kernel: video: bcm2708_fb: Disable FB if no displays found
See: raspberrypi/linux#3598

kernel: vc4_hdmi_phy: Fix typo in phy_get_cp_current
See: raspberrypi/linux#3594

kernel: configs: Add missing TOUCHSCREEN_RASPBERRYPI_FW=m
See: #223

kernel: configs: Add missing PPS configs
See: raspberrypi/linux#3593

kernel: overlays: gpio-keys: Avoid open-drain warnings
See: raspberrypi/firmware#1381

kernel: overlays: Make the i2c-gpio overlay safe again

kernel: ARM: dts: bcm2711: Allow 40-bit DMA for SPI
See: raspberrypi/linux#3570

firmware: In KMS mode, prevent use of the firmware rotations

firmware: power: Adjust ARM:AXI divider ratio if ARM freq > 1500 MHz

firmware: imx477: Remove STILLS flag from 720p mode

userland: tvservice: Fix freeze on old firmware
popcornmix pushed a commit to raspberrypi/linux that referenced this issue May 20, 2020
The i2c-gpio driver expects to use a GPIO in open-drain mode. Failure
to configure it in that way causes alarming warnings in the kernel log.
The BCM283x and BCM2711 GPIO blocks don't support open-drain mode,
but i2c-gpio works anyway. Silence the warning by declaring that
open-drain mode has been enabled by other means.

See: raspberrypi/firmware#1381

Signed-off-by: Phil Elwell <phil@raspberrypi.com>
popcornmix pushed a commit to raspberrypi/linux that referenced this issue May 20, 2020
The i2c-gpio driver expects to use a GPIO in open-drain mode. Failure
to configure it in that way causes alarming warnings in the kernel log.
The BCM283x and BCM2711 GPIO blocks don't support open-drain mode,
but i2c-gpio works anyway. Silence the warning by declaring that
open-drain mode has been enabled by other means.

See: raspberrypi/firmware#1381

Signed-off-by: Phil Elwell <phil@raspberrypi.com>
popcornmix pushed a commit to raspberrypi/linux that referenced this issue Jun 3, 2020
The i2c-gpio driver expects to use a GPIO in open-drain mode. Failure
to configure it in that way causes alarming warnings in the kernel log.
The BCM283x and BCM2711 GPIO blocks don't support open-drain mode,
but i2c-gpio works anyway. Silence the warning by declaring that
open-drain mode has been enabled by other means.

See: raspberrypi/firmware#1381

Signed-off-by: Phil Elwell <phil@raspberrypi.com>
popcornmix pushed a commit to raspberrypi/linux that referenced this issue Jun 3, 2020
The i2c-gpio driver expects to use a GPIO in open-drain mode. Failure
to configure it in that way causes alarming warnings in the kernel log.
The BCM283x and BCM2711 GPIO blocks don't support open-drain mode,
but i2c-gpio works anyway. Silence the warning by declaring that
open-drain mode has been enabled by other means.

See: raspberrypi/firmware#1381

Signed-off-by: Phil Elwell <phil@raspberrypi.com>
pelwell added a commit to raspberrypi/linux that referenced this issue Jun 5, 2020
The i2c-gpio driver expects to use a GPIO in open-drain mode. Failure
to configure it in that way causes alarming warnings in the kernel log.
The BCM283x and BCM2711 GPIO blocks don't support open-drain mode, but
gpiolib can emulate it in software if configured correctly.

Silence the warning by declaring the GPIOs as requiring open-drain
mode, trusting gpiolib to manage the emulation. The previous
incarnation of this patch took the other approach of telling the
i2c-gpio driver that the GPIOs were configured for open-drain, but
this had the effect of disabling the emulation. In some cases this
appears to work, but examining the waveforms as analogue voltages
shows contention, the success or failure depending on drive strengths.

See: raspberrypi/firmware#1381
See: raspberrypi/firmware#1401

Signed-off-by: Phil Elwell <phil@raspberrypi.com>
pelwell added a commit to raspberrypi/linux that referenced this issue Jun 5, 2020
The i2c-gpio driver expects to use a GPIO in open-drain mode. Failure
to configure it in that way causes alarming warnings in the kernel log.
The BCM283x and BCM2711 GPIO blocks don't support open-drain mode, but
gpiolib can emulate it in software if configured correctly.

Silence the warning by declaring the GPIOs as requiring open-drain
mode, trusting gpiolib to manage the emulation. The previous
incarnation of this patch took the other approach of telling the
i2c-gpio driver that the GPIOs were configured for open-drain, but
this had the effect of disabling the emulation. In some cases this
appears to work, but examining the waveforms as analogue voltages
shows contention, the success or failure depending on drive strengths.

See: raspberrypi/firmware#1381
See: raspberrypi/firmware#1401

Signed-off-by: Phil Elwell <phil@raspberrypi.com>
pelwell added a commit to raspberrypi/linux that referenced this issue Jun 5, 2020
The i2c-gpio driver expects to use a GPIO in open-drain mode. Failure
to configure it in that way causes alarming warnings in the kernel log.
The BCM283x and BCM2711 GPIO blocks don't support open-drain mode, but
gpiolib can emulate it in software if configured correctly.

Silence the warning by declaring the GPIOs as requiring open-drain
mode, trusting gpiolib to manage the emulation. The previous
incarnation of this patch took the other approach of telling the
i2c-gpio driver that the GPIOs were configured for open-drain, but
this had the effect of disabling the emulation. In some cases this
appears to work, but examining the waveforms as analogue voltages
shows contention, the success or failure depending on drive strengths.

See: raspberrypi/firmware#1381
See: raspberrypi/firmware#1401

Signed-off-by: Phil Elwell <phil@raspberrypi.com>
pelwell added a commit to raspberrypi/linux that referenced this issue Jun 5, 2020
The i2c-gpio driver expects to use a GPIO in open-drain mode. Failure
to configure it in that way causes alarming warnings in the kernel log.
The BCM283x and BCM2711 GPIO blocks don't support open-drain mode, but
gpiolib can emulate it in software if configured correctly.

Silence the warning by declaring the GPIOs as requiring open-drain
mode, trusting gpiolib to manage the emulation. The previous
incarnation of this patch took the other approach of telling the
i2c-gpio driver that the GPIOs were configured for open-drain, but
this had the effect of disabling the emulation. In some cases this
appears to work, but examining the waveforms as analogue voltages
shows contention, the success or failure depending on drive strengths.

See: raspberrypi/firmware#1381
See: raspberrypi/firmware#1401

Signed-off-by: Phil Elwell <phil@raspberrypi.com>
jpuhlman pushed a commit to MontaVista-OpenSourceTechnology/linux-mvista that referenced this issue Jun 8, 2020
Source: kernel.org
MR: 103889
Type: Enhancement
Disposition: Merged from https://github.com/raspberrypi/linux.git rpi-5.4.y
ChangeID: ae10c15867d9a5b85eefaf11333bd30473af4b2b
Description:

The i2c-gpio driver expects to use a GPIO in open-drain mode. Failure
to configure it in that way causes alarming warnings in the kernel log.
The BCM283x and BCM2711 GPIO blocks don't support open-drain mode,
but i2c-gpio works anyway. Silence the warning by declaring that
open-drain mode has been enabled by other means.

See: raspberrypi/firmware#1381

Signed-off-by: Phil Elwell <phil@raspberrypi.com>
Signed-off-by: Corey Minyard <cminyard@mvista.com>
cminyard pushed a commit to MontaVista-OpenSourceTechnology/linux-pi that referenced this issue Jun 9, 2020
The i2c-gpio driver expects to use a GPIO in open-drain mode. Failure
to configure it in that way causes alarming warnings in the kernel log.
The BCM283x and BCM2711 GPIO blocks don't support open-drain mode, but
gpiolib can emulate it in software if configured correctly.

Silence the warning by declaring the GPIOs as requiring open-drain
mode, trusting gpiolib to manage the emulation. The previous
incarnation of this patch took the other approach of telling the
i2c-gpio driver that the GPIOs were configured for open-drain, but
this had the effect of disabling the emulation. In some cases this
appears to work, but examining the waveforms as analogue voltages
shows contention, the success or failure depending on drive strengths.

See: raspberrypi/firmware#1381
See: raspberrypi/firmware#1401

Signed-off-by: Phil Elwell <phil@raspberrypi.com>
popcornmix pushed a commit to raspberrypi/linux that referenced this issue Jun 10, 2020
The i2c-gpio driver expects to use a GPIO in open-drain mode. Failure
to configure it in that way causes alarming warnings in the kernel log.
The BCM283x and BCM2711 GPIO blocks don't support open-drain mode,
but i2c-gpio works anyway. Silence the warning by declaring that
open-drain mode has been enabled by other means.

See: raspberrypi/firmware#1381

Signed-off-by: Phil Elwell <phil@raspberrypi.com>
popcornmix pushed a commit to raspberrypi/linux that referenced this issue Jun 10, 2020
The i2c-gpio driver expects to use a GPIO in open-drain mode. Failure
to configure it in that way causes alarming warnings in the kernel log.
The BCM283x and BCM2711 GPIO blocks don't support open-drain mode, but
gpiolib can emulate it in software if configured correctly.

Silence the warning by declaring the GPIOs as requiring open-drain
mode, trusting gpiolib to manage the emulation. The previous
incarnation of this patch took the other approach of telling the
i2c-gpio driver that the GPIOs were configured for open-drain, but
this had the effect of disabling the emulation. In some cases this
appears to work, but examining the waveforms as analogue voltages
shows contention, the success or failure depending on drive strengths.

See: raspberrypi/firmware#1381
See: raspberrypi/firmware#1401

Signed-off-by: Phil Elwell <phil@raspberrypi.com>
popcornmix pushed a commit to raspberrypi/linux that referenced this issue Jun 10, 2020
The i2c-gpio driver expects to use a GPIO in open-drain mode. Failure
to configure it in that way causes alarming warnings in the kernel log.
The BCM283x and BCM2711 GPIO blocks don't support open-drain mode,
but i2c-gpio works anyway. Silence the warning by declaring that
open-drain mode has been enabled by other means.

See: raspberrypi/firmware#1381

Signed-off-by: Phil Elwell <phil@raspberrypi.com>
popcornmix pushed a commit to raspberrypi/linux that referenced this issue Jun 10, 2020
The i2c-gpio driver expects to use a GPIO in open-drain mode. Failure
to configure it in that way causes alarming warnings in the kernel log.
The BCM283x and BCM2711 GPIO blocks don't support open-drain mode, but
gpiolib can emulate it in software if configured correctly.

Silence the warning by declaring the GPIOs as requiring open-drain
mode, trusting gpiolib to manage the emulation. The previous
incarnation of this patch took the other approach of telling the
i2c-gpio driver that the GPIOs were configured for open-drain, but
this had the effect of disabling the emulation. In some cases this
appears to work, but examining the waveforms as analogue voltages
shows contention, the success or failure depending on drive strengths.

See: raspberrypi/firmware#1381
See: raspberrypi/firmware#1401

Signed-off-by: Phil Elwell <phil@raspberrypi.com>
popcornmix added a commit that referenced this issue Jun 10, 2020
kernel: vc4: cec: Restore cec physical address on reconnect
See: raspberrypi/linux#3655

kernel: snd_bcm2835: disable HDMI audio when vc4 is used
See: raspberrypi/linux#3640

kernel: Enhanced w1_therm Linux Kernel Module
See: raspberrypi/linux#3540

kernel: overlays: Update upstream overlays after vc4-kms-v3d change

kernel: overlays: i2c-gpio: Avoid open-drain warnings
See: #1381
See: #1401

kernel: staging: vchiq_arm: Use g_dma_dev for dma_unmap_sg
See: raspberrypi/linux#3647

firmware: arm_ldconfig: Don't pad initramfs files
See: #1395
popcornmix added a commit to Hexxeh/rpi-firmware that referenced this issue Jun 10, 2020
kernel: vc4: cec: Restore cec physical address on reconnect
See: raspberrypi/linux#3655

kernel: snd_bcm2835: disable HDMI audio when vc4 is used
See: raspberrypi/linux#3640

kernel: Enhanced w1_therm Linux Kernel Module
See: raspberrypi/linux#3540

kernel: overlays: Update upstream overlays after vc4-kms-v3d change

kernel: overlays: i2c-gpio: Avoid open-drain warnings
See: raspberrypi/firmware#1381
See: raspberrypi/firmware#1401

kernel: staging: vchiq_arm: Use g_dma_dev for dma_unmap_sg
See: raspberrypi/linux#3647

firmware: arm_ldconfig: Don't pad initramfs files
See: raspberrypi/firmware#1395
it-is-a-robot pushed a commit to openeuler-mirror/raspberrypi-kernel that referenced this issue Sep 10, 2021
The i2c-gpio driver expects to use a GPIO in open-drain mode. Failure
to configure it in that way causes alarming warnings in the kernel log.
The BCM283x and BCM2711 GPIO blocks don't support open-drain mode,
but i2c-gpio works anyway. Silence the warning by declaring that
open-drain mode has been enabled by other means.

See: raspberrypi/firmware#1381

Signed-off-by: Phil Elwell <phil@raspberrypi.com>
it-is-a-robot pushed a commit to openeuler-mirror/raspberrypi-kernel that referenced this issue Sep 10, 2021
The i2c-gpio driver expects to use a GPIO in open-drain mode. Failure
to configure it in that way causes alarming warnings in the kernel log.
The BCM283x and BCM2711 GPIO blocks don't support open-drain mode, but
gpiolib can emulate it in software if configured correctly.

Silence the warning by declaring the GPIOs as requiring open-drain
mode, trusting gpiolib to manage the emulation. The previous
incarnation of this patch took the other approach of telling the
i2c-gpio driver that the GPIOs were configured for open-drain, but
this had the effect of disabling the emulation. In some cases this
appears to work, but examining the waveforms as analogue voltages
shows contention, the success or failure depending on drive strengths.

See: raspberrypi/firmware#1381
See: raspberrypi/firmware#1401

Signed-off-by: Phil Elwell <phil@raspberrypi.com>
it-is-a-robot pushed a commit to openeuler-mirror/raspberrypi-kernel that referenced this issue Sep 19, 2021
The i2c-gpio driver expects to use a GPIO in open-drain mode. Failure
to configure it in that way causes alarming warnings in the kernel log.
The BCM283x and BCM2711 GPIO blocks don't support open-drain mode,
but i2c-gpio works anyway. Silence the warning by declaring that
open-drain mode has been enabled by other means.

See: raspberrypi/firmware#1381

Signed-off-by: Phil Elwell <phil@raspberrypi.com>
it-is-a-robot pushed a commit to openeuler-mirror/raspberrypi-kernel that referenced this issue Sep 19, 2021
The i2c-gpio driver expects to use a GPIO in open-drain mode. Failure
to configure it in that way causes alarming warnings in the kernel log.
The BCM283x and BCM2711 GPIO blocks don't support open-drain mode, but
gpiolib can emulate it in software if configured correctly.

Silence the warning by declaring the GPIOs as requiring open-drain
mode, trusting gpiolib to manage the emulation. The previous
incarnation of this patch took the other approach of telling the
i2c-gpio driver that the GPIOs were configured for open-drain, but
this had the effect of disabling the emulation. In some cases this
appears to work, but examining the waveforms as analogue voltages
shows contention, the success or failure depending on drive strengths.

See: raspberrypi/firmware#1381
See: raspberrypi/firmware#1401

Signed-off-by: Phil Elwell <phil@raspberrypi.com>
it-is-a-robot pushed a commit to openeuler-mirror/raspberrypi-kernel that referenced this issue Sep 23, 2021
The i2c-gpio driver expects to use a GPIO in open-drain mode. Failure
to configure it in that way causes alarming warnings in the kernel log.
The BCM283x and BCM2711 GPIO blocks don't support open-drain mode,
but i2c-gpio works anyway. Silence the warning by declaring that
open-drain mode has been enabled by other means.

See: raspberrypi/firmware#1381

Signed-off-by: Phil Elwell <phil@raspberrypi.com>
it-is-a-robot pushed a commit to openeuler-mirror/raspberrypi-kernel that referenced this issue Sep 23, 2021
The i2c-gpio driver expects to use a GPIO in open-drain mode. Failure
to configure it in that way causes alarming warnings in the kernel log.
The BCM283x and BCM2711 GPIO blocks don't support open-drain mode, but
gpiolib can emulate it in software if configured correctly.

Silence the warning by declaring the GPIOs as requiring open-drain
mode, trusting gpiolib to manage the emulation. The previous
incarnation of this patch took the other approach of telling the
i2c-gpio driver that the GPIOs were configured for open-drain, but
this had the effect of disabling the emulation. In some cases this
appears to work, but examining the waveforms as analogue voltages
shows contention, the success or failure depending on drive strengths.

See: raspberrypi/firmware#1381
See: raspberrypi/firmware#1401

Signed-off-by: Phil Elwell <phil@raspberrypi.com>
it-is-a-robot pushed a commit to openeuler-mirror/raspberrypi-kernel that referenced this issue Oct 1, 2021
The i2c-gpio driver expects to use a GPIO in open-drain mode. Failure
to configure it in that way causes alarming warnings in the kernel log.
The BCM283x and BCM2711 GPIO blocks don't support open-drain mode,
but i2c-gpio works anyway. Silence the warning by declaring that
open-drain mode has been enabled by other means.

See: raspberrypi/firmware#1381

Signed-off-by: Phil Elwell <phil@raspberrypi.com>
it-is-a-robot pushed a commit to openeuler-mirror/raspberrypi-kernel that referenced this issue Oct 1, 2021
The i2c-gpio driver expects to use a GPIO in open-drain mode. Failure
to configure it in that way causes alarming warnings in the kernel log.
The BCM283x and BCM2711 GPIO blocks don't support open-drain mode, but
gpiolib can emulate it in software if configured correctly.

Silence the warning by declaring the GPIOs as requiring open-drain
mode, trusting gpiolib to manage the emulation. The previous
incarnation of this patch took the other approach of telling the
i2c-gpio driver that the GPIOs were configured for open-drain, but
this had the effect of disabling the emulation. In some cases this
appears to work, but examining the waveforms as analogue voltages
shows contention, the success or failure depending on drive strengths.

See: raspberrypi/firmware#1381
See: raspberrypi/firmware#1401

Signed-off-by: Phil Elwell <phil@raspberrypi.com>
it-is-a-robot pushed a commit to openeuler-mirror/raspberrypi-kernel that referenced this issue Oct 9, 2021
The i2c-gpio driver expects to use a GPIO in open-drain mode. Failure
to configure it in that way causes alarming warnings in the kernel log.
The BCM283x and BCM2711 GPIO blocks don't support open-drain mode,
but i2c-gpio works anyway. Silence the warning by declaring that
open-drain mode has been enabled by other means.

See: raspberrypi/firmware#1381

Signed-off-by: Phil Elwell <phil@raspberrypi.com>
it-is-a-robot pushed a commit to openeuler-mirror/raspberrypi-kernel that referenced this issue Oct 9, 2021
The i2c-gpio driver expects to use a GPIO in open-drain mode. Failure
to configure it in that way causes alarming warnings in the kernel log.
The BCM283x and BCM2711 GPIO blocks don't support open-drain mode, but
gpiolib can emulate it in software if configured correctly.

Silence the warning by declaring the GPIOs as requiring open-drain
mode, trusting gpiolib to manage the emulation. The previous
incarnation of this patch took the other approach of telling the
i2c-gpio driver that the GPIOs were configured for open-drain, but
this had the effect of disabling the emulation. In some cases this
appears to work, but examining the waveforms as analogue voltages
shows contention, the success or failure depending on drive strengths.

See: raspberrypi/firmware#1381
See: raspberrypi/firmware#1401

Signed-off-by: Phil Elwell <phil@raspberrypi.com>
it-is-a-robot pushed a commit to openeuler-mirror/raspberrypi-kernel that referenced this issue Oct 15, 2021
The i2c-gpio driver expects to use a GPIO in open-drain mode. Failure
to configure it in that way causes alarming warnings in the kernel log.
The BCM283x and BCM2711 GPIO blocks don't support open-drain mode,
but i2c-gpio works anyway. Silence the warning by declaring that
open-drain mode has been enabled by other means.

See: raspberrypi/firmware#1381

Signed-off-by: Phil Elwell <phil@raspberrypi.com>
it-is-a-robot pushed a commit to openeuler-mirror/raspberrypi-kernel that referenced this issue Oct 15, 2021
The i2c-gpio driver expects to use a GPIO in open-drain mode. Failure
to configure it in that way causes alarming warnings in the kernel log.
The BCM283x and BCM2711 GPIO blocks don't support open-drain mode, but
gpiolib can emulate it in software if configured correctly.

Silence the warning by declaring the GPIOs as requiring open-drain
mode, trusting gpiolib to manage the emulation. The previous
incarnation of this patch took the other approach of telling the
i2c-gpio driver that the GPIOs were configured for open-drain, but
this had the effect of disabling the emulation. In some cases this
appears to work, but examining the waveforms as analogue voltages
shows contention, the success or failure depending on drive strengths.

See: raspberrypi/firmware#1381
See: raspberrypi/firmware#1401

Signed-off-by: Phil Elwell <phil@raspberrypi.com>
it-is-a-robot pushed a commit to openeuler-mirror/raspberrypi-kernel that referenced this issue Oct 21, 2021
The i2c-gpio driver expects to use a GPIO in open-drain mode. Failure
to configure it in that way causes alarming warnings in the kernel log.
The BCM283x and BCM2711 GPIO blocks don't support open-drain mode,
but i2c-gpio works anyway. Silence the warning by declaring that
open-drain mode has been enabled by other means.

See: raspberrypi/firmware#1381

Signed-off-by: Phil Elwell <phil@raspberrypi.com>
it-is-a-robot pushed a commit to openeuler-mirror/raspberrypi-kernel that referenced this issue Oct 21, 2021
The i2c-gpio driver expects to use a GPIO in open-drain mode. Failure
to configure it in that way causes alarming warnings in the kernel log.
The BCM283x and BCM2711 GPIO blocks don't support open-drain mode, but
gpiolib can emulate it in software if configured correctly.

Silence the warning by declaring the GPIOs as requiring open-drain
mode, trusting gpiolib to manage the emulation. The previous
incarnation of this patch took the other approach of telling the
i2c-gpio driver that the GPIOs were configured for open-drain, but
this had the effect of disabling the emulation. In some cases this
appears to work, but examining the waveforms as analogue voltages
shows contention, the success or failure depending on drive strengths.

See: raspberrypi/firmware#1381
See: raspberrypi/firmware#1401

Signed-off-by: Phil Elwell <phil@raspberrypi.com>
it-is-a-robot pushed a commit to openeuler-mirror/raspberrypi-kernel that referenced this issue Nov 15, 2021
The i2c-gpio driver expects to use a GPIO in open-drain mode. Failure
to configure it in that way causes alarming warnings in the kernel log.
The BCM283x and BCM2711 GPIO blocks don't support open-drain mode,
but i2c-gpio works anyway. Silence the warning by declaring that
open-drain mode has been enabled by other means.

See: raspberrypi/firmware#1381

Signed-off-by: Phil Elwell <phil@raspberrypi.com>
it-is-a-robot pushed a commit to openeuler-mirror/raspberrypi-kernel that referenced this issue Nov 15, 2021
The i2c-gpio driver expects to use a GPIO in open-drain mode. Failure
to configure it in that way causes alarming warnings in the kernel log.
The BCM283x and BCM2711 GPIO blocks don't support open-drain mode, but
gpiolib can emulate it in software if configured correctly.

Silence the warning by declaring the GPIOs as requiring open-drain
mode, trusting gpiolib to manage the emulation. The previous
incarnation of this patch took the other approach of telling the
i2c-gpio driver that the GPIOs were configured for open-drain, but
this had the effect of disabling the emulation. In some cases this
appears to work, but examining the waveforms as analogue voltages
shows contention, the success or failure depending on drive strengths.

See: raspberrypi/firmware#1381
See: raspberrypi/firmware#1401

Signed-off-by: Phil Elwell <phil@raspberrypi.com>
it-is-a-robot pushed a commit to openeuler-mirror/raspberrypi-kernel that referenced this issue Nov 17, 2021
The i2c-gpio driver expects to use a GPIO in open-drain mode. Failure
to configure it in that way causes alarming warnings in the kernel log.
The BCM283x and BCM2711 GPIO blocks don't support open-drain mode,
but i2c-gpio works anyway. Silence the warning by declaring that
open-drain mode has been enabled by other means.

See: raspberrypi/firmware#1381

Signed-off-by: Phil Elwell <phil@raspberrypi.com>
it-is-a-robot pushed a commit to openeuler-mirror/raspberrypi-kernel that referenced this issue Nov 17, 2021
The i2c-gpio driver expects to use a GPIO in open-drain mode. Failure
to configure it in that way causes alarming warnings in the kernel log.
The BCM283x and BCM2711 GPIO blocks don't support open-drain mode, but
gpiolib can emulate it in software if configured correctly.

Silence the warning by declaring the GPIOs as requiring open-drain
mode, trusting gpiolib to manage the emulation. The previous
incarnation of this patch took the other approach of telling the
i2c-gpio driver that the GPIOs were configured for open-drain, but
this had the effect of disabling the emulation. In some cases this
appears to work, but examining the waveforms as analogue voltages
shows contention, the success or failure depending on drive strengths.

See: raspberrypi/firmware#1381
See: raspberrypi/firmware#1401

Signed-off-by: Phil Elwell <phil@raspberrypi.com>
it-is-a-robot pushed a commit to openeuler-mirror/raspberrypi-kernel that referenced this issue Nov 24, 2021
The i2c-gpio driver expects to use a GPIO in open-drain mode. Failure
to configure it in that way causes alarming warnings in the kernel log.
The BCM283x and BCM2711 GPIO blocks don't support open-drain mode,
but i2c-gpio works anyway. Silence the warning by declaring that
open-drain mode has been enabled by other means.

See: raspberrypi/firmware#1381

Signed-off-by: Phil Elwell <phil@raspberrypi.com>
it-is-a-robot pushed a commit to openeuler-mirror/raspberrypi-kernel that referenced this issue Nov 24, 2021
The i2c-gpio driver expects to use a GPIO in open-drain mode. Failure
to configure it in that way causes alarming warnings in the kernel log.
The BCM283x and BCM2711 GPIO blocks don't support open-drain mode, but
gpiolib can emulate it in software if configured correctly.

Silence the warning by declaring the GPIOs as requiring open-drain
mode, trusting gpiolib to manage the emulation. The previous
incarnation of this patch took the other approach of telling the
i2c-gpio driver that the GPIOs were configured for open-drain, but
this had the effect of disabling the emulation. In some cases this
appears to work, but examining the waveforms as analogue voltages
shows contention, the success or failure depending on drive strengths.

See: raspberrypi/firmware#1381
See: raspberrypi/firmware#1401

Signed-off-by: Phil Elwell <phil@raspberrypi.com>
it-is-a-robot pushed a commit to openeuler-mirror/raspberrypi-kernel that referenced this issue Dec 11, 2021
The i2c-gpio driver expects to use a GPIO in open-drain mode. Failure
to configure it in that way causes alarming warnings in the kernel log.
The BCM283x and BCM2711 GPIO blocks don't support open-drain mode,
but i2c-gpio works anyway. Silence the warning by declaring that
open-drain mode has been enabled by other means.

See: raspberrypi/firmware#1381

Signed-off-by: Phil Elwell <phil@raspberrypi.com>
it-is-a-robot pushed a commit to openeuler-mirror/raspberrypi-kernel that referenced this issue Dec 11, 2021
The i2c-gpio driver expects to use a GPIO in open-drain mode. Failure
to configure it in that way causes alarming warnings in the kernel log.
The BCM283x and BCM2711 GPIO blocks don't support open-drain mode, but
gpiolib can emulate it in software if configured correctly.

Silence the warning by declaring the GPIOs as requiring open-drain
mode, trusting gpiolib to manage the emulation. The previous
incarnation of this patch took the other approach of telling the
i2c-gpio driver that the GPIOs were configured for open-drain, but
this had the effect of disabling the emulation. In some cases this
appears to work, but examining the waveforms as analogue voltages
shows contention, the success or failure depending on drive strengths.

See: raspberrypi/firmware#1381
See: raspberrypi/firmware#1401

Signed-off-by: Phil Elwell <phil@raspberrypi.com>
it-is-a-robot pushed a commit to openeuler-mirror/raspberrypi-kernel that referenced this issue Dec 21, 2021
The i2c-gpio driver expects to use a GPIO in open-drain mode. Failure
to configure it in that way causes alarming warnings in the kernel log.
The BCM283x and BCM2711 GPIO blocks don't support open-drain mode,
but i2c-gpio works anyway. Silence the warning by declaring that
open-drain mode has been enabled by other means.

See: raspberrypi/firmware#1381

Signed-off-by: Phil Elwell <phil@raspberrypi.com>
it-is-a-robot pushed a commit to openeuler-mirror/raspberrypi-kernel that referenced this issue Dec 21, 2021
The i2c-gpio driver expects to use a GPIO in open-drain mode. Failure
to configure it in that way causes alarming warnings in the kernel log.
The BCM283x and BCM2711 GPIO blocks don't support open-drain mode, but
gpiolib can emulate it in software if configured correctly.

Silence the warning by declaring the GPIOs as requiring open-drain
mode, trusting gpiolib to manage the emulation. The previous
incarnation of this patch took the other approach of telling the
i2c-gpio driver that the GPIOs were configured for open-drain, but
this had the effect of disabling the emulation. In some cases this
appears to work, but examining the waveforms as analogue voltages
shows contention, the success or failure depending on drive strengths.

See: raspberrypi/firmware#1381
See: raspberrypi/firmware#1401

Signed-off-by: Phil Elwell <phil@raspberrypi.com>
it-is-a-robot pushed a commit to openeuler-mirror/raspberrypi-kernel that referenced this issue Dec 23, 2021
The i2c-gpio driver expects to use a GPIO in open-drain mode. Failure
to configure it in that way causes alarming warnings in the kernel log.
The BCM283x and BCM2711 GPIO blocks don't support open-drain mode,
but i2c-gpio works anyway. Silence the warning by declaring that
open-drain mode has been enabled by other means.

See: raspberrypi/firmware#1381

Signed-off-by: Phil Elwell <phil@raspberrypi.com>
it-is-a-robot pushed a commit to openeuler-mirror/raspberrypi-kernel that referenced this issue Dec 23, 2021
The i2c-gpio driver expects to use a GPIO in open-drain mode. Failure
to configure it in that way causes alarming warnings in the kernel log.
The BCM283x and BCM2711 GPIO blocks don't support open-drain mode, but
gpiolib can emulate it in software if configured correctly.

Silence the warning by declaring the GPIOs as requiring open-drain
mode, trusting gpiolib to manage the emulation. The previous
incarnation of this patch took the other approach of telling the
i2c-gpio driver that the GPIOs were configured for open-drain, but
this had the effect of disabling the emulation. In some cases this
appears to work, but examining the waveforms as analogue voltages
shows contention, the success or failure depending on drive strengths.

See: raspberrypi/firmware#1381
See: raspberrypi/firmware#1401

Signed-off-by: Phil Elwell <phil@raspberrypi.com>
it-is-a-robot pushed a commit to openeuler-mirror/raspberrypi-kernel that referenced this issue Dec 31, 2021
The i2c-gpio driver expects to use a GPIO in open-drain mode. Failure
to configure it in that way causes alarming warnings in the kernel log.
The BCM283x and BCM2711 GPIO blocks don't support open-drain mode,
but i2c-gpio works anyway. Silence the warning by declaring that
open-drain mode has been enabled by other means.

See: raspberrypi/firmware#1381

Signed-off-by: Phil Elwell <phil@raspberrypi.com>
it-is-a-robot pushed a commit to openeuler-mirror/raspberrypi-kernel that referenced this issue Dec 31, 2021
The i2c-gpio driver expects to use a GPIO in open-drain mode. Failure
to configure it in that way causes alarming warnings in the kernel log.
The BCM283x and BCM2711 GPIO blocks don't support open-drain mode, but
gpiolib can emulate it in software if configured correctly.

Silence the warning by declaring the GPIOs as requiring open-drain
mode, trusting gpiolib to manage the emulation. The previous
incarnation of this patch took the other approach of telling the
i2c-gpio driver that the GPIOs were configured for open-drain, but
this had the effect of disabling the emulation. In some cases this
appears to work, but examining the waveforms as analogue voltages
shows contention, the success or failure depending on drive strengths.

See: raspberrypi/firmware#1381
See: raspberrypi/firmware#1401

Signed-off-by: Phil Elwell <phil@raspberrypi.com>
it-is-a-robot pushed a commit to openeuler-mirror/raspberrypi-kernel that referenced this issue Jan 6, 2022
The i2c-gpio driver expects to use a GPIO in open-drain mode. Failure
to configure it in that way causes alarming warnings in the kernel log.
The BCM283x and BCM2711 GPIO blocks don't support open-drain mode,
but i2c-gpio works anyway. Silence the warning by declaring that
open-drain mode has been enabled by other means.

See: raspberrypi/firmware#1381

Signed-off-by: Phil Elwell <phil@raspberrypi.com>
it-is-a-robot pushed a commit to openeuler-mirror/raspberrypi-kernel that referenced this issue Jan 6, 2022
The i2c-gpio driver expects to use a GPIO in open-drain mode. Failure
to configure it in that way causes alarming warnings in the kernel log.
The BCM283x and BCM2711 GPIO blocks don't support open-drain mode, but
gpiolib can emulate it in software if configured correctly.

Silence the warning by declaring the GPIOs as requiring open-drain
mode, trusting gpiolib to manage the emulation. The previous
incarnation of this patch took the other approach of telling the
i2c-gpio driver that the GPIOs were configured for open-drain, but
this had the effect of disabling the emulation. In some cases this
appears to work, but examining the waveforms as analogue voltages
shows contention, the success or failure depending on drive strengths.

See: raspberrypi/firmware#1381
See: raspberrypi/firmware#1401

Signed-off-by: Phil Elwell <phil@raspberrypi.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants