Top Banner
ACR Enumeration ACR Enumeration [email protected] [email protected] Fellow Fellow Advanced Development Lab Advanced Development Lab AMD AMD
51

ACR Enumeration [email protected] Fellow Advanced Development Lab AMD.

Dec 16, 2015

Download

Documents

David Moody
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: ACR Enumeration Terry.Cole@AMD.Com Fellow Advanced Development Lab AMD.

ACR EnumerationACR Enumeration

[email protected] [email protected] FellowFellowAdvanced Development LabAdvanced Development LabAMD AMD

Page 2: ACR Enumeration Terry.Cole@AMD.Com Fellow Advanced Development Lab AMD.
Page 3: ACR Enumeration Terry.Cole@AMD.Com Fellow Advanced Development Lab AMD.

PurposePurpose

This 45-minute presentation walks This 45-minute presentation walks through the device enumeration through the device enumeration process for ACR risers, with examplesprocess for ACR risers, with examples

Guidelines are presented for BIOS Guidelines are presented for BIOS vendors and ACR riser device driver vendors and ACR riser device driver vendors, as well as motherboard and vendors, as well as motherboard and riser hardware vendors, that will make riser hardware vendors, that will make device enumeration workdevice enumeration work

Page 4: ACR Enumeration Terry.Cole@AMD.Com Fellow Advanced Development Lab AMD.

ACR EnumerationACR Enumeration

IntroductionIntroduction Enumeration architectureEnumeration architecture Enumeration procedureEnumeration procedure ExamplesExamples Guidelines for driver andGuidelines for driver and

BIOS developersBIOS developers What can you do next?What can you do next?

Page 5: ACR Enumeration Terry.Cole@AMD.Com Fellow Advanced Development Lab AMD.

ACR EnumerationACR EnumerationIntroductionIntroduction

Page 6: ACR Enumeration Terry.Cole@AMD.Com Fellow Advanced Development Lab AMD.

Introduction To RisersIntroduction To Risers

Risers deliver functions needing Risers deliver functions needing connectorsconnectors More integrated than PCI cards, USB More integrated than PCI cards, USB

peripherals, and typically less costperipherals, and typically less cost Less integrated and more flexible than Less integrated and more flexible than

mother-board down solutionsmother-board down solutions Motherboard down = soldered to planarMotherboard down = soldered to planar

Examples:Examples: Existing: soft audio and modem codecs Existing: soft audio and modem codecs

from multiple IP sourcesfrom multiple IP sources New: complete functions like networking, New: complete functions like networking,

DSL, cable solutionsDSL, cable solutions

Page 7: ACR Enumeration Terry.Cole@AMD.Com Fellow Advanced Development Lab AMD.

Example RisersExample Risers

AMR, MDC, CNR, ACRAMR, MDC, CNR, ACR Serial/parallel port risers andSerial/parallel port risers and

USB port risersUSB port risers

Page 8: ACR Enumeration Terry.Cole@AMD.Com Fellow Advanced Development Lab AMD.

Introduction To ACRIntroduction To ACR

ACR = Advanced Communication RiserACR = Advanced Communication Riser A 2nd generation riserA 2nd generation riser AMR is the 1st generation riserAMR is the 1st generation riser

Group open to all in the industryGroup open to all in the industry Goals of ACR SIGGoals of ACR SIG

Foster diverse and scalable comm, Foster diverse and scalable comm, network and audio solutionsnetwork and audio solutions

Reuse industry technology, componentsReuse industry technology, components Compatibility with existing OSCompatibility with existing OS Fit into existing compliance test strategiesFit into existing compliance test strategies

Page 9: ACR Enumeration Terry.Cole@AMD.Com Fellow Advanced Development Lab AMD.

ACR RiserACR Riser

Page 10: ACR Enumeration Terry.Cole@AMD.Com Fellow Advanced Development Lab AMD.

ACR RisersACR Risers

Page 11: ACR Enumeration Terry.Cole@AMD.Com Fellow Advanced Development Lab AMD.

Scaleable SolutionScaleable Solution

Residential ClientResidential Client V.90V.90 10/100Base-T10/100Base-T HomePNA 1 or 2HomePNA 1 or 2 2 Ch audio2 Ch audio

Residential GatewayResidential Gateway V.90V.90 10/100Base-T10/100Base-T HomePNA 1 or 2HomePNA 1 or 2 DSL/Cable DSL/Cable Multi-Channel AudioMulti-Channel Audio

DesktopDesktop V.90V.90 2 Ch audio2 Ch audio

Three ACR RisersThree ACR Risers ACR.Basic - DesktopACR.Basic - Desktop ACR.Lite - ClientACR.Lite - Client ACR.Hub - GatewayACR.Hub - Gateway

One ACR One ACR MotherboardMotherboard

Page 12: ACR Enumeration Terry.Cole@AMD.Com Fellow Advanced Development Lab AMD.

Value To Driver OwnersValue To Driver Owners Unique Plug and Play IDs are enabledUnique Plug and Play IDs are enabled

Ensures specific drivers are loadedEnsures specific drivers are loaded

Gives more control to hardware ownersGives more control to hardware owners Chipset and motherboard components can Chipset and motherboard components can

be generic, many PHY and device vendorsbe generic, many PHY and device vendors PHY and riser components can more easily PHY and riser components can more easily

adapt to multiple controllersadapt to multiple controllers

Helps avoid multi-function driversHelps avoid multi-function drivers No new paradigms or wholesale driver No new paradigms or wholesale driver

rewrites required!rewrites required!

Page 13: ACR Enumeration Terry.Cole@AMD.Com Fellow Advanced Development Lab AMD.

ACR EnumerationACR EnumerationArchitectureArchitecture

Page 14: ACR Enumeration Terry.Cole@AMD.Com Fellow Advanced Development Lab AMD.

ArchitectureArchitectureIntroductionIntroduction

The ACR specification provides enumeration The ACR specification provides enumeration mechanism to identify all ACR components to mechanism to identify all ACR components to BIOSBIOS OSOS Software device driversSoftware device drivers

Ensures thatEnsures that Device operating parameters are correctlyDevice operating parameters are correctly

set by the BIOSset by the BIOS Correct set of drivers is loaded by the OSCorrect set of drivers is loaded by the OS Additional vendor-defined information isAdditional vendor-defined information is

available to the device driveravailable to the device driver

Page 15: ACR Enumeration Terry.Cole@AMD.Com Fellow Advanced Development Lab AMD.

ArchitectureArchitectureEnumeration FunctionsEnumeration Functions

ACR enumeration has threeACR enumeration has threedistinct steps:distinct steps: InventoryInventory ““Marriage”Marriage” ConfigurationConfiguration

Page 16: ACR Enumeration Terry.Cole@AMD.Com Fellow Advanced Development Lab AMD.

Enumeration FunctionsEnumeration FunctionsInventory stepInventory step

Riser related resources on MB areRiser related resources on MB arelisted in BIOS storage:listed in BIOS storage: Chipset controllers (network, audio, …)Chipset controllers (network, audio, …) Motherboard down controllersMotherboard down controllers Each appears as a PCI based controllerEach appears as a PCI based controller

Components on the riser are described Components on the riser are described in a serial ROM device:in a serial ROM device: Network PHYs, modem and audio codecsNetwork PHYs, modem and audio codecs USB devices, serial devices, IPB devicesUSB devices, serial devices, IPB devices Each device attached to an “ACR bus”Each device attached to an “ACR bus”

Page 17: ACR Enumeration Terry.Cole@AMD.Com Fellow Advanced Development Lab AMD.

Device InventoryDevice InventoryBy busesBy buses

Devices Devices are listed are listed by by busbus and and functionfunction Bus: AC-Bus: AC-

Link, USB, Link, USB, ACR ACR Serial, Serial, Primary Primary MII, MII, Secondary Secondary MII, GPSI, MII, GPSI, 7WS, IPB7WS, IPB

Wireless Interface

