Training courses

Kernel and Embedded Linux

Bootlin training courses

Embedded Linux, kernel,
Yocto Project, Buildroot, real-time,
graphics, boot time, debugging...

Bootlin logo

Elixir Cross Referencer

* NXP PCA953x I2C GPIO multiplexer

Required properties:
 - compatible: Has to contain one of the following:
	nxp,pca6416
	nxp,pca9505
	nxp,pca9534
	nxp,pca9535
	nxp,pca9536
	nxp,pca9537
	nxp,pca9538
	nxp,pca9539
	nxp,pca9554
	nxp,pca9555
	nxp,pca9556
	nxp,pca9557
	nxp,pca9574
	nxp,pca9575
	nxp,pca9698
	nxp,pcal6416
	nxp,pcal6524
	nxp,pcal9555a
	maxim,max7310
	maxim,max7312
	maxim,max7313
	maxim,max7315
	ti,pca6107
	ti,pca9536
	ti,tca6408
	ti,tca6416
	ti,tca6424
	ti,tca9539
	ti,tca9554
	onnn,cat9554
	onnn,pca9654
	exar,xra1202
 - gpio-controller: if used as gpio expander.
 - #gpio-cells: if used as gpio expander.
 - interrupt-controller: if to be used as interrupt expander.
 - #interrupt-cells: if to be used as interrupt expander.

Optional properties:
 - interrupts: interrupt specifier for the device's interrupt output.
 - reset-gpios: GPIO specification for the RESET input. This is an
		active low signal to the PCA953x.
 - vcc-supply:	power supply regulator.

Example:


	gpio@20 {
		compatible = "nxp,pca9505";
		reg = <0x20>;
		pinctrl-names = "default";
		pinctrl-0 = <&pinctrl_pca9505>;
		gpio-controller;
		#gpio-cells = <2>;
		interrupt-parent = <&gpio3>;
		interrupts = <23 IRQ_TYPE_LEVEL_LOW>;
	};


Example with Interrupts:


	gpio99: gpio@22 {
		compatible = "nxp,pcal6524";
		reg = <0x22>;
		interrupt-parent = <&gpio6>;
		interrupts = <1 IRQ_TYPE_EDGE_FALLING>;	/* gpio6_161 */
		interrupt-controller;
		#interrupt-cells = <2>;
		vcc-supply = <&vdds_1v8_main>;
		gpio-controller;
		#gpio-cells = <2>;
		gpio-line-names =
			"hdmi-ct-hpd", "hdmi.ls-oe", "p02", "p03", "vibra", "fault2", "p06", "p07",
			"en-usb", "en-host1", "en-host2", "chg-int", "p14", "p15", "mic-int", "en-modem",
			"shdn-hs-amp", "chg-status+red", "green", "blue", "en-esata", "fault1", "p26", "p27";
	};

	ts3a227@3b {
		compatible = "ti,ts3a227e";
		reg = <0x3b>;
		interrupt-parent = <&gpio99>;
		interrupts = <14 IRQ_TYPE_EDGE_RISING>;
		ti,micbias = <0>;	/* 2.1V */
	};