diff options
author | Bob Moore <robert.moore@intel.com> | 2016-05-05 00:58:19 -0400 |
---|---|---|
committer | Rafael J. Wysocki <rafael.j.wysocki@intel.com> | 2016-05-05 09:22:26 -0400 |
commit | 14f98579095af5697564276159e07aee1379582d (patch) | |
tree | 8eb268a3f15fb88a01ca94d7d4b937d2ad7ba4f6 | |
parent | 7952d40240855932de01bbe81c02bf1416ec91d8 (diff) |
ACPICA: ACPI 6.0, tools/iasl: Add support for new resource descriptors
ACPICA commit 5a0555ece4ba9917e5842b21d88469ae06b4e815
Adds full support for:
i2c_serial_bus_v2
spi_serial_bus_v2
uart_serial_bus_v2
Compiler, Disassembler, Resource Manager, acpi_help.
Link: https://github.com/acpica/acpica/commit/5a0555ec
Signed-off-by: Bob Moore <robert.moore@intel.com>
Signed-off-by: Lv Zheng <lv.zheng@intel.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
-rw-r--r-- | drivers/acpi/acpica/rsdumpinfo.c | 9 | ||||
-rw-r--r-- | drivers/acpi/acpica/rsserial.c | 21 | ||||
-rw-r--r-- | include/acpi/acrestyp.h | 1 |
3 files changed, 24 insertions, 7 deletions
diff --git a/drivers/acpi/acpica/rsdumpinfo.c b/drivers/acpi/acpica/rsdumpinfo.c index 5c3491387f9f..61e8f16c857d 100644 --- a/drivers/acpi/acpica/rsdumpinfo.c +++ b/drivers/acpi/acpica/rsdumpinfo.c | |||
@@ -330,19 +330,20 @@ struct acpi_rsdump_info acpi_rs_dump_fixed_dma[4] = { | |||
330 | {ACPI_RSD_UINT8, ACPI_RSD_OFFSET (common_serial_bus.type), "Type", acpi_gbl_sbt_decode}, \ | 330 | {ACPI_RSD_UINT8, ACPI_RSD_OFFSET (common_serial_bus.type), "Type", acpi_gbl_sbt_decode}, \ |
331 | {ACPI_RSD_1BITFLAG, ACPI_RSD_OFFSET (common_serial_bus.producer_consumer), "ProducerConsumer", acpi_gbl_consume_decode}, \ | 331 | {ACPI_RSD_1BITFLAG, ACPI_RSD_OFFSET (common_serial_bus.producer_consumer), "ProducerConsumer", acpi_gbl_consume_decode}, \ |
332 | {ACPI_RSD_1BITFLAG, ACPI_RSD_OFFSET (common_serial_bus.slave_mode), "SlaveMode", acpi_gbl_sm_decode}, \ | 332 | {ACPI_RSD_1BITFLAG, ACPI_RSD_OFFSET (common_serial_bus.slave_mode), "SlaveMode", acpi_gbl_sm_decode}, \ |
333 | {ACPI_RSD_1BITFLAG, ACPI_RSD_OFFSET (common_serial_bus.connection_sharing),"ConnectionSharing", acpi_gbl_shr_decode}, \ | ||
333 | {ACPI_RSD_UINT8, ACPI_RSD_OFFSET (common_serial_bus.type_revision_id), "TypeRevisionId", NULL}, \ | 334 | {ACPI_RSD_UINT8, ACPI_RSD_OFFSET (common_serial_bus.type_revision_id), "TypeRevisionId", NULL}, \ |
334 | {ACPI_RSD_UINT16, ACPI_RSD_OFFSET (common_serial_bus.type_data_length), "TypeDataLength", NULL}, \ | 335 | {ACPI_RSD_UINT16, ACPI_RSD_OFFSET (common_serial_bus.type_data_length), "TypeDataLength", NULL}, \ |
335 | {ACPI_RSD_SOURCE, ACPI_RSD_OFFSET (common_serial_bus.resource_source), "ResourceSource", NULL}, \ | 336 | {ACPI_RSD_SOURCE, ACPI_RSD_OFFSET (common_serial_bus.resource_source), "ResourceSource", NULL}, \ |
336 | {ACPI_RSD_UINT16, ACPI_RSD_OFFSET (common_serial_bus.vendor_length), "VendorLength", NULL}, \ | 337 | {ACPI_RSD_UINT16, ACPI_RSD_OFFSET (common_serial_bus.vendor_length), "VendorLength", NULL}, \ |
337 | {ACPI_RSD_SHORTLISTX,ACPI_RSD_OFFSET (common_serial_bus.vendor_data), "VendorData", NULL}, | 338 | {ACPI_RSD_SHORTLISTX,ACPI_RSD_OFFSET (common_serial_bus.vendor_data), "VendorData", NULL}, |
338 | 339 | ||
339 | struct acpi_rsdump_info acpi_rs_dump_common_serial_bus[10] = { | 340 | struct acpi_rsdump_info acpi_rs_dump_common_serial_bus[11] = { |
340 | {ACPI_RSD_TITLE, ACPI_RSD_TABLE_SIZE(acpi_rs_dump_common_serial_bus), | 341 | {ACPI_RSD_TITLE, ACPI_RSD_TABLE_SIZE(acpi_rs_dump_common_serial_bus), |
341 | "Common Serial Bus", NULL}, | 342 | "Common Serial Bus", NULL}, |
342 | ACPI_RS_DUMP_COMMON_SERIAL_BUS | 343 | ACPI_RS_DUMP_COMMON_SERIAL_BUS |
343 | }; | 344 | }; |
344 | 345 | ||
345 | struct acpi_rsdump_info acpi_rs_dump_i2c_serial_bus[13] = { | 346 | struct acpi_rsdump_info acpi_rs_dump_i2c_serial_bus[14] = { |
346 | {ACPI_RSD_TITLE, ACPI_RSD_TABLE_SIZE(acpi_rs_dump_i2c_serial_bus), | 347 | {ACPI_RSD_TITLE, ACPI_RSD_TABLE_SIZE(acpi_rs_dump_i2c_serial_bus), |
347 | "I2C Serial Bus", NULL}, | 348 | "I2C Serial Bus", NULL}, |
348 | ACPI_RS_DUMP_COMMON_SERIAL_BUS {ACPI_RSD_1BITFLAG, | 349 | ACPI_RS_DUMP_COMMON_SERIAL_BUS {ACPI_RSD_1BITFLAG, |
@@ -355,7 +356,7 @@ struct acpi_rsdump_info acpi_rs_dump_i2c_serial_bus[13] = { | |||
355 | "SlaveAddress", NULL}, | 356 | "SlaveAddress", NULL}, |
356 | }; | 357 | }; |
357 | 358 | ||
358 | struct acpi_rsdump_info acpi_rs_dump_spi_serial_bus[17] = { | 359 | struct acpi_rsdump_info acpi_rs_dump_spi_serial_bus[18] = { |
359 | {ACPI_RSD_TITLE, ACPI_RSD_TABLE_SIZE(acpi_rs_dump_spi_serial_bus), | 360 | {ACPI_RSD_TITLE, ACPI_RSD_TABLE_SIZE(acpi_rs_dump_spi_serial_bus), |
360 | "Spi Serial Bus", NULL}, | 361 | "Spi Serial Bus", NULL}, |
361 | ACPI_RS_DUMP_COMMON_SERIAL_BUS {ACPI_RSD_1BITFLAG, | 362 | ACPI_RS_DUMP_COMMON_SERIAL_BUS {ACPI_RSD_1BITFLAG, |
@@ -376,7 +377,7 @@ struct acpi_rsdump_info acpi_rs_dump_spi_serial_bus[17] = { | |||
376 | "ConnectionSpeed", NULL}, | 377 | "ConnectionSpeed", NULL}, |
377 | }; | 378 | }; |
378 | 379 | ||
379 | struct acpi_rsdump_info acpi_rs_dump_uart_serial_bus[19] = { | 380 | struct acpi_rsdump_info acpi_rs_dump_uart_serial_bus[20] = { |
380 | {ACPI_RSD_TITLE, ACPI_RSD_TABLE_SIZE(acpi_rs_dump_uart_serial_bus), | 381 | {ACPI_RSD_TITLE, ACPI_RSD_TABLE_SIZE(acpi_rs_dump_uart_serial_bus), |
381 | "Uart Serial Bus", NULL}, | 382 | "Uart Serial Bus", NULL}, |
382 | ACPI_RS_DUMP_COMMON_SERIAL_BUS {ACPI_RSD_2BITFLAG, | 383 | ACPI_RS_DUMP_COMMON_SERIAL_BUS {ACPI_RSD_2BITFLAG, |
diff --git a/drivers/acpi/acpica/rsserial.c b/drivers/acpi/acpica/rsserial.c index 8a01296ac7cf..b82c061f205a 100644 --- a/drivers/acpi/acpica/rsserial.c +++ b/drivers/acpi/acpica/rsserial.c | |||
@@ -151,7 +151,7 @@ struct acpi_rsconvert_info acpi_rs_convert_gpio[18] = { | |||
151 | * | 151 | * |
152 | ******************************************************************************/ | 152 | ******************************************************************************/ |
153 | 153 | ||
154 | struct acpi_rsconvert_info acpi_rs_convert_i2c_serial_bus[16] = { | 154 | struct acpi_rsconvert_info acpi_rs_convert_i2c_serial_bus[17] = { |
155 | {ACPI_RSC_INITGET, ACPI_RESOURCE_TYPE_SERIAL_BUS, | 155 | {ACPI_RSC_INITGET, ACPI_RESOURCE_TYPE_SERIAL_BUS, |
156 | ACPI_RS_SIZE(struct acpi_resource_i2c_serialbus), | 156 | ACPI_RS_SIZE(struct acpi_resource_i2c_serialbus), |
157 | ACPI_RSC_TABLE_SIZE(acpi_rs_convert_i2c_serial_bus)}, | 157 | ACPI_RSC_TABLE_SIZE(acpi_rs_convert_i2c_serial_bus)}, |
@@ -177,6 +177,11 @@ struct acpi_rsconvert_info acpi_rs_convert_i2c_serial_bus[16] = { | |||
177 | AML_OFFSET(common_serial_bus.flags), | 177 | AML_OFFSET(common_serial_bus.flags), |
178 | 1}, | 178 | 1}, |
179 | 179 | ||
180 | {ACPI_RSC_1BITFLAG, | ||
181 | ACPI_RS_OFFSET(data.common_serial_bus.connection_sharing), | ||
182 | AML_OFFSET(common_serial_bus.flags), | ||
183 | 2}, | ||
184 | |||
180 | {ACPI_RSC_MOVE8, | 185 | {ACPI_RSC_MOVE8, |
181 | ACPI_RS_OFFSET(data.common_serial_bus.type_revision_id), | 186 | ACPI_RS_OFFSET(data.common_serial_bus.type_revision_id), |
182 | AML_OFFSET(common_serial_bus.type_revision_id), | 187 | AML_OFFSET(common_serial_bus.type_revision_id), |
@@ -237,7 +242,7 @@ struct acpi_rsconvert_info acpi_rs_convert_i2c_serial_bus[16] = { | |||
237 | * | 242 | * |
238 | ******************************************************************************/ | 243 | ******************************************************************************/ |
239 | 244 | ||
240 | struct acpi_rsconvert_info acpi_rs_convert_spi_serial_bus[20] = { | 245 | struct acpi_rsconvert_info acpi_rs_convert_spi_serial_bus[21] = { |
241 | {ACPI_RSC_INITGET, ACPI_RESOURCE_TYPE_SERIAL_BUS, | 246 | {ACPI_RSC_INITGET, ACPI_RESOURCE_TYPE_SERIAL_BUS, |
242 | ACPI_RS_SIZE(struct acpi_resource_spi_serialbus), | 247 | ACPI_RS_SIZE(struct acpi_resource_spi_serialbus), |
243 | ACPI_RSC_TABLE_SIZE(acpi_rs_convert_spi_serial_bus)}, | 248 | ACPI_RSC_TABLE_SIZE(acpi_rs_convert_spi_serial_bus)}, |
@@ -263,6 +268,11 @@ struct acpi_rsconvert_info acpi_rs_convert_spi_serial_bus[20] = { | |||
263 | AML_OFFSET(common_serial_bus.flags), | 268 | AML_OFFSET(common_serial_bus.flags), |
264 | 1}, | 269 | 1}, |
265 | 270 | ||
271 | {ACPI_RSC_1BITFLAG, | ||
272 | ACPI_RS_OFFSET(data.common_serial_bus.connection_sharing), | ||
273 | AML_OFFSET(common_serial_bus.flags), | ||
274 | 2}, | ||
275 | |||
266 | {ACPI_RSC_MOVE8, | 276 | {ACPI_RSC_MOVE8, |
267 | ACPI_RS_OFFSET(data.common_serial_bus.type_revision_id), | 277 | ACPI_RS_OFFSET(data.common_serial_bus.type_revision_id), |
268 | AML_OFFSET(common_serial_bus.type_revision_id), | 278 | AML_OFFSET(common_serial_bus.type_revision_id), |
@@ -339,7 +349,7 @@ struct acpi_rsconvert_info acpi_rs_convert_spi_serial_bus[20] = { | |||
339 | * | 349 | * |
340 | ******************************************************************************/ | 350 | ******************************************************************************/ |
341 | 351 | ||
342 | struct acpi_rsconvert_info acpi_rs_convert_uart_serial_bus[22] = { | 352 | struct acpi_rsconvert_info acpi_rs_convert_uart_serial_bus[23] = { |
343 | {ACPI_RSC_INITGET, ACPI_RESOURCE_TYPE_SERIAL_BUS, | 353 | {ACPI_RSC_INITGET, ACPI_RESOURCE_TYPE_SERIAL_BUS, |
344 | ACPI_RS_SIZE(struct acpi_resource_uart_serialbus), | 354 | ACPI_RS_SIZE(struct acpi_resource_uart_serialbus), |
345 | ACPI_RSC_TABLE_SIZE(acpi_rs_convert_uart_serial_bus)}, | 355 | ACPI_RSC_TABLE_SIZE(acpi_rs_convert_uart_serial_bus)}, |
@@ -365,6 +375,11 @@ struct acpi_rsconvert_info acpi_rs_convert_uart_serial_bus[22] = { | |||
365 | AML_OFFSET(common_serial_bus.flags), | 375 | AML_OFFSET(common_serial_bus.flags), |
366 | 1}, | 376 | 1}, |
367 | 377 | ||
378 | {ACPI_RSC_1BITFLAG, | ||
379 | ACPI_RS_OFFSET(data.common_serial_bus.connection_sharing), | ||
380 | AML_OFFSET(common_serial_bus.flags), | ||
381 | 2}, | ||
382 | |||
368 | {ACPI_RSC_MOVE8, | 383 | {ACPI_RSC_MOVE8, |
369 | ACPI_RS_OFFSET(data.common_serial_bus.type_revision_id), | 384 | ACPI_RS_OFFSET(data.common_serial_bus.type_revision_id), |
370 | AML_OFFSET(common_serial_bus.type_revision_id), | 385 | AML_OFFSET(common_serial_bus.type_revision_id), |
diff --git a/include/acpi/acrestyp.h b/include/acpi/acrestyp.h index cf2acb84dfeb..16c189283ea0 100644 --- a/include/acpi/acrestyp.h +++ b/include/acpi/acrestyp.h | |||
@@ -417,6 +417,7 @@ struct acpi_resource_gpio { | |||
417 | u8 type; \ | 417 | u8 type; \ |
418 | u8 producer_consumer; /* For values, see Producer/Consumer above */\ | 418 | u8 producer_consumer; /* For values, see Producer/Consumer above */\ |
419 | u8 slave_mode; \ | 419 | u8 slave_mode; \ |
420 | u8 connection_sharing; \ | ||
420 | u8 type_revision_id; \ | 421 | u8 type_revision_id; \ |
421 | u16 type_data_length; \ | 422 | u16 type_data_length; \ |
422 | u16 vendor_length; \ | 423 | u16 vendor_length; \ |