SMC: Difference between revisions

From XenonLibrary
Jump to navigation Jump to search
No edit summary
No edit summary
 
(3 intermediate revisions by the same user not shown)
Line 2: Line 2:


== General ==
== General ==
* SMC firmware is located on the [[Nand]] and is loaded onto the SMC processor by a small bootloader
* SMC firmware is located on the [[nand]] and is loaded onto the SMC processor by a small bootloader ROM
* SMC firmware binary size is 12KB on [[XSB]] and [[PSB]], 14KB on [[KSB]]
* SMC firmware binary size is 12KB on [[XSB]] and [[PSB]], 14KB on [[KSB]]
* GPIO pins on the [[Southbridge]] are used to interact with board signals
* GPIO pins on the [[Southbridge]] are used to interact with board signals
Line 21: Line 21:
* Infrared Remote Control
* Infrared Remote Control
* [[SMBus]] (I2C) Control
* [[SMBus]] (I2C) Control
== SMC Config ==
{{Main|SMC Config}}
A small block of configuration data known as the [[SMC Config]], located in the [[Nand]], is used to configure certain options on the system.


{{Software}}
{{Software}}

Latest revision as of 21:54, 20 June 2023

The SMC or System Management Controller is software that runs on an Intel 8051 microprocessor core in the Southbridge. The SMC is responsible for controlling all components of the system.

General

  • SMC firmware is located on the nand and is loaded onto the SMC processor by a small bootloader ROM
  • SMC firmware binary size is 12KB on XSB and PSB, 14KB on KSB
  • GPIO pins on the Southbridge are used to interact with board signals
  • XSS can communicate with the SMC

Duties

Primary duties of the SMC include:

  • Controlling System Power
  • Power On and Shut Down Sequences
  • Voltage Regulation Control and Monitoring
  • System Clock Control
  • Thermal Monitoring and Fan Control
  • System Error Reporting
  • DVD Drive Tray Control
  • Button and Status Indicator Control
  • Controller Pairing and Sync
  • Infrared Remote Control
  • SMBus (I2C) Control

SMC Config

A small block of configuration data known as the SMC Config, located in the Nand, is used to configure certain options on the system.