Controller(s)

MII/GPSI

AC '97

IPB

Wireless

ACR SerialBus

MII

USB

HomePNAPHY

xDSL Device

10/100 MbitPHY

AnalogInterfaceNetwork

Antenna

Mo

therb

oard

PC

I Interface RJ45

RJ11

RJ11

USB Device or Connector

AMC '97 CODEC

EEPROM

ACR Card

Legacy AMRACR added

Future

Legend

AnalogInterfaceNetwork

DC’97Controller

USBController

ACR SerialBus Cntl.

MAC 1

IPBController

MAC 2

WirelessController

Wireless Interface

Controller(s)

MII/GPSI

AC '97

IPB

Wireless

ACR SerialBus

MII

USB

HomePNAPHY

xDSL Device

10/100 MbitPHY

AnalogInterfaceNetwork

Antenna

Mo

therb

oard

PC

I Interface RJ45

RJ11

RJ11

USB Device or Connector

AMC '97 CODEC

EEPROM

ACR Card

Legacy AMRACR added

Future

Legend

AnalogInterfaceNetwork

DC’97Controller

USBController

ACR SerialBus Cntl.

MAC 1

IPBController

MAC 2

WirelessController

Page 18: ACR Enumeration Terry.Cole@AMD.Com Fellow Advanced Development Lab AMD.

Device InventoryDevice InventoryBy functionBy function

Wireless Interface

Controller(s)

MII/GPSI

AC '97

IPB

Wireless

ACR SerialBus

MII

USB

HomePNAPHY

xDSL Device

10/100 MbitPHY

AnalogInterfaceNetwork

Antenna

Mo

therb

oard

PC

I Interface RJ45

RJ11

RJ11

USB Device or Connector

AMC '97 CODEC

EEPROM

ACR Card

Legacy AMRACR added

Future

Legend

AnalogInterfaceNetwork

DC’97Controller

USBController

ACR SerialBus Cntl.

MAC 1

IPBController

MAC 2

WirelessController

Wireless Interface

Controller(s)

MII/GPSI

AC '97

IPB

Wireless

ACR SerialBus

MII

USB

HomePNAPHY

xDSL Device

10/100 MbitPHY

AnalogInterfaceNetwork

Antenna

Mo

therb

oard

PC

I Interface RJ45

RJ11

RJ11

USB Device or Connector

AMC '97 CODEC

EEPROM

ACR Card

Legacy AMRACR added

Future

Legend

AnalogInterfaceNetwork

DC’97Controller

USBController

ACR SerialBus Cntl.

MAC 1

IPBController

MAC 2

WirelessController

Devices Devices are listed are listed by bus and by bus and functionfunction Function: Function: Riser, Riser,

Sound, Sound, Modem, Modem, HPNA, HPNA, Ethernet, Ethernet, DSL, DSL, Wireless, Wireless, Cable Cable Modem, Modem, OtherOther

Page 19: ACR Enumeration Terry.Cole@AMD.Com Fellow Advanced Development Lab AMD.

Device InventoryDevice InventoryACR Serial BusACR Serial Bus

SerialEEPROM

SMBus/I2CHost

ControllerOr GPIO

ACRCard

SystemMotherboard

Vdd

pullups

Vdd

SCL

SDA

otherdevices

Two wire Two wire SMBus 1.0 SMBus 1.0 compliantcompliant Serial Data Serial Data

and Clock, and Clock, no third no third control control signalsignal

EPROM at EPROM at A7 or B0A7 or B0

Use Use Controller Controller or GPIOor GPIO

Page 20: ACR Enumeration Terry.Cole@AMD.Com Fellow Advanced Development Lab AMD.

Device InventoryDevice InventorySerial EPROM DataSerial EPROM Data

EPROM data EPROM data image looks image looks similar to a similar to a linked listlinked list

Data format Data format is variable is variable lengthlength

Page 21: ACR Enumeration Terry.Cole@AMD.Com Fellow Advanced Development Lab AMD.

Enumeration FunctionsEnumeration Functions“Marriage” step“Marriage” step

