Re: Kernel Oops while loading I2C SSDT overlay with Designware I2C adapter

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi

On 16.11.2016 00:01, David Scully wrote:
I have written an overlay based on a mix of the DSDT for Lenovo 100s and the example in the ssdt-overlay documentation which binds the audio codec to an i2c interface using  the Synopsys Designware I2C adapter. I have attempted to load the driver via the EFI method as well as the configfs method in the documentation, but both cause an immediate kernel oops. The overlay does not cause an oops if I target bus not controlled by the DesignWare adapter.

...
SSDT Overlay: https://gist.github.com/anonymous/eddfbb85aebcda2d547ee61873fa7117

I didn't point anything obviously wrong in your SSDT but I Cc'ed also Mika if he notices something.

I tested the configfs method with ADXL345 on Intel Joule board which is also using Designware I2C adapter and on it I was able dynamically add the chip. I tried both v4.9.0-rc5 and v4.8.3.

If I'm interpreting the disassembly correctly, I believe that the problem is that the aic31xx_i2c_probe's i2c_client argument is null for the i2c_adapter pointer.

One way to debug this is to build tlv320aic31xx into the kernel with CONFIG_DEBUG_INFO=y and use "addr2line -e vmlinux [address]" to see the source line where it oopsed. I often also add debug prints around to see pointer values etc.

--
Jarkko
--
To unsubscribe from this list: send the line "unsubscribe linux-i2c" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux GPIO]     [Linux SPI]     [Linux Hardward Monitoring]     [LM Sensors]     [Linux USB Devel]     [Linux Media]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux