Пример #1
0
        public static ushort smbusWordData(byte address, byte offset)
        {
            Monitor.Enter(sLock);
            if (Ring0.IsOpen == false)
            {
                Monitor.Exit(sLock);
                return(0);
            }

            ushort data = 0;

            try
            {
                if (sCpuType == CPU_TYPE.AMD)
                {
                    data = SMbusAmd.getWord(address, offset);
                }
                else if (sCpuType == CPU_TYPE.INTEL)
                {
                    data = SMBusIntel.getWord(address, offset);
                }
                Monitor.Exit(sLock);
                return(data);
            }
            catch { }
            Monitor.Exit(sLock);
            return(0);
        }
Пример #2
0
        public static byte smbusDetect(byte address)
        {
            Monitor.Enter(sLock);
            if (Ring0.IsOpen == false)
            {
                Monitor.Exit(sLock);
                return(0x00);
            }

            byte addr = 0;

            try
            {
                if (sCpuType == CPU_TYPE.AMD)
                {
                    addr = SMbusAmd.smbDetect(address);
                }
                else if (sCpuType == CPU_TYPE.INTEL)
                {
                    addr = SMBusIntel.smbDetect(address);
                }
                Monitor.Exit(sLock);
                return(addr);
            }
            catch { }
            Monitor.Exit(sLock);
            return(0x00);
        }