Mapping of each riser resource to a MB Mapping of each riser resource to a MB resource determined by ACR “function resource determined by ACR “function number” – one function per busnumber” – one function per bus Added requirements may be placed on PCI Added requirements may be placed on PCI

Vendor ID in EPROMVendor ID in EPROM Added requirements may be contained by Added requirements may be contained by

executable code in EPROMexecutable code in EPROM Runtime environment provided by BIOSRuntime environment provided by BIOS

Complete device = motherboard + riserComplete device = motherboard + riser Will be configured with unique andWill be configured with unique and

proper identitiesproper identities

Page 22: ACR Enumeration Terry.Cole@AMD.Com Fellow Advanced Development Lab AMD.

Enumeration FunctionsEnumeration FunctionsConfiguration stepConfiguration step

Setup of controller to match riserSetup of controller to match riser Vendor and Device ID copied from riser to Vendor and Device ID copied from riser to

PCI config spacePCI config space Subsystem Vendor and Subsystem ID Subsystem Vendor and Subsystem ID

copied from riser to PCI config spacecopied from riser to PCI config space Optionally, PCI class, PCI latency, and PCI Optionally, PCI class, PCI latency, and PCI

power management can also be copiedpower management can also be copied

Page 23: ACR Enumeration Terry.Cole@AMD.Com Fellow Advanced Development Lab AMD.

Enumeration FunctionsEnumeration FunctionsConfiguration stepConfiguration step

Controllers are disabled if no riser Controllers are disabled if no riser resource is presentresource is present Controllers that may not be functionalControllers that may not be functional

are also disabledare also disabled Example, AC-97 configuration issues such as Example, AC-97 configuration issues such as

primary/secondary clock source conflictsprimary/secondary clock source conflicts

Page 24: ACR Enumeration Terry.Cole@AMD.Com Fellow Advanced Development Lab AMD.

Net Result Of EnumerationNet Result Of Enumeration

All special activity is pre-boot, making All special activity is pre-boot, making it compatible with existing OSit compatible with existing OS

Unique Plug and Play IDs are enabled, Unique Plug and Play IDs are enabled, a combination of motherboard/riser IDa combination of motherboard/riser ID

BIOS not specific to riserBIOS not specific to riser ““Marriages” of risers to controllers Marriages” of risers to controllers

can be restricted by either “party”can be restricted by either “party” Unused components in highly Unused components in highly

integrated chipset/motherboard pose integrated chipset/motherboard pose fewer issuesfewer issues Invisible to OS and user Invisible to OS and user

Page 25: ACR Enumeration Terry.Cole@AMD.Com Fellow Advanced Development Lab AMD.

ExamplesExamples

Useful enumeration pairings:Useful enumeration pairings: Modem codec works with allModem codec works with all

generic controllersgeneric controllers MAC on motherboard works only if a MAC on motherboard works only if a

compatible PHY on risercompatible PHY on riser HPNA PHY works if only one of several HPNA PHY works if only one of several

compatible controllers on motherboardscompatible controllers on motherboards DSL controller on motherboard worksDSL controller on motherboard works

only if specific riser in systemonly if specific riser in system

If it doesn’t work, it doesn’t appear in If it doesn’t work, it doesn’t appear in the PCI space to OSthe PCI space to OS

Page 26: ACR Enumeration Terry.Cole@AMD.Com Fellow Advanced Development Lab AMD.

ACR EnumerationACR EnumerationProcedureProcedure

Page 27: ACR Enumeration Terry.Cole@AMD.Com Fellow Advanced Development Lab AMD.

ProcedureProcedure

Basic sequence of enumeration eventsBasic sequence of enumeration events Hardware stepsHardware steps BIOS stepsBIOS steps OS stepsOS steps Driver stepsDriver steps

Page 28: ACR Enumeration Terry.Cole@AMD.Com Fellow Advanced Development Lab AMD.

Hardware And BIOSHardware And BIOS Hardware:Hardware:

