TS-7250-V3 TS-SER4: Difference between revisions

From embeddedTS Manuals
No edit summary
No edit summary
Line 20: Line 20:
For example, with the IRQ2,IRQ6, and COM1 jumpers installed.
For example, with the IRQ2,IRQ6, and COM1 jumpers installed.


Open the device tree at arch/arm/boot/dts/imx6ul-ts7250v3.dts:
Open the device tree at arch/arm/boot/dts/imx6ul-ts7250v3.dts.  Add the highlighted section to the device tree and recompile.
<source lang=json highlight="13-55" line>
<source lang=json highlight="13-55" line>
pc104bus: fpgaisa@50 {
pc104bus: fpgaisa@50 {
Line 79: Line 79:
};
};
</source>
</source>
On the next boot check the "dmesg" output to verify it loaded:
<console>
root@tsimx6:~# dmesg | grep ts16550
[    2.259413] ts16550 50004050.fpgaisa:ts16550@3f8: Adding 16550 UART ttyS0
[    2.268166] ts16550 50004050.fpgaisa:ts16550@2f8: Adding 16550 UART ttyS1
[    2.278539] ts16550 50004050.fpgaisa:ts16550@3e8: Adding 16550 UART ttyS2
[    2.287455] ts16550 50004050.fpgaisa:ts16550@2e8: Adding 16550 UART ttyS3
</console>

Revision as of 17:27, 4 March 2020

TS-SER4
Ts-ser4.jpg
Product Page
8-bit IO

The TS-SER4 supports 4 UARTs as RS-232, RS-485, or RS-422.

Refer to the TS-SER4 manual for hardware documentation.

The TS-SER4 implements 16550A based UARTs which require a kernel driver.

Under Linux this requires a device tree change. See the Kernel compile section for more details about getting set up the compile the kernel.

For example, with the IRQ2,IRQ6, and COM1 jumpers installed.

Open the device tree at arch/arm/boot/dts/imx6ul-ts7250v3.dts. Add the highlighted section to the device tree and recompile.

pc104bus: fpgaisa@50 {
	compatible = "technologic,pc104-bus";
	reg = <0x50 0x4>;

	ranges = <0 0 0x1000>;
	reset-gpio = <&gpio3 7 0>;

	#address-cells = <0x1>;
	#size-cells = <0x1>;

	status = "okay";

	/* COMA */
	ts16550@3f8 {
		compatible = "technologic,ts16550";

		reg = <0x3f8 8>;
		interrupt-parent = <&fpga_intc>;
		interrupts = <15>;

		status = "okay";
	};

	/* COMB */
	ts16550@2f8 {
		compatible = "technologic,ts16550";

		reg = <0x2f8 8>;
		interrupt-parent = <&fpga_intc>;
		interrupts = <15>;

		status = "okay";
	};

	/* COMC */
	ts16550@3e8 {
		compatible = "technologic,ts16550";

		reg = <0x3e8 8>;
		interrupt-parent = <&fpga_intc>;
		interrupts = <15>;

		status = "okay";
	};

	/* COMD */
	ts16550@2e8 {
		compatible = "technologic,ts16550";

		reg = <0x2e8 8>;
		interrupt-parent = <&fpga_intc>;
		interrupts = <15>;

		status = "okay";
	};
};

On the next boot check the "dmesg" output to verify it loaded:

root@tsimx6:~# dmesg | grep ts16550
[    2.259413] ts16550 50004050.fpgaisa:ts16550@3f8: Adding 16550 UART ttyS0
[    2.268166] ts16550 50004050.fpgaisa:ts16550@2f8: Adding 16550 UART ttyS1
[    2.278539] ts16550 50004050.fpgaisa:ts16550@3e8: Adding 16550 UART ttyS2
[    2.287455] ts16550 50004050.fpgaisa:ts16550@2e8: Adding 16550 UART ttyS3