diff --git a/dsdt.dsl b/dsdt.dsl
index 23e898ec999d..ab2d3fbee978 100644
--- a/dsdt.dsl
+++ b/dsdt.dsl
@@ -15023,6 +15023,7 @@ DefinitionBlock ("", "DSDT", 2, "ALASKA", "A M I ", 0x01082018)
                 }
             }
 
+            Name (_ADR, 0x00140003)  // _ADR: Address
             Name (_HID, "INT343E")  // _HID: Hardware ID
             Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
             {
@@ -15041,6 +15042,65 @@ DefinitionBlock ("", "DSDT", 2, "ALASKA", "A M I ", 0x01082018)
                 CIOV = CIOI /* \CIOI */
                 Return (CBUF) /* \_SB_.PCI0.CIO2._CRS.CBUF */
             }
+
+                    /* CIO2 device ports, port0 connected to CAM0 and port1 to CAM1 */
+                    Name (_DSD, Package () {
+                        ToUUID ("dbb8e3e6-5886-4ba6-8795-1319f52a966b"),
+                        Package () {
+                            Package () { "port0", "PRT0" },
+                            Package () { "port1", "PRT1" },
+                        }
+                    })
+
+                    Name (PRT0, Package () {
+                         ToUUID ("daffd814-6eba-4d8c-8a91-bc9bbf4aa301"),
+                         Package () {
+                             Package () { "port", 0 }, /* csi 0 */
+                         },
+                         ToUUID ("dbb8e3e6-5886-4ba6-8795-1319f52a966b"),
+                         Package () {
+                             Package () { "endpoint0", "EP00" },
+                         }
+                    })
+
+                    Name (PRT1, Package () {
+                         ToUUID ("daffd814-6eba-4d8c-8a91-bc9bbf4aa301"),
+                         Package () {
+                             Package () { "port", 1 }, /* csi 1 */
+                         },
+                         ToUUID ("dbb8e3e6-5886-4ba6-8795-1319f52a966b"),
+                         Package () {
+                             Package () { "endpoint0", "EP10" },
+                         }
+                    })
+
+                    /* Define two endpoints for CIO2 device where endpoint of port0
+                       is connected to CAM0 and endpoint of port1 is connected to CAM1. */
+
+                    /* CIO2 device endpoints */
+                    Name (EP00, Package() {
+                         ToUUID ("daffd814-6eba-4d8c-8a91-bc9bbf4aa301"),
+                         Package () {
+                             Package () { "endpoint", 0 },
+                             Package () { "clock-lanes", 0 },
+                             Package () { "data-lanes", Package () { 1, 2, 3, 4 } },
+                             Package () { "remote-endpoint",
+                                 Package() { \_SB.PCI0.CAM0, 0, 0 }
+                             },
+                        }
+                    })
+
+                    Name (EP10, Package() {
+                         ToUUID ("daffd814-6eba-4d8c-8a91-bc9bbf4aa301"),
+                         Package () {
+                             Package () { "endpoint", 0 },
+                             Package () { "clock-lanes", 0 },
+                             Package () { "data-lanes", Package () { 1, 2 } },
+                             Package () { "remote-endpoint",
+                                 Package() { \_SB.PCI0.CAM1, 0, 0 }
+                             },
+                        }
+                    })
         }
 
         Device (TERM)
@@ -16159,6 +16219,46 @@ DefinitionBlock ("", "DSDT", 2, "ALASKA", "A M I ", 0x01082018)
                 Return (0x0F)
             }
 
+            /* Port0 of CAM1 is connected to port1 of CIO2 device */
+            Name (_DSD, Package () {
+                ToUUID ("dbb8e3e6-5886-4ba6-8795-1319f52a966b"),
+                Package () {
+                    Package () { "port0", "PRT0" },
+                },
+                ToUUID ("daffd814-6eba-4d8c-8a91-bc9bbf4aa301"),
+                Package () {
+                    Package () { "clock-frequency", 19200000 },
+                }
+	    })
+
+            Name (PRT0, Package() {
+                ToUUID ("daffd814-6eba-4d8c-8a91-bc9bbf4aa301"),
+                Package () {
+                    Package () { "port", 0 },
+                },
+                ToUUID ("dbb8e3e6-5886-4ba6-8795-1319f52a966b"),
+                    Package () {
+                        Package () { "endpoint0", "EP00" },
+                    }
+	    })
+
+            Name (EP00, Package() {
+                ToUUID ("daffd814-6eba-4d8c-8a91-bc9bbf4aa301"),
+                Package () {
+                    Package () { "endpoint", 0 },
+                    Package () { "clock-lanes", 0 },
+                    Package () { "data-lanes",
+                        Package () { 1, 2 }
+                    },
+                    Package () { "link-frequencies",
+                        Package() { 540000000, 270000000 }
+                    },
+                    Package () { "remote-endpoint",
+                        Package() { \_SB.PCI0.CIO2, 1, 0 }
+                    },
+		}
+	    })
+
             Method (SSDB, 0, NotSerialized)
             {
                 Name (PAR, Buffer (0x6C)
@@ -16345,6 +16445,46 @@ DefinitionBlock ("", "DSDT", 2, "ALASKA", "A M I ", 0x01082018)
                 Return (0x0F)
             }
 
+            /* Port0 of CAM0 is connected to port0 of CIO2 device */
+            Name (_DSD, Package () {
+                ToUUID ("dbb8e3e6-5886-4ba6-8795-1319f52a966b"),
+                Package () {
+                    Package () { "port0", "PRT0" },
+                },
+                ToUUID ("daffd814-6eba-4d8c-8a91-bc9bbf4aa301"),
+                Package () {
+                    Package () { "clock-frequency", 19200000 },
+                }
+	    })
+
+            Name (PRT0, Package() {
+                ToUUID ("daffd814-6eba-4d8c-8a91-bc9bbf4aa301"),
+                Package () {
+                    Package () { "port", 0 },
+                },
+                ToUUID ("dbb8e3e6-5886-4ba6-8795-1319f52a966b"),
+                    Package () {
+                        Package () { "endpoint0", "EP00" },
+                    }
+	    })
+
+            Name (EP00, Package() {
+                ToUUID ("daffd814-6eba-4d8c-8a91-bc9bbf4aa301"),
+                Package () {
+                    Package () { "endpoint", 0 },
+                    Package () { "clock-lanes", 0 },
+                    Package () { "data-lanes",
+                        Package () { 1, 2, 3, 4 }
+                    },
+                    Package () { "link-frequencies",
+                        Package() { 540000000, 270000000 }
+                    },
+                    Package () { "remote-endpoint",
+                        Package() { \_SB.PCI0.CIO2, 0, 0 }
+                    },
+		}
+	    })
+
             Method (SSDB, 0, NotSerialized)
             {
                 Name (PAR, Buffer (0x6C)