At power up/reset all PCI config registers areAt power up/reset all PCI config registers areset to their defaultsset to their defaults

Enable SMBus or GPIOEnable SMBus or GPIO Under BIOS control:Under BIOS control:

Search for ACR EPROMSearch for ACR EPROM Validate and store EPROM contentsValidate and store EPROM contents Assign the parameters specified in the EPROM, Assign the parameters specified in the EPROM,

plus its own defaults, to the PCI config space of plus its own defaults, to the PCI config space of each controller supportedeach controller supported

Disable all ACR controllers that do not have Disable all ACR controllers that do not have devices attached to themdevices attached to them

Make config space registers read-onlyMake config space registers read-only

Page 29: ACR Enumeration Terry.Cole@AMD.Com Fellow Advanced Development Lab AMD.

OS And DriverOS And Driver Under operating system control:Under operating system control:

Scan the PCI bus and match .INF files to Scan the PCI bus and match .INF files to the ID registers in the configuration spacethe ID registers in the configuration space

Load the appropriate device driver, Load the appropriate device driver, pointed to by its entry in the INF filepointed to by its entry in the INF file

Under control of the driver:Under control of the driver: Query the BIOS for ACR BIOS presenceQuery the BIOS for ACR BIOS presence Query the BIOS for the default IDs of ACR Query the BIOS for the default IDs of ACR

function controllersfunction controllers Query the BIOS for the enumeration Query the BIOS for the enumeration

data or read it from the serial busdata or read it from the serial bus

Page 30: ACR Enumeration Terry.Cole@AMD.Com Fellow Advanced Development Lab AMD.

Riser Design GoalsRiser Design Goals

Riser should be designed to enumerate Riser should be designed to enumerate in any motherboardin any motherboard

EPROM data causes controller to be EPROM data causes controller to be disabled unless motherboard contains disabled unless motherboard contains an appropriate controlleran appropriate controller

Risers can be tested with Risers can be tested with ACR SIG draft riser test assertions, and ACR SIG draft riser test assertions, and ACR designated reference motherboardsACR designated reference motherboards

Page 31: ACR Enumeration Terry.Cole@AMD.Com Fellow Advanced Development Lab AMD.

Motherboard Design GoalsMotherboard Design Goals

Any riser (AMR or ACR) can be plugged Any riser (AMR or ACR) can be plugged in and and it should enumerate fullyin and and it should enumerate fully

Motherboard can be tested withMotherboard can be tested with ACR SIG draft motherboard test assertions, ACR SIG draft motherboard test assertions,

and and ACR SIG designated reference risersACR SIG designated reference risers

Page 32: ACR Enumeration Terry.Cole@AMD.Com Fellow Advanced Development Lab AMD.

ACR EnumerationACR EnumerationExamplesExamples

Page 33: ACR Enumeration Terry.Cole@AMD.Com Fellow Advanced Development Lab AMD.

AMR Compatible ModemAMR Compatible ModemBytesBytes EPROM ContentsEPROM Contents

44 ““ACR 1.0”ACR 1.0”

22 Riser ObjectRiser Object

55 Device ID of riser maker (PCI ID)Device ID of riser maker (PCI ID)

1919 Product name of riser: “ACME Turbo Modem”Product name of riser: “ACME Turbo Modem”

22 Modem on AC-Link ObjectModem on AC-Link Object

55 Desired Subsystem IDsDesired Subsystem IDs

33 END object (with checksum)END object (with checksum)

Shows AMR style, transferring only subsystem IDsShows AMR style, transferring only subsystem IDs May also include other optional items:May also include other optional items:

Riser: serial numberRiser: serial numberACR Serial bus: size of EPROMACR Serial bus: size of EPROMAC-Link Modem: device checks if riser not compatible AC-Link Modem: device checks if riser not compatible with all controllerswith all controllers

Page 34: ACR Enumeration Terry.Cole@AMD.Com Fellow Advanced Development Lab AMD.

Sound And ModemSound And Modem

May include optional items like previous exampleMay include optional items like previous example If audio features are proprietary, may include device If audio features are proprietary, may include device

