]> err.no Git - linux-2.6/blobdiff - drivers/acpi/resources/rslist.c
Merge master.kernel.org:/home/rmk/linux-2.6-mmc
[linux-2.6] / drivers / acpi / resources / rslist.c
index db7bcb4e60e32f7e09a1c7625b25b5a387b80e6f..103eb31c284e5070d63fcc99bd111bf1e6c9b606 100644 (file)
  * POSSIBILITY OF SUCH DAMAGES.
  */
 
-
 #include <acpi/acpi.h>
 #include <acpi/acresrc.h>
 
 #define _COMPONENT          ACPI_RESOURCES
-        ACPI_MODULE_NAME    ("rslist")
-
+ACPI_MODULE_NAME("rslist")
 
 /*******************************************************************************
  *
  *              a resource descriptor.
  *
  ******************************************************************************/
-
-u8
-acpi_rs_get_resource_type (
-       u8                              resource_start_byte)
+u8 acpi_rs_get_resource_type(u8 resource_start_byte)
 {
 
-       ACPI_FUNCTION_ENTRY ();
-
+       ACPI_FUNCTION_ENTRY();
 
        /* Determine if this is a small or large resource */
 
@@ -79,14 +73,12 @@ acpi_rs_get_resource_type (
 
                return ((u8) (resource_start_byte & ACPI_RDESC_SMALL_MASK));
 
-
        case ACPI_RDESC_TYPE_LARGE:
 
                /* Large Resource Type -- All bits are valid */
 
                return (resource_start_byte);
 
-
        default:
                /* Invalid type */
                break;
@@ -95,7 +87,6 @@ acpi_rs_get_resource_type (
        return (0xFF);
 }
 
-
 /*******************************************************************************
  *
  * FUNCTION:    acpi_rs_byte_stream_to_list
@@ -113,176 +104,189 @@ acpi_rs_get_resource_type (
  ******************************************************************************/
 
 acpi_status
-acpi_rs_byte_stream_to_list (
-       u8                              *byte_stream_buffer,
-       u32                             byte_stream_buffer_length,
-       u8                              *output_buffer)
+acpi_rs_byte_stream_to_list(u8 * byte_stream_buffer,
+                           u32 byte_stream_buffer_length, u8 * output_buffer)
 {
-       acpi_status                     status;
-       acpi_size                       bytes_parsed = 0;
-       u8                              resource_type = 0;
-       acpi_size                       bytes_consumed = 0;
-       u8                              *buffer = output_buffer;
-       acpi_size                       structure_size = 0;
-       u8                              end_tag_processed = FALSE;
-       struct acpi_resource            *resource;
-
-       ACPI_FUNCTION_TRACE ("rs_byte_stream_to_list");
-
-
-       while (bytes_parsed < byte_stream_buffer_length &&
-                       !end_tag_processed) {
+       acpi_status status;
+       acpi_size bytes_parsed = 0;
+       u8 resource_type = 0;
+       acpi_size bytes_consumed = 0;
+       u8 *buffer = output_buffer;
+       acpi_size structure_size = 0;
+       u8 end_tag_processed = FALSE;
+       struct acpi_resource *resource;
+
+       ACPI_FUNCTION_TRACE("rs_byte_stream_to_list");
+
+       while (bytes_parsed < byte_stream_buffer_length && !end_tag_processed) {
                /* The next byte in the stream is the resource type */
 
-               resource_type = acpi_rs_get_resource_type (*byte_stream_buffer);
+               resource_type = acpi_rs_get_resource_type(*byte_stream_buffer);
 
                switch (resource_type) {
                case ACPI_RDESC_TYPE_MEMORY_24:
                        /*
                         * 24-Bit Memory Resource
                         */
-                       status = acpi_rs_memory24_resource (byte_stream_buffer,
-                                        &bytes_consumed, &buffer, &structure_size);
+                       status = acpi_rs_memory24_resource(byte_stream_buffer,
+                                                          &bytes_consumed,
+                                                          &buffer,
+                                                          &structure_size);
                        break;
 
-
                case ACPI_RDESC_TYPE_LARGE_VENDOR:
                        /*
                         * Vendor Defined Resource
                         */
-                       status = acpi_rs_vendor_resource (byte_stream_buffer,
-                                        &bytes_consumed, &buffer, &structure_size);
+                       status = acpi_rs_vendor_resource(byte_stream_buffer,
+                                                        &bytes_consumed,
+                                                        &buffer,
+                                                        &structure_size);
                        break;
 
-
                case ACPI_RDESC_TYPE_MEMORY_32:
                        /*
                         * 32-Bit Memory Range Resource
                         */
-                       status = acpi_rs_memory32_range_resource (byte_stream_buffer,
-                                        &bytes_consumed, &buffer, &structure_size);
+                       status =
+                           acpi_rs_memory32_range_resource(byte_stream_buffer,
+                                                           &bytes_consumed,
+                                                           &buffer,
+                                                           &structure_size);
                        break;
 
-
                case ACPI_RDESC_TYPE_FIXED_MEMORY_32:
                        /*
                         * 32-Bit Fixed Memory Resource
                         */
-                       status = acpi_rs_fixed_memory32_resource (byte_stream_buffer,
-                                        &bytes_consumed, &buffer, &structure_size);
+                       status =
+                           acpi_rs_fixed_memory32_resource(byte_stream_buffer,
+                                                           &bytes_consumed,
+                                                           &buffer,
+                                                           &structure_size);
                        break;
 
-
                case ACPI_RDESC_TYPE_QWORD_ADDRESS_SPACE:
                case ACPI_RDESC_TYPE_EXTENDED_ADDRESS_SPACE:
                        /*
                         * 64-Bit Address Resource
                         */
-                       status = acpi_rs_address64_resource (byte_stream_buffer,
-                                        &bytes_consumed, &buffer, &structure_size);
+                       status = acpi_rs_address64_resource(byte_stream_buffer,
+                                                           &bytes_consumed,
+                                                           &buffer,
+                                                           &structure_size);
                        break;
 
-
                case ACPI_RDESC_TYPE_DWORD_ADDRESS_SPACE:
                        /*
                         * 32-Bit Address Resource
                         */
-                       status = acpi_rs_address32_resource (byte_stream_buffer,
-                                        &bytes_consumed, &buffer, &structure_size);
+                       status = acpi_rs_address32_resource(byte_stream_buffer,
+                                                           &bytes_consumed,
+                                                           &buffer,
+                                                           &structure_size);
                        break;
 
-
                case ACPI_RDESC_TYPE_WORD_ADDRESS_SPACE:
                        /*
                         * 16-Bit Address Resource
                         */
-                       status = acpi_rs_address16_resource (byte_stream_buffer,
-                                        &bytes_consumed, &buffer, &structure_size);
+                       status = acpi_rs_address16_resource(byte_stream_buffer,
+                                                           &bytes_consumed,
+                                                           &buffer,
+                                                           &structure_size);
                        break;
 
-
                case ACPI_RDESC_TYPE_EXTENDED_XRUPT:
                        /*
                         * Extended IRQ
                         */
-                       status = acpi_rs_extended_irq_resource (byte_stream_buffer,
-                                        &bytes_consumed, &buffer, &structure_size);
+                       status =
+                           acpi_rs_extended_irq_resource(byte_stream_buffer,
+                                                         &bytes_consumed,
+                                                         &buffer,
+                                                         &structure_size);
                        break;
 
-
                case ACPI_RDESC_TYPE_IRQ_FORMAT:
                        /*
                         * IRQ Resource
                         */
-                       status = acpi_rs_irq_resource (byte_stream_buffer,
-                                        &bytes_consumed, &buffer, &structure_size);
+                       status = acpi_rs_irq_resource(byte_stream_buffer,
+                                                     &bytes_consumed, &buffer,
+                                                     &structure_size);
                        break;
 
-
                case ACPI_RDESC_TYPE_DMA_FORMAT:
                        /*
                         * DMA Resource
                         */
-                       status = acpi_rs_dma_resource (byte_stream_buffer,
-                                        &bytes_consumed, &buffer, &structure_size);
+                       status = acpi_rs_dma_resource(byte_stream_buffer,
+                                                     &bytes_consumed, &buffer,
+                                                     &structure_size);
                        break;
 
-
                case ACPI_RDESC_TYPE_START_DEPENDENT:
                        /*
                         * Start Dependent Functions Resource
                         */
-                       status = acpi_rs_start_depend_fns_resource (byte_stream_buffer,
-                                        &bytes_consumed, &buffer, &structure_size);
+                       status =
+                           acpi_rs_start_depend_fns_resource
+                           (byte_stream_buffer, &bytes_consumed, &buffer,
+                            &structure_size);
                        break;
 
-
                case ACPI_RDESC_TYPE_END_DEPENDENT:
                        /*
                         * End Dependent Functions Resource
                         */
-                       status = acpi_rs_end_depend_fns_resource (byte_stream_buffer,
-                                        &bytes_consumed, &buffer, &structure_size);
+                       status =
+                           acpi_rs_end_depend_fns_resource(byte_stream_buffer,
+                                                           &bytes_consumed,
+                                                           &buffer,
+                                                           &structure_size);
                        break;
 
-
                case ACPI_RDESC_TYPE_IO_PORT:
                        /*
                         * IO Port Resource
                         */
-                       status = acpi_rs_io_resource (byte_stream_buffer,
-                                        &bytes_consumed, &buffer, &structure_size);
+                       status = acpi_rs_io_resource(byte_stream_buffer,
+                                                    &bytes_consumed, &buffer,
+                                                    &structure_size);
                        break;
 
-
                case ACPI_RDESC_TYPE_FIXED_IO_PORT:
                        /*
                         * Fixed IO Port Resource
                         */
-                       status = acpi_rs_fixed_io_resource (byte_stream_buffer,
-                                        &bytes_consumed, &buffer, &structure_size);
+                       status = acpi_rs_fixed_io_resource(byte_stream_buffer,
+                                                          &bytes_consumed,
+                                                          &buffer,
+                                                          &structure_size);
                        break;
 
-
                case ACPI_RDESC_TYPE_SMALL_VENDOR:
                        /*
                         * Vendor Specific Resource
                         */
-                       status = acpi_rs_vendor_resource (byte_stream_buffer,
-                                        &bytes_consumed, &buffer, &structure_size);
+                       status = acpi_rs_vendor_resource(byte_stream_buffer,
+                                                        &bytes_consumed,
+                                                        &buffer,
+                                                        &structure_size);
                        break;
 
-
                case ACPI_RDESC_TYPE_END_TAG:
                        /*
                         * End Tag
                         */
                        end_tag_processed = TRUE;
-                       status = acpi_rs_end_tag_resource (byte_stream_buffer,
-                                        &bytes_consumed, &buffer, &structure_size);
+                       status = acpi_rs_end_tag_resource(byte_stream_buffer,
+                                                         &bytes_consumed,
+                                                         &buffer,
+                                                         &structure_size);
                        break;
 
-
                default:
                        /*
                         * Invalid/Unknown resource type
@@ -291,8 +295,8 @@ acpi_rs_byte_stream_to_list (
                        break;
                }
 
-               if (ACPI_FAILURE (status)) {
-                       return_ACPI_STATUS (status);
+               if (ACPI_FAILURE(status)) {
+                       return_ACPI_STATUS(status);
                }
 
                /* Update the return value and counter */
@@ -305,21 +309,21 @@ acpi_rs_byte_stream_to_list (
 
                /* Set the Buffer to the next structure */
 
-               resource = ACPI_CAST_PTR (struct acpi_resource, buffer);
-               resource->length = (u32) ACPI_ALIGN_RESOURCE_SIZE (resource->length);
-               buffer += ACPI_ALIGN_RESOURCE_SIZE (structure_size);
+               resource = ACPI_CAST_PTR(struct acpi_resource, buffer);
+               resource->length =
+                   (u32) ACPI_ALIGN_RESOURCE_SIZE(resource->length);
+               buffer += ACPI_ALIGN_RESOURCE_SIZE(structure_size);
        }
 
        /* Check the reason for exiting the while loop */
 
        if (!end_tag_processed) {
-               return_ACPI_STATUS (AE_AML_NO_RESOURCE_END_TAG);
+               return_ACPI_STATUS(AE_AML_NO_RESOURCE_END_TAG);
        }
 
-       return_ACPI_STATUS (AE_OK);
+       return_ACPI_STATUS(AE_OK);
 }
 
-
 /*******************************************************************************
  *
  * FUNCTION:    acpi_rs_list_to_byte_stream
@@ -342,19 +346,16 @@ acpi_rs_byte_stream_to_list (
  ******************************************************************************/
 
 acpi_status
-acpi_rs_list_to_byte_stream (
-       struct acpi_resource            *linked_list,
-       acpi_size                       byte_stream_size_needed,
-       u8                              *output_buffer)
+acpi_rs_list_to_byte_stream(struct acpi_resource *linked_list,
+                           acpi_size byte_stream_size_needed,
+                           u8 * output_buffer)
 {
-       acpi_status                     status;
-       u8                              *buffer = output_buffer;
-       acpi_size                       bytes_consumed = 0;
-       u8                              done = FALSE;
-
-
-       ACPI_FUNCTION_TRACE ("rs_list_to_byte_stream");
+       acpi_status status;
+       u8 *buffer = output_buffer;
+       acpi_size bytes_consumed = 0;
+       u8 done = FALSE;
 
+       ACPI_FUNCTION_TRACE("rs_list_to_byte_stream");
 
        while (!done) {
                switch (linked_list->id) {
@@ -362,58 +363,72 @@ acpi_rs_list_to_byte_stream (
                        /*
                         * IRQ Resource
                         */
-                       status = acpi_rs_irq_stream (linked_list, &buffer, &bytes_consumed);
+                       status =
+                           acpi_rs_irq_stream(linked_list, &buffer,
+                                              &bytes_consumed);
                        break;
 
                case ACPI_RSTYPE_DMA:
                        /*
                         * DMA Resource
                         */
-                       status = acpi_rs_dma_stream (linked_list, &buffer, &bytes_consumed);
+                       status =
+                           acpi_rs_dma_stream(linked_list, &buffer,
+                                              &bytes_consumed);
                        break;
 
                case ACPI_RSTYPE_START_DPF:
                        /*
                         * Start Dependent Functions Resource
                         */
-                       status = acpi_rs_start_depend_fns_stream (linked_list,
-                                         &buffer, &bytes_consumed);
+                       status = acpi_rs_start_depend_fns_stream(linked_list,
+                                                                &buffer,
+                                                                &bytes_consumed);
                        break;
 
                case ACPI_RSTYPE_END_DPF:
                        /*
                         * End Dependent Functions Resource
                         */
-                       status = acpi_rs_end_depend_fns_stream (linked_list,
-                                         &buffer, &bytes_consumed);
+                       status = acpi_rs_end_depend_fns_stream(linked_list,
+                                                              &buffer,
+                                                              &bytes_consumed);
                        break;
 
                case ACPI_RSTYPE_IO:
                        /*
                         * IO Port Resource
                         */
-                       status = acpi_rs_io_stream (linked_list, &buffer, &bytes_consumed);
+                       status =
+                           acpi_rs_io_stream(linked_list, &buffer,
+                                             &bytes_consumed);
                        break;
 
                case ACPI_RSTYPE_FIXED_IO:
                        /*
                         * Fixed IO Port Resource
                         */
-                       status = acpi_rs_fixed_io_stream (linked_list, &buffer, &bytes_consumed);
+                       status =
+                           acpi_rs_fixed_io_stream(linked_list, &buffer,
+                                                   &bytes_consumed);
                        break;
 
                case ACPI_RSTYPE_VENDOR:
                        /*
                         * Vendor Defined Resource
                         */
-                       status = acpi_rs_vendor_stream (linked_list, &buffer, &bytes_consumed);
+                       status =
+                           acpi_rs_vendor_stream(linked_list, &buffer,
+                                                 &bytes_consumed);
                        break;
 
                case ACPI_RSTYPE_END_TAG:
                        /*
                         * End Tag
                         */
-                       status = acpi_rs_end_tag_stream (linked_list, &buffer, &bytes_consumed);
+                       status =
+                           acpi_rs_end_tag_stream(linked_list, &buffer,
+                                                  &bytes_consumed);
 
                        /* An End Tag indicates the end of the Resource Template */
 
@@ -424,55 +439,60 @@ acpi_rs_list_to_byte_stream (
                        /*
                         * 24-Bit Memory Resource
                         */
-                       status = acpi_rs_memory24_stream (linked_list, &buffer, &bytes_consumed);
+                       status =
+                           acpi_rs_memory24_stream(linked_list, &buffer,
+                                                   &bytes_consumed);
                        break;
 
                case ACPI_RSTYPE_MEM32:
                        /*
                         * 32-Bit Memory Range Resource
                         */
-                       status = acpi_rs_memory32_range_stream (linked_list, &buffer,
-                                        &bytes_consumed);
+                       status =
+                           acpi_rs_memory32_range_stream(linked_list, &buffer,
+                                                         &bytes_consumed);
                        break;
 
                case ACPI_RSTYPE_FIXED_MEM32:
                        /*
                         * 32-Bit Fixed Memory Resource
                         */
-                       status = acpi_rs_fixed_memory32_stream (linked_list, &buffer,
-                                        &bytes_consumed);
+                       status =
+                           acpi_rs_fixed_memory32_stream(linked_list, &buffer,
+                                                         &bytes_consumed);
                        break;
 
                case ACPI_RSTYPE_ADDRESS16:
                        /*
                         * 16-Bit Address Descriptor Resource
                         */
-                       status = acpi_rs_address16_stream (linked_list, &buffer,
-                                        &bytes_consumed);
+                       status = acpi_rs_address16_stream(linked_list, &buffer,
+                                                         &bytes_consumed);
                        break;
 
                case ACPI_RSTYPE_ADDRESS32:
                        /*
                         * 32-Bit Address Descriptor Resource
                         */
-                       status = acpi_rs_address32_stream (linked_list, &buffer,
-                                        &bytes_consumed);
+                       status = acpi_rs_address32_stream(linked_list, &buffer,
+                                                         &bytes_consumed);
                        break;
 
                case ACPI_RSTYPE_ADDRESS64:
                        /*
                         * 64-Bit Address Descriptor Resource
                         */
-                       status = acpi_rs_address64_stream (linked_list, &buffer,
-                                        &bytes_consumed);
+                       status = acpi_rs_address64_stream(linked_list, &buffer,
+                                                         &bytes_consumed);
                        break;
 
                case ACPI_RSTYPE_EXT_IRQ:
                        /*
                         * Extended IRQ Resource
                         */
-                       status = acpi_rs_extended_irq_stream (linked_list, &buffer,
-                                        &bytes_consumed);
+                       status =
+                           acpi_rs_extended_irq_stream(linked_list, &buffer,
+                                                       &bytes_consumed);
                        break;
 
                default:
@@ -480,15 +500,15 @@ acpi_rs_list_to_byte_stream (
                         * If we get here, everything is out of sync,
                         * so exit with an error
                         */
-                       ACPI_DEBUG_PRINT ((ACPI_DB_ERROR,
-                               "Invalid descriptor type (%X) in resource list\n",
-                               linked_list->id));
+                       ACPI_DEBUG_PRINT((ACPI_DB_ERROR,
+                                         "Invalid descriptor type (%X) in resource list\n",
+                                         linked_list->id));
                        status = AE_BAD_DATA;
                        break;
                }
 
-               if (ACPI_FAILURE (status)) {
-                       return_ACPI_STATUS (status);
+               if (ACPI_FAILURE(status)) {
+                       return_ACPI_STATUS(status);
                }
 
                /* Set the Buffer to point to the open byte */
@@ -497,10 +517,9 @@ acpi_rs_list_to_byte_stream (
 
                /* Point to the next object */
 
-               linked_list = ACPI_PTR_ADD (struct acpi_resource,
-                                 linked_list, linked_list->length);
+               linked_list = ACPI_PTR_ADD(struct acpi_resource,
+                                          linked_list, linked_list->length);
        }
 
-       return_ACPI_STATUS (AE_OK);
+       return_ACPI_STATUS(AE_OK);
 }
-