Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 15 Feb 2008 14:46:50 GMT
From:      "Y.Okabe" <be_works_us@yahoo.com>
To:        freebsd-gnats-submit@FreeBSD.org
Subject:   i386/120714: viapm driver doesn't work on VIA VT8237 chip
Message-ID:  <200802151446.m1FEko4p011103@www.freebsd.org>
Resent-Message-ID: <200802151450.m1FEo5mT001414@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help

>Number:         120714
>Category:       i386
>Synopsis:       viapm driver doesn't work on VIA VT8237 chip
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-i386
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Fri Feb 15 14:50:05 UTC 2008
>Closed-Date:
>Last-Modified:
>Originator:     Y.Okabe
>Release:        7.0-RC2
>Organization:
n/a
>Environment:
FreeBSD 7.0-PRERELEASE

VIA C7 1.5Ghz + CN700 + VT8237R



>Description:
I configure and build kernel with enable viapm driver.

but, kernrl could not detect the VIA VT8237R southbridge on my motherboad(GA-C7V7).

The OpenBSD current viapm.c that support VT8237(same as VT8233).

>How-To-Repeat:
install 7.0 RC2
>Fix:

patched kernel's dmesg >>
viapropm0: <VIA VT8233/VT8235/VT8237/CX700 Power Management Unit> port 0x500-0x5
0f at device 17.0 on pci0
smbus0: <System Management Bus> on viapropm0
smb0: <SMBus generic I/O> on smbus0
isa0: <ISA bus> on viapropm0


Add VT8237 pci-deviceID to viapm.c
(and shrink code very little...)


*** /usr/src/sys/pci/viapm.c.org    Fri Feb 15 22:00:49 2008
--- /usr/src/sys/pci/viapm.c        Fri Feb 15 22:10:29 2008
*************** static int viapm_debug = 0;
*** 70,75 ****
--- 70,76 ----
  #define VIA_8233_PMU_ID               0x30741106
  #define       VIA_8233A_PMU_ID        0x31471106
  #define       VIA_8235_PMU_ID         0x31771106
+ #define VIA_8237_PMU_ID               0x32271106
  #define       VIA_CX700_PMU_ID        0x83241106

  #define VIAPM_INB(port) \
*************** viapm_pro_probe(device_t dev)
*** 276,298 ****

        case VIA_8233_PMU_ID:
        case VIA_8233A_PMU_ID:
-               desc = "VIA VT8233 Power Management Unit";
-               viapm->type = VIAPM_TYP_UNKNOWN;
-               base_cfgreg = VIAPM_8233_BASE;
-               goto viapro;
-
        case VIA_8235_PMU_ID:
!               desc = "VIA VT8235 Power Management Unit";
!               viapm->type = VIAPM_TYP_UNKNOWN;
!               base_cfgreg = VIAPM_8233_BASE;
!               goto viapro;
!
        case VIA_CX700_PMU_ID:
!               desc = "VIA CX700 Power Management Unit";
!               viapm->type = VIAPM_TYP_UNKNOWN;
                base_cfgreg = VIAPM_8233_BASE;
                goto viapro;

        viapro:

  #ifdef VIAPM_BASE_ADDR
--- 277,291 ----

        case VIA_8233_PMU_ID:
        case VIA_8233A_PMU_ID:
        case VIA_8235_PMU_ID:
!       case VIA_8237_PMU_ID:
        case VIA_CX700_PMU_ID:
!               desc = "VIA VT8233/VT8235/VT8237/CX700 Power Management Unit";
!               viapm->type = VIAPM_TYP_8233;
                base_cfgreg = VIAPM_8233_BASE;
                goto viapro;

+
        viapro:

  #ifdef VIAPM_BASE_ADDR





>Release-Note:
>Audit-Trail:
>Unformatted:



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200802151446.m1FEko4p011103>