Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Este documento define o conteúdo da Tabela de Redirecionamento do Console da Porta Serial. Esta tabela é usada para indicar se uma porta serial ou uma interface UART não herdada está disponível para uso com o Microsoft® Windows® Emergency Management Services (EMS).
A tabela fornece informações sobre a configuração e o uso da porta serial ou da interface UART não herdada. Em um sistema em que o BIOS ou o firmware do sistema usa a porta serial para entrada/saída do console, esta tabela deve ser usada para transmitir informações sobre as configurações, para garantir uma transição perfeita entre a saída do console do firmware e a saída do Windows EMS.
Esta tabela deve estar localizada na memória do sistema com outras tabelas ACPI e deve ser referenciada na tabela ACPI RSDT.
Aviso de patente: A Microsoft está disponibilizando certos direitos de patente para implementações desta especificação em duas opções:
- Community Promise da Microsoft, disponível em https://www.microsoft.com/openspecifications/en/us/programs/community-promise/default.aspx; ou
- O Acordo de Especificação Final da Open Web Foundation Versão 1.0 ("OWF 1.0") a partir de 1º de outubro de 2012, disponível no site da Open Web Foundation .
| Field | Byte Length | Byte Offset | Description |
|---|---|---|---|
| Header | |||
| Signature | 4 | 0 | 'SPCR'. Assinatura da tabela de redirecionamento do console da porta serial. |
| Length | 4 | 4 | Comprimento, em bytes, de toda a Tabela de Redirecionamento do Console da Porta Serial, incluindo NamespaceString. |
| Revision | 1 | 8 | A revisão da tabela atual é 4. |
| Checksum | 1 | 9 | A tabela inteira deve ser somada a zero. |
| OEM ID | 6 | 10 | ID do fabricante do equipamento original (OEM). |
| ID da tabela OEM | 8 | 16 | Para a Tabela de Redirecionamento do Console da Porta Serial, o ID da tabela é o ID do modelo do fabricante. |
| OEM Revision | 4 | 24 | Revisão OEM da Tabela de Redirecionamento do Console da Porta Serial para ID da Tabela OEM fornecida. |
| Creator ID | 4 | 28 | ID do fornecedor do utilitário que criou a tabela. |
| Creator Revision | 4 | 32 | Revisão do utilitário que criou a tabela. |
| Interface Type | 1 | 36 | Indica o tipo de interface de registo: Para a revisão 1:
See the Serial Port Subtypes in Table 3 of the DBG2 Specification. |
| Reserved | 3 | 37 | Deve ser 0. |
| Base Address | 12 | 40 | O endereço base do conjunto de registros de porta serial descrito usando a Estrutura de Endereço Genérico ACPI, ou 0 se o redirecionamento do console estiver desabilitado. Note: COM1 (0x3F8) seria:
|
| Interrupt Type | 1 | 52 | Tipo(s) de interrupção usado(s) pela UART:
As plataformas com um dual-8259 e um I/O APIC ou I/O SAPIC devem definir o bit IRQ (Bit[0]) e o bit de interrupção do sistema global correspondente (por exemplo, um sistema que suportasse 8259 e SAPIC seria 5). |
| IRQ | 1 | 53 | O IRQ compatível com PC-AT usado pelo UART:
|
| Interrupção Global do Sistema | 4 | 54 | A Interrupção Global do Sistema (GSIV) utilizada pela UART. Não é válido se Bit[1:7] do campo Tipo de interrupção for 0. Se o bit 3 do campo Tipo de interrupção estiver definido (ARMH GIC), então um controlador de interrupção Arm GIC será usado. As interrupções de braço GIC SGI e PPI não podem ser usadas para o UART, por isso é proibido que este campo seja definido para qualquer valor em {0, ..., 31} ou em {1056, ..., 1119}. |
| Taxa de transmissão configurada | 1 | 58 | A taxa de transmissão que o BIOS usou para redirecionamento:
|
| Parity | 1 | 59 |
|
| Stop Bits | 1 | 60 |
|
| Flow Control | 1 | 61 |
|
| Terminal Type | 1 | 62 | O protocolo de terminal que o BIOS estava usando para o redirecionamento do console:
|
| Linguagem | 1 | 63 | Idioma que o BIOS estava redirecionando. Deve ser 0. |
| ID do dispositivo PCI | 2 | 64 | Designa a ID do dispositivo de um dispositivo PCI que contém uma UART para ser usada como uma porta sem cabeça. Deve ser 0xFFFF se não for um dispositivo PCI. |
| ID do fornecedor PCI | 2 | 66 | Designa a ID do fornecedor de um dispositivo PCI que contém uma UART para ser usada como uma porta sem cabeça. Deve ser 0xFFFF se não for um dispositivo PCI. |
| Número de barramento PCI | 1 | 68 | Número de barramento PCI se a tabela descreve um dispositivo PCI. Deve ser 0x00 se não for um dispositivo PCI. |
| Número do dispositivo PCI | 1 | 69 | Número do dispositivo PCI se a tabela descreve um dispositivo PCI. Deve ser 0x00 se não for um dispositivo PCI. |
| Número da função PCI | 1 | 70 | Número de função PCI se a tabela descreve um dispositivo PCI. Deve ser 0x00 se não for um dispositivo PCI. |
| PCI Flags | 4 | 71 | Compatibilidade PCI sinaliza bitmask. Deve ser zero por padrão.
|
| PCI Segment | 1 | 75 | Número do segmento PCI. Para sistemas com menos de 255 barramentos PCI, esse número deve ser 0. |
| Frequência do relógio UART | 4 | 76 | Para a Revisão 2 ou inferior:
|
| Taxa de transmissão precisa | 4 | 80 | Contém uma taxa de transmissão diferente de zero específica que substitui o valor do campo Taxa de transmissão configurada. Se este campo for zero ou não estiver presente, a Taxa de Transmissão Configurada será usada. Consulte a nota abaixo. |
| NamespaceStringLength | 2 | 84 | Comprimento, em bytes, de NamespaceString, incluindo caracteres NUL. |
| NamespaceStringOffset | 2 | 86 | Deslocamento, em bytes, do início dessa estrutura para o campo NamespaceString[]. Esse valor deve ser válido porque essa cadeia de caracteres deve estar presente. |
| NamespaceString[] | NamespaceStringLength | NamespaceStringOffset | Cadeia de caracteres ASCII terminada por NUL para identificar exclusivamente este dispositivo. Essa cadeia de caracteres consiste em uma referência totalmente qualificada ao objeto que representa esse dispositivo no namespace ACPI. Se nenhum dispositivo de namespace existir, NamespaceString[] deve conter apenas um único '.' (período ASCII). |
Nota sobre os campos Taxa de transmissão
O campo Taxa de transmissão configurada existe como um campo de byte único desde a criação da tabela SPCR e é amplamente suportado pelos sistemas operacionais. No entanto, por ser uma enumeração, ela é limitada em sua capacidade de descrever com precisão taxas de transmissão não tradicionais, como as usadas por UARTs de alta velocidade. Assim, o campo Taxa de transmissão precisa foi adicionado para permitir que o firmware forneça aos sistemas operacionais de suporte um valor DWORD que descreve uma taxa de transmissão específica (por exemplo, 1500000). Quando o campo Taxa de transmissão precisa contém um valor diferente de zero, o campo Taxa de transmissão configurada deve ser zero.
Revision History
| Date | Rev | Description |
|---|---|---|
| 2/15/00 | .10 | Created |
| 3/1/00 | .50 | ‘SPCR’. Dados de assinatura adicionados |
| 3/20/00 | .55 | Dados revisados para incluir port e irq |
| 3/22/00 | .56 | Identificação de porta esclarecida Adicionada capacidade de desativar o redirecionamento. Ponteiro adicionado à Estrutura de Endereço de Registro Genérico |
| 3/23/00 | .56a | Formatação, declaração de exoneração de responsabilidade, edição de cópias |
| 4/24/00 | .6 | Postado na web para WinHEC |
| 4/24/00 | .6 | Rascunho de revisão pública publicado |
| 5/25/00 | .61 | Correção BASE_ADDRESS descrição |
| 5/25/00 | .61 | Rascunho de revisão pública publicado |
| 5/31/00 | .7 | Correção de BASE_ADDRESS exemplos de descrição. Adicionada interface 16540. |
| 5/31/00 | .71 | Alterada a informação no GRAS de uma nota para um "*" |
| 5/31/00 | .71 | Rascunho de revisão pública publicado |
| 6/1/00 | .72 | Exemplos de porta GRAS COM alterados para serem little-endian. Texto adicionado ao final da linha |
| 7/12/00 | .75 | Descrição do IRQ fixo. Corrigidos vários problemas de formato Adicionadas informações de barramento PCI. |
| 7/26/00 | .76 | Atualize para o nome do campo PCI "Número do dispositivo". Linguagem de introdução alterada para incluir UART não herdado. |
| 8/10/00 | .77 | Informações de interrupção alteradas, adicionando APIC e SAPIC Adicionado controle de fluxo |
| 9/22/00 | .78 | Segmento PCI adicionado |
| 10/25/00 | .80 | Seção de sinalizadores PCI fixa. Tipos de terminal adicionados 16450 informações FCR adicionadas |
| 10/1/01 | .95 | Códigos de idioma removidos |
| 1/11/02 | 1.00 | adicionando especificações de licenciamento atualizadas à versão 1.00 |
| 3/12/14 | 1.01 | Lançado sob Microsoft Community Promise |
| 6/2/14 | 1.02 | Alterada a Revisão de Tabela para 2 e adicionado suporte para Tipos de Interface adicionais, conforme definido na especificação DBG2. |
| 8/10/15 | 1.03 | Aviso de patente atualizado. |
| 7/23/2018 | 1.04 | |
| 6/5/2020 | 1.05 | Edited formatting |
| 9/1/2020 | 1.06 | Formatação editada e link atualizado para a especificação DBG2 |
| 2/17/2021 | 1.07 | Corrigida a descrição incorreta no campo Bits de parada. Desfaça a remoção acidental do campo Controle de fluxo. Edited formatting. |
| 10/7/2021 | 1.08 | Alterada a Revisão da Tabela para 3 e criado campo para Frequência de Relógio UART. Edited formatting. |
| 4/10/2023 | 1.09 | Revisão da tabela alterada para 4. Adicionado suporte a RISC-V e sondagem ao campo Tipo de interrupção. Novos campos adicionados: Taxa de transmissão precisa, NamespaceStringLength, NamespaceStringOffset e NamespaceString[]. |
| 5/1/2023 | 1.10 | Redação esclarecida nos campos Interrupção Global do Sistema e Frequência do Relógio UART. |