Загрузка данных


PROGRAMN = порт P4 (нумерация с 0) расширителя PCAL6408AHK, который подключен к шине I2C4 (нумерация с 1). Исходно на этом порту сигнал CAN2_EN.
INITN = GPIO2_IO25. Исходно на этом порту сигнал CAN2_TX.
DONE = GPIO2_IO27. Исходно на этом порту сигнал CAN2_RX.

	lif_md6000@40 {
		compatible = "fpga,fpga_csi_bridge";
		reg = <0x40>;
		status = "okay";

		rst-gpios = <&i2c3_gpio_expander_20 2 GPIO_ACTIVE_LOW>;

		#address-cells = <1>;
		#size-cells = <0>;
надо добавить эти gpio в dts и в код:
	priv->fpga_priv.dev = dev;
	priv->fpga_priv.command_transfer = sysconfig_i2c_cmd_transfer;
	priv->fpga_priv.bitstream_burst_write_init = sysconfig_i2c_bitstream_burst_init;
	priv->fpga_priv.bitstream_burst_write = sysconfig_i2c_bitstream_burst_write;
	priv->fpga_priv.bitstream_burst_write_complete = sysconfig_i2c_bitstream_burst_complete;
	priv->program = devm_gpiod_get_optional(&client->dev, "program", GPIOD_OUT_LOW);
	priv->init = devm_gpiod_get_optional(&client->dev, "init", GPIOD_OUT_LOW);
	priv->done = devm_gpiod_get_optional(&client->dev, "done", GPIOD_OUT_LOW);
	ret = sysconfig_probe(&priv->fpga_priv);