checks to make sure right controller is presentchecks to make sure right controller is present

BytesBytes EPROM ContentsEPROM Contents

44 ““ACR 1.0”ACR 1.0”

22 Riser ObjectRiser Object

55 Device ID of riser maker (PCI ID)Device ID of riser maker (PCI ID)

1919 Product name of riser: “WHIZ Audio Modem”Product name of riser: “WHIZ Audio Modem”

22 Audio on AC-Link ObjectAudio on AC-Link Object

55 Desired Subsystem IDs (2)Desired Subsystem IDs (2)

22 Modem on AC-Link ObjectModem on AC-Link Object

55 Desired Subsystem IDs (2)Desired Subsystem IDs (2)

33 END object (with checksum)END object (with checksum)

Page 35: ACR Enumeration Terry.Cole@AMD.Com Fellow Advanced Development Lab AMD.

Modem And HPNAModem And HPNA

Shows use of device checkShows use of device check May also include optional latency, class, and May also include optional latency, class, and

power management values of PCI controllerpower management values of PCI controller

BytesBytes EPROM ContentsEPROM Contents

44 ““ACR 1.0”ACR 1.0”

22 Riser ObjectRiser Object

55 Device ID of riser maker (PCI ID)Device ID of riser maker (PCI ID)

2424 Product name of riser:”WHAMMO Modem HPNA G92”Product name of riser:”WHAMMO Modem HPNA G92”

22 Modem on AC-Link ObjectModem on AC-Link Object

99 Desired Device IDs (2)Desired Device IDs (2)

22 Home Networking on Primary MII ObjectHome Networking on Primary MII Object

55 Desired Subsystem IDs (2)Desired Subsystem IDs (2)

2626 Device check against 3 compatible controllersDevice check against 3 compatible controllers

55 MAC AddressMAC Address

33 END Object (with checksum)END Object (with checksum)

Page 36: ACR Enumeration Terry.Cole@AMD.Com Fellow Advanced Development Lab AMD.

Modem, HPNA And EthernetModem, HPNA And Ethernet

Note the easy modularity!Note the easy modularity!

BytesBytes EPROM ContentsEPROM Contents

44 ““ACR 1.0”ACR 1.0”

22 Riser ObjectRiser Object

55 Device ID of riser maker (PCI ID)Device ID of riser maker (PCI ID)

2121 Product name of riser:”BANGO Home Gateway”Product name of riser:”BANGO Home Gateway”

22 Modem on AC-Link ObjectModem on AC-Link Object

55 Desired Device IDs (2)Desired Device IDs (2)

22 Ethernet on Primary MII ObjectEthernet on Primary MII Object

99 Desired Device IDs (4)Desired Device IDs (4)

55 MAC AddressMAC Address

22 Home Networking on Secondary MIIHome Networking on Secondary MII

99 Desired Device IDs (4)Desired Device IDs (4)

55 MAC AddressMAC Address

33 END Object (with checksum)END Object (with checksum)

Page 37: ACR Enumeration Terry.Cole@AMD.Com Fellow Advanced Development Lab AMD.

ACR EnumerationACR EnumerationGuidelines for Driver and BIOS Guidelines for Driver and BIOS

DevelopersDevelopers

Page 38: ACR Enumeration Terry.Cole@AMD.Com Fellow Advanced Development Lab AMD.

Driver GuidelinesDriver Guidelines

Use separate Vendor/Sub-vendor IDs Use separate Vendor/Sub-vendor IDs when appropriate to ensure the right when appropriate to ensure the right driver is loadeddriver is loaded

Provide full and appropriate power Provide full and appropriate power management of riser resources through management of riser resources through PCI power managementPCI power management

Make use of the ACR BIOS function to Make use of the ACR BIOS function to query standard and private information query standard and private information (protected and 32-bit)(protected and 32-bit)

Page 39: ACR Enumeration Terry.Cole@AMD.Com Fellow Advanced Development Lab AMD.

Driver GuidelinesDriver Guidelines

