AG replicas across two FCIs I have the following setup:

One Windows cluster consisting of four cluster nodes: A, B, C, D. Cluster nodes A and B in one data centre, cluster nodes C and D in a second data centre. 

SQL failover cluster instance SQLFCI1 defined over nodes A and B, SQL failover cluster instance SQLFCI2 defined over nodes C and D.

SQL availability group SQLAG1 defined on SQLFCI1 with asynchronous replica being SQLFCI2. SQLAG1 associated with  listener SQLListener1. 

All client apps use SQLListener1 in their application connection strings.

End result

High availability because of FCI between A and B in data centre 1 as well as disaster recovery to FCI between C and D via async availability group. That DR site has high availability as well because the availability group sits on an FCI as well.

Minimal impact to applications because they all use the AG listener name that in effect can move across all four nodes.

Quorum partner in a third data centre.

Is this a valid setup?
Is this a valid setup ?


Yes.  This configuration is detailed here:

AlwaysOn Architecture Guide: Building a High Availability and Disaster Recovery Solution by Using Failover Cluster Instances and Availability Groups 

If you want automated failover between data centers, look at using a Cloud Witness for cluster quorum.