162306a36Sopenharmony_ciKeystone 2 DSP GPIO controller bindings 262306a36Sopenharmony_ci 362306a36Sopenharmony_ciHOST OS userland running on ARM can send interrupts to DSP cores using 462306a36Sopenharmony_cithe DSP GPIO controller IP. It provides 28 IRQ signals per each DSP core. 562306a36Sopenharmony_ciThis is one of the component used by the IPC mechanism used on Keystone SOCs. 662306a36Sopenharmony_ci 762306a36Sopenharmony_ciFor example TCI6638K2K SoC has 8 DSP GPIO controllers: 862306a36Sopenharmony_ci - 8 for C66x CorePacx CPUs 0-7 962306a36Sopenharmony_ci 1062306a36Sopenharmony_ciKeystone 2 DSP GPIO controller has specific features: 1162306a36Sopenharmony_ci- each GPIO can be configured only as output pin; 1262306a36Sopenharmony_ci- setting GPIO value to 1 causes IRQ generation on target DSP core; 1362306a36Sopenharmony_ci- reading pin value returns 0 - if IRQ was handled or 1 - IRQ is still 1462306a36Sopenharmony_ci pending. 1562306a36Sopenharmony_ci 1662306a36Sopenharmony_ciRequired Properties: 1762306a36Sopenharmony_ci- compatible: should be "ti,keystone-dsp-gpio" 1862306a36Sopenharmony_ci- ti,syscon-dev: phandle/offset pair. The phandle to syscon used to 1962306a36Sopenharmony_ci access device state control registers and the offset of device's specific 2062306a36Sopenharmony_ci registers within device state control registers range. 2162306a36Sopenharmony_ci- gpio-controller: Marks the device node as a gpio controller. 2262306a36Sopenharmony_ci- #gpio-cells: Should be 2. 2362306a36Sopenharmony_ci 2462306a36Sopenharmony_ciPlease refer to gpio.txt in this directory for details of the common GPIO 2562306a36Sopenharmony_cibindings used by client devices. 2662306a36Sopenharmony_ci 2762306a36Sopenharmony_ciExample: 2862306a36Sopenharmony_ci dspgpio0: keystone_dsp_gpio@2620240 { 2962306a36Sopenharmony_ci compatible = "ti,keystone-dsp-gpio"; 3062306a36Sopenharmony_ci ti,syscon-dev = <&devctrl 0x240>; 3162306a36Sopenharmony_ci gpio-controller; 3262306a36Sopenharmony_ci #gpio-cells = <2>; 3362306a36Sopenharmony_ci }; 3462306a36Sopenharmony_ci 3562306a36Sopenharmony_ci dsp0: dsp0 { 3662306a36Sopenharmony_ci compatible = "linux,rproc-user"; 3762306a36Sopenharmony_ci ... 3862306a36Sopenharmony_ci kick-gpio = <&dspgpio0 27>; 3962306a36Sopenharmony_ci }; 40