/* SPDX-License-Identifier: GPL-2.0 */
/*
* The header file of cs5536 south bridge.
*
* Copyright (C) 2007 Lemote, Inc.
* Author : jlliu <liujl@lemote.com>
*/
#ifndef _CS5536_H
#define _CS5536_H
#include <linux/types.h>
extern void _rdmsr(u32 msr, u32 *hi, u32 *lo);
extern void _wrmsr(u32 msr, u32 hi, u32 lo);
/*
* MSR module base
*/
#define CS5536_SB_MSR_BASE (0 x00000000)
#define CS5536_GLIU_MSR_BASE (0 x10000000)
#define CS5536_ILLEGAL_MSR_BASE (0 x20000000)
#define CS5536_USB_MSR_BASE (0 x40000000)
#define CS5536_IDE_MSR_BASE (0 x60000000)
#define CS5536_DIVIL_MSR_BASE (0 x80000000)
#define CS5536_ACC_MSR_BASE (0 xa0000000)
#define CS5536_UNUSED_MSR_BASE (0 xc0000000)
#define CS5536_GLCP_MSR_BASE (0 xe0000000)
#define SB_MSR_REG(offset) (CS5536_SB_MSR_BASE | (offset))
#define GLIU_MSR_REG(offset) (CS5536_GLIU_MSR_BASE | (offset))
#define ILLEGAL_MSR_REG(offset) (CS5536_ILLEGAL_MSR_BASE | (offset))
#define USB_MSR_REG(offset) (CS5536_USB_MSR_BASE | (offset))
#define IDE_MSR_REG(offset) (CS5536_IDE_MSR_BASE | (offset))
#define DIVIL_MSR_REG(offset) (CS5536_DIVIL_MSR_BASE | (offset))
#define ACC_MSR_REG(offset) (CS5536_ACC_MSR_BASE | (offset))
#define UNUSED_MSR_REG(offset) (CS5536_UNUSED_MSR_BASE | (offset))
#define GLCP_MSR_REG(offset) (CS5536_GLCP_MSR_BASE | (offset))
/*
* BAR SPACE OF VIRTUAL PCI :
* range for pci probe use, length is the actual size.
*/
/* IO space for all DIVIL modules */
#define CS5536_IRQ_RANGE 0 xffffffe0 /* USERD FOR PCI PROBE */
#define CS5536_IRQ_LENGTH 0 x20 /* THE REGS ACTUAL LENGTH */
#define CS5536_SMB_RANGE 0 xfffffff8
#define CS5536_SMB_LENGTH 0 x08
#define CS5536_GPIO_RANGE 0 xffffff00
#define CS5536_GPIO_LENGTH 0 x100
#define CS5536_MFGPT_RANGE 0 xffffffc0
#define CS5536_MFGPT_LENGTH 0 x40
#define CS5536_ACPI_RANGE 0 xffffffe0
#define CS5536_ACPI_LENGTH 0 x20
#define CS5536_PMS_RANGE 0 xffffff80
#define CS5536_PMS_LENGTH 0 x80
/* IO space for IDE */
#define CS5536_IDE_RANGE 0 xfffffff0
#define CS5536_IDE_LENGTH 0 x10
/* IO space for ACC */
#define CS5536_ACC_RANGE 0 xffffff80
#define CS5536_ACC_LENGTH 0 x80
/* MEM space for ALL USB modules */
#define CS5536_OHCI_RANGE 0 xfffff000
#define CS5536_OHCI_LENGTH 0 x1000
#define CS5536_EHCI_RANGE 0 xfffff000
#define CS5536_EHCI_LENGTH 0 x1000
/*
* PCI MSR ACCESS
*/
#define PCI_MSR_CTRL 0 xF0
#define PCI_MSR_ADDR 0 xF4
#define PCI_MSR_DATA_LO 0 xF8
#define PCI_MSR_DATA_HI 0 xFC
/**************** MSR *****************************/
/*
* GLIU STANDARD MSR
*/
#define GLIU_CAP 0 x00
#define GLIU_CONFIG 0 x01
#define GLIU_SMI 0 x02
#define GLIU_ERROR 0 x03
#define GLIU_PM 0 x04
#define GLIU_DIAG 0 x05
/*
* GLIU SPEC. MSR
*/
#define GLIU_P2D_BM0 0 x20
#define GLIU_P2D_BM1 0 x21
#define GLIU_P2D_BM2 0 x22
#define GLIU_P2D_BMK0 0 x23
#define GLIU_P2D_BMK1 0 x24
#define GLIU_P2D_BM3 0 x25
#define GLIU_P2D_BM4 0 x26
#define GLIU_COH 0 x80
#define GLIU_PAE 0 x81
#define GLIU_ARB 0 x82
#define GLIU_ASMI 0 x83
#define GLIU_AERR 0 x84
#define GLIU_DEBUG 0 x85
#define GLIU_PHY_CAP 0 x86
#define GLIU_NOUT_RESP 0 x87
#define GLIU_NOUT_WDATA 0 x88
#define GLIU_WHOAMI 0 x8B
#define GLIU_SLV_DIS 0 x8C
#define GLIU_IOD_BM0 0 xE0
#define GLIU_IOD_BM1 0 xE1
#define GLIU_IOD_BM2 0 xE2
#define GLIU_IOD_BM3 0 xE3
#define GLIU_IOD_BM4 0 xE4
#define GLIU_IOD_BM5 0 xE5
#define GLIU_IOD_BM6 0 xE6
#define GLIU_IOD_BM7 0 xE7
#define GLIU_IOD_BM8 0 xE8
#define GLIU_IOD_BM9 0 xE9
#define GLIU_IOD_SC0 0 xEA
#define GLIU_IOD_SC1 0 xEB
#define GLIU_IOD_SC2 0 xEC
#define GLIU_IOD_SC3 0 xED
#define GLIU_IOD_SC4 0 xEE
#define GLIU_IOD_SC5 0 xEF
#define GLIU_IOD_SC6 0 xF0
#define GLIU_IOD_SC7 0 xF1
/*
* SB STANDARD
*/
#define SB_CAP 0 x00
#define SB_CONFIG 0 x01
#define SB_SMI 0 x02
#define SB_ERROR 0 x03
#define SB_MAR_ERR_EN 0 x00000001
#define SB_TAR_ERR_EN 0 x00000002
#define SB_RSVD_BIT1 0 x00000004
#define SB_EXCEP_ERR_EN 0 x00000008
#define SB_SYSE_ERR_EN 0 x00000010
#define SB_PARE_ERR_EN 0 x00000020
#define SB_TAS_ERR_EN 0 x00000040
#define SB_MAR_ERR_FLAG 0 x00010000
#define SB_TAR_ERR_FLAG 0 x00020000
#define SB_RSVD_BIT2 0 x00040000
#define SB_EXCEP_ERR_FLAG 0 x00080000
#define SB_SYSE_ERR_FLAG 0 x00100000
#define SB_PARE_ERR_FLAG 0 x00200000
#define SB_TAS_ERR_FLAG 0 x00400000
#define SB_PM 0 x04
#define SB_DIAG 0 x05
/*
* SB SPEC.
*/
#define SB_CTRL 0 x10
#define SB_R0 0 x20
#define SB_R1 0 x21
#define SB_R2 0 x22
#define SB_R3 0 x23
#define SB_R4 0 x24
#define SB_R5 0 x25
#define SB_R6 0 x26
#define SB_R7 0 x27
#define SB_R8 0 x28
#define SB_R9 0 x29
#define SB_R10 0 x2A
#define SB_R11 0 x2B
#define SB_R12 0 x2C
#define SB_R13 0 x2D
#define SB_R14 0 x2E
#define SB_R15 0 x2F
/*
* GLCP STANDARD
*/
#define GLCP_CAP 0 x00
#define GLCP_CONFIG 0 x01
#define GLCP_SMI 0 x02
#define GLCP_ERROR 0 x03
#define GLCP_PM 0 x04
#define GLCP_DIAG 0 x05
/*
* GLCP SPEC.
*/
#define GLCP_CLK_DIS_DELAY 0 x08
#define GLCP_PM_CLK_DISABLE 0 x09
#define GLCP_GLB_PM 0 x0B
#define GLCP_DBG_OUT 0 x0C
#define GLCP_RSVD1 0 x0D
#define GLCP_SOFT_COM 0 x0E
#define SOFT_BAR_SMB_FLAG 0 x00000001
#define SOFT_BAR_GPIO_FLAG 0 x00000002
#define SOFT_BAR_MFGPT_FLAG 0 x00000004
#define SOFT_BAR_IRQ_FLAG 0 x00000008
#define SOFT_BAR_PMS_FLAG 0 x00000010
#define SOFT_BAR_ACPI_FLAG 0 x00000020
#define SOFT_BAR_IDE_FLAG 0 x00000400
#define SOFT_BAR_ACC_FLAG 0 x00000800
#define SOFT_BAR_OHCI_FLAG 0 x00001000
#define SOFT_BAR_EHCI_FLAG 0 x00002000
#define GLCP_RSVD2 0 x0F
#define GLCP_CLK_OFF 0 x10
#define GLCP_CLK_ACTIVE 0 x11
#define GLCP_CLK_DISABLE 0 x12
#define GLCP_CLK4ACK 0 x13
#define GLCP_SYS_RST 0 x14
#define GLCP_RSVD3 0 x15
#define GLCP_DBG_CLK_CTRL 0 x16
#define GLCP_CHIP_REV_ID 0 x17
/* PIC */
#define PIC_YSEL_LOW 0 x20
#define PIC_YSEL_LOW_USB_SHIFT 8
#define PIC_YSEL_LOW_ACC_SHIFT 16
#define PIC_YSEL_LOW_FLASH_SHIFT 24
#define PIC_YSEL_HIGH 0 x21
#define PIC_ZSEL_LOW 0 x22
#define PIC_ZSEL_HIGH 0 x23
#define PIC_IRQM_PRIM 0 x24
#define PIC_IRQM_LPC 0 x25
#define PIC_XIRR_STS_LOW 0 x26
#define PIC_XIRR_STS_HIGH 0 x27
#define PCI_SHDW 0 x34
/*
* DIVIL STANDARD
*/
#define DIVIL_CAP 0 x00
#define DIVIL_CONFIG 0 x01
#define DIVIL_SMI 0 x02
#define DIVIL_ERROR 0 x03
#define DIVIL_PM 0 x04
#define DIVIL_DIAG 0 x05
/*
* DIVIL SPEC.
*/
#define DIVIL_LBAR_IRQ 0 x08
#define DIVIL_LBAR_KEL 0 x09
#define DIVIL_LBAR_SMB 0 x0B
#define DIVIL_LBAR_GPIO 0 x0C
#define DIVIL_LBAR_MFGPT 0 x0D
#define DIVIL_LBAR_ACPI 0 x0E
#define DIVIL_LBAR_PMS 0 x0F
#define DIVIL_LEG_IO 0 x14
#define DIVIL_BALL_OPTS 0 x15
#define DIVIL_SOFT_IRQ 0 x16
#define DIVIL_SOFT_RESET 0 x17
/* MFGPT */
#define MFGPT_IRQ 0 x28
/*
* IDE STANDARD
*/
#define IDE_CAP 0 x00
#define IDE_CONFIG 0 x01
#define IDE_SMI 0 x02
#define IDE_ERROR 0 x03
#define IDE_PM 0 x04
#define IDE_DIAG 0 x05
/*
* IDE SPEC.
*/
#define IDE_IO_BAR 0 x08
#define IDE_CFG 0 x10
#define IDE_DTC 0 x12
#define IDE_CAST 0 x13
#define IDE_ETC 0 x14
#define IDE_INTERNAL_PM 0 x15
/*
* ACC STANDARD
*/
#define ACC_CAP 0 x00
#define ACC_CONFIG 0 x01
#define ACC_SMI 0 x02
#define ACC_ERROR 0 x03
#define ACC_PM 0 x04
#define ACC_DIAG 0 x05
/*
* USB STANDARD
*/
#define USB_CAP 0 x00
#define USB_CONFIG 0 x01
#define USB_SMI 0 x02
#define USB_ERROR 0 x03
#define USB_PM 0 x04
#define USB_DIAG 0 x05
/*
* USB SPEC.
*/
#define USB_OHCI 0 x08
#define USB_EHCI 0 x09
/****************** NATIVE ***************************/
/* GPIO : I/O SPACE; REG : 32BITS */
#define GPIOL_OUT_VAL 0 x00
#define GPIOL_OUT_EN 0 x04
#endif /* _CS5536_H */
Messung V0.5 in Prozent C=90 H=87 G=88
¤ Dauer der Verarbeitung: 0.9 Sekunden
(vorverarbeitet am 2026-06-05)
¤
*© Formatika GbR, Deutschland