Provide full support for as many Provide full support for as many combinations of controllers and risers combinations of controllers and risers as appropriateas appropriate

Make use of the serial EPROM device-Make use of the serial EPROM device-check features to ensure risers are only check features to ensure risers are only used with appropriate controllersused with appropriate controllers

Make use of the serial EPROM features Make use of the serial EPROM features to ensure that drivers are only used with to ensure that drivers are only used with appropriate risersappropriate risers

Page 40: ACR Enumeration Terry.Cole@AMD.Com Fellow Advanced Development Lab AMD.

BIOS GuidelinesBIOS Guidelines

Provide AMR style enumeration as a Provide AMR style enumeration as a fallback when AMR card insertedfallback when AMR card insertedinto ACR slotinto ACR slot

Provide full description of any Provide full description of any motherboard components that sharemotherboard components that sharethe buses that connect to ACR slotthe buses that connect to ACR slot

Provide all ACR BIOS functions in both Provide all ACR BIOS functions in both protected mode and 32-bit formatprotected mode and 32-bit format

Page 41: ACR Enumeration Terry.Cole@AMD.Com Fellow Advanced Development Lab AMD.

BIOS GuidelinesBIOS Guidelines

Follow the ACR BIOS GuidelinesFollow the ACR BIOS GuidelinesApplication NoteApplication Note

Pre-test BIOS against Pre-test BIOS against ACR SIG draft motherboard test ACR SIG draft motherboard test

assertionsassertions

Page 42: ACR Enumeration Terry.Cole@AMD.Com Fellow Advanced Development Lab AMD.

ACR EnumerationACR EnumerationWhat Can You Do Next?What Can You Do Next?

Page 43: ACR Enumeration Terry.Cole@AMD.Com Fellow Advanced Development Lab AMD.

All Development TeamsAll Development TeamsWhat can What can youyou do next? do next?

Use ACR instead of AMRUse ACR instead of AMR Follow ACR 1.0 spec, ACR Application Follow ACR 1.0 spec, ACR Application

Notes, AC-97, MII, and IPBNotes, AC-97, MII, and IPB Identify your designs to ACR SIG Identify your designs to ACR SIG

Can be used as examples in compliance Can be used as examples in compliance testing and interoperability testingtesting and interoperability testing

Participate in future ACR SIG PlugfestsParticipate in future ACR SIG Plugfests

Page 44: ACR Enumeration Terry.Cole@AMD.Com Fellow Advanced Development Lab AMD.

Motherboard VendorsMotherboard VendorsWhat can What can youyou do next? do next?

Consider moving to riser form-factorConsider moving to riser form-factor SKU-dependent connectorsSKU-dependent connectors Entry level hardware that is often upgradedEntry level hardware that is often upgraded

Always ship with ACR BIOS!Always ship with ACR BIOS! Don’t use designs that allow insertion of Don’t use designs that allow insertion of

devices that conflict with ACR addressdevices that conflict with ACR address Make use of protection modesMake use of protection modes

as appropriateas appropriate For more information, visit www.acrsig.org For more information, visit www.acrsig.org

Page 45: ACR Enumeration Terry.Cole@AMD.Com Fellow Advanced Development Lab AMD.

Mo

therb

oard

PC

I Interface

MAC 1

IPBController

MAC 2

ACR Card

EEPROM

ACR Motherboard

HomePNAPHY

xDSL Device

10/100 MbitPHY

AnalogInterfaceNetwork

RJ45

RJ11

RJ11

USB Device or Connector

AMC '97 CODEC

AnalogInterfaceNetwork

MII/GPSI

AC '97

IPB

MII

USB

Wireless

ACR SerialBus

DC’97Controller

USBController

ACR SerialBus Cntl.

ACR motherboard

required

Legend

Mo

therb

oard

PC

I Interface

MAC 1

IPBController

MAC 2

ACR Card

EEPROM

ACR Motherboard

HomePNAPHY

xDSL Device

10/100 MbitPHY

AnalogInterfaceNetwork

RJ45

