hw/riscv: microchip_pfsoc: Hook the I2C1 controller
The latest SD card image [1] released by Microchip ships a Linux kernel with built-in PolarFire SoC I2C driver support. The device tree file includes the description for the I2C1 node hence kernel tries to probe the I2C1 device during boot. It is enough to create an unimplemented device for I2C1 to allow the kernel to continue booting to the shell. [1] ftp://ftpsoc.microsemi.com/outgoing/core-image-minimal-dev-icicle-kit-es-sd-20201009141623.rootfs.wic.gz Signed-off-by: Bin Meng <bin.meng@windriver.com> Reviewed-by: Alistair Francis <alistair.francis@wdc.com> Message-id: 1603863010-15807-11-git-send-email-bmeng.cn@gmail.com Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
This commit is contained in:
parent
f03100d718
commit
90742c5496
@ -113,6 +113,7 @@ static const struct MemmapEntry {
|
|||||||
[MICROCHIP_PFSOC_MMUART2] = { 0x20102000, 0x1000 },
|
[MICROCHIP_PFSOC_MMUART2] = { 0x20102000, 0x1000 },
|
||||||
[MICROCHIP_PFSOC_MMUART3] = { 0x20104000, 0x1000 },
|
[MICROCHIP_PFSOC_MMUART3] = { 0x20104000, 0x1000 },
|
||||||
[MICROCHIP_PFSOC_MMUART4] = { 0x20106000, 0x1000 },
|
[MICROCHIP_PFSOC_MMUART4] = { 0x20106000, 0x1000 },
|
||||||
|
[MICROCHIP_PFSOC_I2C1] = { 0x2010b000, 0x1000 },
|
||||||
[MICROCHIP_PFSOC_GEM0] = { 0x20110000, 0x2000 },
|
[MICROCHIP_PFSOC_GEM0] = { 0x20110000, 0x2000 },
|
||||||
[MICROCHIP_PFSOC_GEM1] = { 0x20112000, 0x2000 },
|
[MICROCHIP_PFSOC_GEM1] = { 0x20112000, 0x2000 },
|
||||||
[MICROCHIP_PFSOC_GPIO0] = { 0x20120000, 0x1000 },
|
[MICROCHIP_PFSOC_GPIO0] = { 0x20120000, 0x1000 },
|
||||||
@ -343,6 +344,11 @@ static void microchip_pfsoc_soc_realize(DeviceState *dev, Error **errp)
|
|||||||
qdev_get_gpio_in(DEVICE(s->plic), MICROCHIP_PFSOC_MMUART4_IRQ),
|
qdev_get_gpio_in(DEVICE(s->plic), MICROCHIP_PFSOC_MMUART4_IRQ),
|
||||||
serial_hd(4));
|
serial_hd(4));
|
||||||
|
|
||||||
|
/* I2C1 */
|
||||||
|
create_unimplemented_device("microchip.pfsoc.i2c1",
|
||||||
|
memmap[MICROCHIP_PFSOC_I2C1].base,
|
||||||
|
memmap[MICROCHIP_PFSOC_I2C1].size);
|
||||||
|
|
||||||
/* GEMs */
|
/* GEMs */
|
||||||
|
|
||||||
nd = &nd_table[0];
|
nd = &nd_table[0];
|
||||||
|
@ -97,6 +97,7 @@ enum {
|
|||||||
MICROCHIP_PFSOC_MMUART2,
|
MICROCHIP_PFSOC_MMUART2,
|
||||||
MICROCHIP_PFSOC_MMUART3,
|
MICROCHIP_PFSOC_MMUART3,
|
||||||
MICROCHIP_PFSOC_MMUART4,
|
MICROCHIP_PFSOC_MMUART4,
|
||||||
|
MICROCHIP_PFSOC_I2C1,
|
||||||
MICROCHIP_PFSOC_GEM0,
|
MICROCHIP_PFSOC_GEM0,
|
||||||
MICROCHIP_PFSOC_GEM1,
|
MICROCHIP_PFSOC_GEM1,
|
||||||
MICROCHIP_PFSOC_GPIO0,
|
MICROCHIP_PFSOC_GPIO0,
|
||||||
|
Loading…
Reference in New Issue
Block a user