soc/amd/picasso/acpi/sb_fch: use local variable in _CRS methods
Use a local variable for the ResourceTemplate in the _CRS methods instead of the RBUF object. When using RBUF, iasl complained that the _CRS methods need to be serialized, since objects were created in there. Since those are only used as local variables, just use local variables for this. TEST=iasl stops complaining about those methods not being serialized and Linux still boots and there aren't any related ACPI errors or warnings. Change-Id: Ic43fcaed5a8b19dbd5634c17f34a159803ba8577 Signed-off-by: Felix Held <felix-coreboot@felixheld.de> Reviewed-on: https://review.coreboot.org/c/coreboot/+/42207 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Raul Rangel <rrangel@chromium.org>
This commit is contained in:
		@@ -27,7 +27,7 @@ Device (GPIO)
 | 
				
			|||||||
	Name (_DDN, GPIO_DEVICE_DESC)
 | 
						Name (_DDN, GPIO_DEVICE_DESC)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	Method (_CRS, 0) {
 | 
						Method (_CRS, 0) {
 | 
				
			||||||
		Name (RBUF, ResourceTemplate() {
 | 
							Local0 = ResourceTemplate() {
 | 
				
			||||||
			Interrupt (
 | 
								Interrupt (
 | 
				
			||||||
				ResourceConsumer,
 | 
									ResourceConsumer,
 | 
				
			||||||
				Level,
 | 
									Level,
 | 
				
			||||||
@@ -35,8 +35,8 @@ Device (GPIO)
 | 
				
			|||||||
				Exclusive, , , IRQR)
 | 
									Exclusive, , , IRQR)
 | 
				
			||||||
			{ 0 }
 | 
								{ 0 }
 | 
				
			||||||
			Memory32Fixed (ReadWrite, 0xFED81500, 0x300)
 | 
								Memory32Fixed (ReadWrite, 0xFED81500, 0x300)
 | 
				
			||||||
		})
 | 
							}
 | 
				
			||||||
		CreateDWordField (RBUF, IRQR._INT, IRQN)
 | 
							CreateDWordField (Local0, IRQR._INT, IRQN)
 | 
				
			||||||
		If (PMOD) {
 | 
							If (PMOD) {
 | 
				
			||||||
			IRQN = IGPI
 | 
								IRQN = IGPI
 | 
				
			||||||
		} Else {
 | 
							} Else {
 | 
				
			||||||
@@ -47,7 +47,7 @@ Device (GPIO)
 | 
				
			|||||||
				Memory32Fixed (ReadWrite, 0xFED81500, 0x300)
 | 
									Memory32Fixed (ReadWrite, 0xFED81500, 0x300)
 | 
				
			||||||
			})
 | 
								})
 | 
				
			||||||
		} Else {
 | 
							} Else {
 | 
				
			||||||
			Return (RBUF)
 | 
								Return (Local0)
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -62,7 +62,7 @@ Device (MMC0)
 | 
				
			|||||||
	Name (_HID, "AMDI0040")
 | 
						Name (_HID, "AMDI0040")
 | 
				
			||||||
	Name (_UID, 0x0)
 | 
						Name (_UID, 0x0)
 | 
				
			||||||
	Method (_CRS, 0) {
 | 
						Method (_CRS, 0) {
 | 
				
			||||||
		Name (RBUF, ResourceTemplate() {
 | 
							Local0 = ResourceTemplate() {
 | 
				
			||||||
			Interrupt (
 | 
								Interrupt (
 | 
				
			||||||
				ResourceConsumer,
 | 
									ResourceConsumer,
 | 
				
			||||||
				Level,
 | 
									Level,
 | 
				
			||||||
@@ -70,8 +70,8 @@ Device (MMC0)
 | 
				
			|||||||
				Exclusive, , , IRQR)
 | 
									Exclusive, , , IRQR)
 | 
				
			||||||
			{ 0 }
 | 
								{ 0 }
 | 
				
			||||||
			Memory32Fixed (ReadWrite, APU_EMMC_BASE, 0x1000)
 | 
								Memory32Fixed (ReadWrite, APU_EMMC_BASE, 0x1000)
 | 
				
			||||||
		})
 | 
							}
 | 
				
			||||||
		CreateDWordField (RBUF, IRQR._INT, IRQN)
 | 
							CreateDWordField (Local0, IRQR._INT, IRQN)
 | 
				
			||||||
		If (PMOD) {
 | 
							If (PMOD) {
 | 
				
			||||||
			IRQN = IMMC
 | 
								IRQN = IMMC
 | 
				
			||||||
		} Else {
 | 
							} Else {
 | 
				
			||||||
@@ -82,7 +82,7 @@ Device (MMC0)
 | 
				
			|||||||
				Memory32Fixed (ReadWrite, APU_EMMC_BASE, 0x1000)
 | 
									Memory32Fixed (ReadWrite, APU_EMMC_BASE, 0x1000)
 | 
				
			||||||
			})
 | 
								})
 | 
				
			||||||
		} Else {
 | 
							} Else {
 | 
				
			||||||
			Return (RBUF)
 | 
								Return (Local0)
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -97,7 +97,7 @@ Device (FUR0)
 | 
				
			|||||||
	Name (_HID, "AMD0020")
 | 
						Name (_HID, "AMD0020")
 | 
				
			||||||
	Name (_UID, 0x0)
 | 
						Name (_UID, 0x0)
 | 
				
			||||||
	Method (_CRS, 0) {
 | 
						Method (_CRS, 0) {
 | 
				
			||||||
		Name (RBUF, ResourceTemplate() {
 | 
							Local0 = ResourceTemplate() {
 | 
				
			||||||
			Interrupt (
 | 
								Interrupt (
 | 
				
			||||||
				ResourceConsumer,
 | 
									ResourceConsumer,
 | 
				
			||||||
				Edge,
 | 
									Edge,
 | 
				
			||||||
@@ -106,8 +106,8 @@ Device (FUR0)
 | 
				
			|||||||
			{ 0 }
 | 
								{ 0 }
 | 
				
			||||||
			Memory32Fixed (ReadWrite, APU_UART0_BASE, 0x1000)
 | 
								Memory32Fixed (ReadWrite, APU_UART0_BASE, 0x1000)
 | 
				
			||||||
			Memory32Fixed (ReadWrite, APU_DMAC0_BASE, 0x1000)
 | 
								Memory32Fixed (ReadWrite, APU_DMAC0_BASE, 0x1000)
 | 
				
			||||||
		})
 | 
							}
 | 
				
			||||||
		CreateDWordField (RBUF, IRQR._INT, IRQN)
 | 
							CreateDWordField (Local0, IRQR._INT, IRQN)
 | 
				
			||||||
		If (PMOD) {
 | 
							If (PMOD) {
 | 
				
			||||||
			IRQN = IUA0
 | 
								IRQN = IUA0
 | 
				
			||||||
		} Else {
 | 
							} Else {
 | 
				
			||||||
@@ -119,7 +119,7 @@ Device (FUR0)
 | 
				
			|||||||
				Memory32Fixed (ReadWrite, APU_DMAC0_BASE, 0x1000)
 | 
									Memory32Fixed (ReadWrite, APU_DMAC0_BASE, 0x1000)
 | 
				
			||||||
			})
 | 
								})
 | 
				
			||||||
		} Else {
 | 
							} Else {
 | 
				
			||||||
			Return (RBUF)
 | 
								Return (Local0)
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -133,7 +133,7 @@ Device (FUR1) {
 | 
				
			|||||||
	Name (_HID, "AMD0020")
 | 
						Name (_HID, "AMD0020")
 | 
				
			||||||
	Name (_UID, 0x1)
 | 
						Name (_UID, 0x1)
 | 
				
			||||||
	Method (_CRS, 0) {
 | 
						Method (_CRS, 0) {
 | 
				
			||||||
		Name (RBUF, ResourceTemplate() {
 | 
							Local0 = ResourceTemplate() {
 | 
				
			||||||
			Interrupt (
 | 
								Interrupt (
 | 
				
			||||||
				ResourceConsumer,
 | 
									ResourceConsumer,
 | 
				
			||||||
				Edge,
 | 
									Edge,
 | 
				
			||||||
@@ -142,8 +142,8 @@ Device (FUR1) {
 | 
				
			|||||||
			{ 0 }
 | 
								{ 0 }
 | 
				
			||||||
			Memory32Fixed (ReadWrite, APU_UART1_BASE, 0x1000)
 | 
								Memory32Fixed (ReadWrite, APU_UART1_BASE, 0x1000)
 | 
				
			||||||
			Memory32Fixed (ReadWrite, APU_DMAC1_BASE, 0x1000)
 | 
								Memory32Fixed (ReadWrite, APU_DMAC1_BASE, 0x1000)
 | 
				
			||||||
		})
 | 
							}
 | 
				
			||||||
		CreateDWordField (RBUF, IRQR._INT, IRQN)
 | 
							CreateDWordField (Local0, IRQR._INT, IRQN)
 | 
				
			||||||
		If (PMOD) {
 | 
							If (PMOD) {
 | 
				
			||||||
			IRQN = IUA1
 | 
								IRQN = IUA1
 | 
				
			||||||
		} Else {
 | 
							} Else {
 | 
				
			||||||
@@ -155,7 +155,7 @@ Device (FUR1) {
 | 
				
			|||||||
				Memory32Fixed (ReadWrite, APU_DMAC1_BASE, 0x1000)
 | 
									Memory32Fixed (ReadWrite, APU_DMAC1_BASE, 0x1000)
 | 
				
			||||||
			})
 | 
								})
 | 
				
			||||||
		} Else {
 | 
							} Else {
 | 
				
			||||||
			Return (RBUF)
 | 
								Return (Local0)
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -169,7 +169,7 @@ Device (FUR2) {
 | 
				
			|||||||
	Name (_HID, "AMD0020")
 | 
						Name (_HID, "AMD0020")
 | 
				
			||||||
	Name (_UID, 0x2)
 | 
						Name (_UID, 0x2)
 | 
				
			||||||
	Method (_CRS, 0) {
 | 
						Method (_CRS, 0) {
 | 
				
			||||||
		Name (RBUF, ResourceTemplate() {
 | 
							Local0 = ResourceTemplate() {
 | 
				
			||||||
			Interrupt (
 | 
								Interrupt (
 | 
				
			||||||
				ResourceConsumer,
 | 
									ResourceConsumer,
 | 
				
			||||||
				Edge,
 | 
									Edge,
 | 
				
			||||||
@@ -178,8 +178,8 @@ Device (FUR2) {
 | 
				
			|||||||
			{ 0 }
 | 
								{ 0 }
 | 
				
			||||||
			Memory32Fixed (ReadWrite, APU_UART2_BASE, 0x1000)
 | 
								Memory32Fixed (ReadWrite, APU_UART2_BASE, 0x1000)
 | 
				
			||||||
			Memory32Fixed (ReadWrite, APU_DMAC2_BASE, 0x1000)
 | 
								Memory32Fixed (ReadWrite, APU_DMAC2_BASE, 0x1000)
 | 
				
			||||||
		})
 | 
							}
 | 
				
			||||||
		CreateDWordField (RBUF, IRQR._INT, IRQN)
 | 
							CreateDWordField (Local0, IRQR._INT, IRQN)
 | 
				
			||||||
		If (PMOD) {
 | 
							If (PMOD) {
 | 
				
			||||||
			IRQN = IUA2
 | 
								IRQN = IUA2
 | 
				
			||||||
		} Else {
 | 
							} Else {
 | 
				
			||||||
@@ -191,7 +191,7 @@ Device (FUR2) {
 | 
				
			|||||||
				Memory32Fixed (ReadWrite, APU_DMAC2_BASE, 0x1000)
 | 
									Memory32Fixed (ReadWrite, APU_DMAC2_BASE, 0x1000)
 | 
				
			||||||
			})
 | 
								})
 | 
				
			||||||
		} Else {
 | 
							} Else {
 | 
				
			||||||
			Return (RBUF)
 | 
								Return (Local0)
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -205,7 +205,7 @@ Device (FUR3) {
 | 
				
			|||||||
	Name (_HID, "AMD0020")
 | 
						Name (_HID, "AMD0020")
 | 
				
			||||||
	Name (_UID, 0x3)
 | 
						Name (_UID, 0x3)
 | 
				
			||||||
	Method (_CRS, 0) {
 | 
						Method (_CRS, 0) {
 | 
				
			||||||
		Name (RBUF, ResourceTemplate() {
 | 
							Local0 = ResourceTemplate() {
 | 
				
			||||||
			Interrupt (
 | 
								Interrupt (
 | 
				
			||||||
				ResourceConsumer,
 | 
									ResourceConsumer,
 | 
				
			||||||
				Edge,
 | 
									Edge,
 | 
				
			||||||
@@ -214,8 +214,8 @@ Device (FUR3) {
 | 
				
			|||||||
			{ 0 }
 | 
								{ 0 }
 | 
				
			||||||
			Memory32Fixed (ReadWrite, APU_UART3_BASE, 0x1000)
 | 
								Memory32Fixed (ReadWrite, APU_UART3_BASE, 0x1000)
 | 
				
			||||||
			Memory32Fixed (ReadWrite, APU_DMAC3_BASE, 0x1000)
 | 
								Memory32Fixed (ReadWrite, APU_DMAC3_BASE, 0x1000)
 | 
				
			||||||
		})
 | 
							}
 | 
				
			||||||
		CreateDWordField (RBUF, IRQR._INT, IRQN)
 | 
							CreateDWordField (Local0, IRQR._INT, IRQN)
 | 
				
			||||||
		If (PMOD) {
 | 
							If (PMOD) {
 | 
				
			||||||
			IRQN = IUA3
 | 
								IRQN = IUA3
 | 
				
			||||||
		} Else {
 | 
							} Else {
 | 
				
			||||||
@@ -227,7 +227,7 @@ Device (FUR3) {
 | 
				
			|||||||
				Memory32Fixed (ReadWrite, APU_DMAC3_BASE, 0x1000)
 | 
									Memory32Fixed (ReadWrite, APU_DMAC3_BASE, 0x1000)
 | 
				
			||||||
			})
 | 
								})
 | 
				
			||||||
		} Else {
 | 
							} Else {
 | 
				
			||||||
			Return (RBUF)
 | 
								Return (Local0)
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -241,7 +241,7 @@ Device (I2C2) {
 | 
				
			|||||||
	Name (_HID, "AMD0010")
 | 
						Name (_HID, "AMD0010")
 | 
				
			||||||
	Name (_UID, 0x2)
 | 
						Name (_UID, 0x2)
 | 
				
			||||||
	Method (_CRS, 0) {
 | 
						Method (_CRS, 0) {
 | 
				
			||||||
		Name (RBUF, ResourceTemplate() {
 | 
							Local0 = ResourceTemplate() {
 | 
				
			||||||
			Interrupt (
 | 
								Interrupt (
 | 
				
			||||||
				ResourceConsumer,
 | 
									ResourceConsumer,
 | 
				
			||||||
				Edge,
 | 
									Edge,
 | 
				
			||||||
@@ -249,8 +249,8 @@ Device (I2C2) {
 | 
				
			|||||||
				Exclusive, , , IRQR)
 | 
									Exclusive, , , IRQR)
 | 
				
			||||||
			{ 0 }
 | 
								{ 0 }
 | 
				
			||||||
			Memory32Fixed (ReadWrite, APU_I2C2_BASE, 0x1000)
 | 
								Memory32Fixed (ReadWrite, APU_I2C2_BASE, 0x1000)
 | 
				
			||||||
		})
 | 
							}
 | 
				
			||||||
		CreateDWordField (RBUF, IRQR._INT, IRQN)
 | 
							CreateDWordField (Local0, IRQR._INT, IRQN)
 | 
				
			||||||
		If (PMOD) {
 | 
							If (PMOD) {
 | 
				
			||||||
			IRQN = II22
 | 
								IRQN = II22
 | 
				
			||||||
		} Else {
 | 
							} Else {
 | 
				
			||||||
@@ -261,7 +261,7 @@ Device (I2C2) {
 | 
				
			|||||||
				Memory32Fixed (ReadWrite, APU_I2C2_BASE, 0x1000)
 | 
									Memory32Fixed (ReadWrite, APU_I2C2_BASE, 0x1000)
 | 
				
			||||||
			})
 | 
								})
 | 
				
			||||||
		} Else {
 | 
							} Else {
 | 
				
			||||||
			Return (RBUF)
 | 
								Return (Local0)
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -276,7 +276,7 @@ Device (I2C3)
 | 
				
			|||||||
	Name (_HID, "AMD0010")
 | 
						Name (_HID, "AMD0010")
 | 
				
			||||||
	Name (_UID, 0x3)
 | 
						Name (_UID, 0x3)
 | 
				
			||||||
	Method (_CRS, 0) {
 | 
						Method (_CRS, 0) {
 | 
				
			||||||
		Name (RBUF, ResourceTemplate() {
 | 
							Local0 = ResourceTemplate() {
 | 
				
			||||||
			Interrupt (
 | 
								Interrupt (
 | 
				
			||||||
				ResourceConsumer,
 | 
									ResourceConsumer,
 | 
				
			||||||
				Edge,
 | 
									Edge,
 | 
				
			||||||
@@ -284,8 +284,8 @@ Device (I2C3)
 | 
				
			|||||||
				Exclusive, , , IRQR)
 | 
									Exclusive, , , IRQR)
 | 
				
			||||||
			{ 0 }
 | 
								{ 0 }
 | 
				
			||||||
			Memory32Fixed (ReadWrite, APU_I2C3_BASE, 0x1000)
 | 
								Memory32Fixed (ReadWrite, APU_I2C3_BASE, 0x1000)
 | 
				
			||||||
		})
 | 
							}
 | 
				
			||||||
		CreateDWordField (RBUF, IRQR._INT, IRQN)
 | 
							CreateDWordField (Local0, IRQR._INT, IRQN)
 | 
				
			||||||
		If (PMOD) {
 | 
							If (PMOD) {
 | 
				
			||||||
			IRQN = II23
 | 
								IRQN = II23
 | 
				
			||||||
		} Else {
 | 
							} Else {
 | 
				
			||||||
@@ -296,7 +296,7 @@ Device (I2C3)
 | 
				
			|||||||
				Memory32Fixed (ReadWrite, APU_I2C3_BASE, 0x1000)
 | 
									Memory32Fixed (ReadWrite, APU_I2C3_BASE, 0x1000)
 | 
				
			||||||
			})
 | 
								})
 | 
				
			||||||
		} Else {
 | 
							} Else {
 | 
				
			||||||
			Return (RBUF)
 | 
								Return (Local0)
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
	Method (_STA, 0x0, NotSerialized)
 | 
						Method (_STA, 0x0, NotSerialized)
 | 
				
			||||||
@@ -309,7 +309,7 @@ Device (I2C4) {
 | 
				
			|||||||
	Name (_HID, "AMD0010")
 | 
						Name (_HID, "AMD0010")
 | 
				
			||||||
	Name (_UID, 0x4)
 | 
						Name (_UID, 0x4)
 | 
				
			||||||
	Method (_CRS, 0) {
 | 
						Method (_CRS, 0) {
 | 
				
			||||||
		Name (RBUF, ResourceTemplate() {
 | 
							Local0 = ResourceTemplate() {
 | 
				
			||||||
			Interrupt (
 | 
								Interrupt (
 | 
				
			||||||
				ResourceConsumer,
 | 
									ResourceConsumer,
 | 
				
			||||||
				Edge,
 | 
									Edge,
 | 
				
			||||||
@@ -317,8 +317,8 @@ Device (I2C4) {
 | 
				
			|||||||
				Exclusive, , , IRQR)
 | 
									Exclusive, , , IRQR)
 | 
				
			||||||
			{ 0 }
 | 
								{ 0 }
 | 
				
			||||||
			Memory32Fixed (ReadWrite, APU_I2C4_BASE, 0x1000)
 | 
								Memory32Fixed (ReadWrite, APU_I2C4_BASE, 0x1000)
 | 
				
			||||||
		})
 | 
							}
 | 
				
			||||||
		CreateDWordField (RBUF, IRQR._INT, IRQN)
 | 
							CreateDWordField (Local0, IRQR._INT, IRQN)
 | 
				
			||||||
		If (PMOD) {
 | 
							If (PMOD) {
 | 
				
			||||||
			IRQN = II24
 | 
								IRQN = II24
 | 
				
			||||||
		} Else {
 | 
							} Else {
 | 
				
			||||||
@@ -329,7 +329,7 @@ Device (I2C4) {
 | 
				
			|||||||
				Memory32Fixed (ReadWrite, APU_I2C4_BASE, 0x1000)
 | 
									Memory32Fixed (ReadWrite, APU_I2C4_BASE, 0x1000)
 | 
				
			||||||
			})
 | 
								})
 | 
				
			||||||
		} Else {
 | 
							} Else {
 | 
				
			||||||
			Return (RBUF)
 | 
								Return (Local0)
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user