RJ11

RJ11

USB Device or Connector

AMC '97 CODEC

AnalogInterfaceNetwork

MII/GPSI

AC '97

IPB

MII

USB

Wireless

ACR SerialBus

DC’97Controller

USBController

ACR SerialBus Cntl.

ACR motherboard

required

Legend

Minimum ACR MotherboardMinimum ACR Motherboard

Provide the Provide the minimum minimum motherboard motherboard connectionsconnections USB, USB, ACR serial, ACR serial, AC-97 AC-97

Page 46: ACR Enumeration Terry.Cole@AMD.Com Fellow Advanced Development Lab AMD.

Motherboard VendorsMotherboard VendorsWhat can What can youyou do next? do next?

Submit motherboards to WHQL with Submit motherboards to WHQL with one of the ACR SIG tested risersone of the ACR SIG tested risers They become candidates for reference They become candidates for reference

boards to test risers independentlyboards to test risers independently Pre-test motherboards against:Pre-test motherboards against:

ACR designated risers ACR designated risers ACR SIG draft motherboard test assertions ACR SIG draft motherboard test assertions

documentdocument WHQL system testWHQL system test Each appropriate WHQL functional test Each appropriate WHQL functional test

(modem, audio, networking)(modem, audio, networking)

Page 47: ACR Enumeration Terry.Cole@AMD.Com Fellow Advanced Development Lab AMD.

Riser VendorsRiser VendorsWhat can What can youyou do next? do next?

Provide ACR serial bus plus buses for Provide ACR serial bus plus buses for your functionsyour functions

Always ship risers with fully Always ship risers with fully programmed EPROMs, including the programmed EPROMs, including the riser company Vendor IDriser company Vendor ID

Always strive to generate unique and Always strive to generate unique and complete Plug and Play IDs, relying on complete Plug and Play IDs, relying on enumeration where appropriateenumeration where appropriate

Always locate the serial EPROM at A7Always locate the serial EPROM at A7or B0 addressor B0 address

Page 48: ACR Enumeration Terry.Cole@AMD.Com Fellow Advanced Development Lab AMD.

Riser VendorsRiser VendorsWhat can What can youyou do next? do next?

Use the ACR EPROM programming tool Use the ACR EPROM programming tool to generate error-free EPROM imagesto generate error-free EPROM images

Don’t put Ethernet PHY or audio codec Don’t put Ethernet PHY or audio codec down with connectors on riserdown with connectors on riser Put the PHY/codec on riser with connectorPut the PHY/codec on riser with connector

Design all resources so their idle power Design all resources so their idle power fits within one PCI idle slot power fits within one PCI idle slot power budget, in case they are unpairedbudget, in case they are unpaired

Page 49: ACR Enumeration Terry.Cole@AMD.Com Fellow Advanced Development Lab AMD.

Riser VendorsRiser VendorsWhat can What can youyou do next? do next?

Submit risers to WHQL with one of the Submit risers to WHQL with one of the ACR SIG tested motherboardsACR SIG tested motherboards They become candidates for reference They become candidates for reference

risers to test motherboards independentlyrisers to test motherboards independently

Pre-test risers againstPre-test risers against ACR designated motherboardsACR designated motherboards ACR SIG draft riser test assertions ACR SIG draft riser test assertions

documentdocument Each appropriate WHQL functional test Each appropriate WHQL functional test

(modem, audio, networking)(modem, audio, networking)

Page 50: ACR Enumeration Terry.Cole@AMD.Com Fellow Advanced Development Lab AMD.

More InformationMore InformationWhat can you do next?What can you do next?

www.acrsig.orgwww.acrsig.org to view public to view public informationinformation

[email protected]@acrsig.org to join and gain to join and gain members-only access and to get members-only access and to get Plugfest informationPlugfest information

www.microsoft.com/hwtestwww.microsoft.com/hwtest for more for more information about WHQL testinginformation about WHQL testing

Page 51: ACR Enumeration Terry.Cole@AMD.Com Fellow Advanced Development Lab AMD.