[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: PowerMac G5 fans run out of control with kernel4.17.0-3-powerpc64but not with 4.16.0-1-powerpc64



On 08/27/2018 09:53 PM, Rick Thomas wrote:
I can try just about anything on my G5.  It exists strictly for testing, right now.

If you can point me to a .deb with the patch that I can install, I’ll be happy to test it.


That code seems to be a G4 related item :


/*
 *   Creation Date: <2003/03/14 20:54:13 samuel>
 *   Time-stamp: <2004/03/20 14:20:59 samuel>
 *
 *      <therm_windtunnel.c>
 *
 *      The G4 "windtunnel" has a single fan controlled by an
 *      ADM1030 fan controller and a DS1775 thermostat.
 *
 *      The fan controller is equipped with a temperature sensor
 *      which measures the case temperature. The DS1775 sensor
 *      measures the CPU temperature. This driver tunes the
 *      behavior of the fan. It is based upon empirical observations
 *      of the 'AppleFan' driver under Mac OS X.
 *
 *      WARNING: This driver has only been testen on Apple's
 *      1.25 MHz Dual G4 (March 03). It is tuned for a CPU
 *      temperature around 57 C.
 *
 *   Copyright (C) 2003, 2004 Samuel Rydh (samuel@ibrium.se)
 *
 *   Loosely based upon 'thermostat.c' written by Benjamin Herrenschmidt
 *
 *   This program is free software; you can redistribute it and/or
 *   modify it under the terms of the GNU General Public License
 *   as published by the Free Software Foundation
 *
 */


However .. sure .. give it a whirl ( pun intended )

nix$ diff -c ./drivers/macintosh/therm_windtunnel.c_orig ./drivers/macintosh/therm_windtunnel.c
*** ./drivers/macintosh/therm_windtunnel.c_orig Fri Aug 24 11:04:51 2018
--- ./drivers/macintosh/therm_windtunnel.c      Tue Aug 28 02:48:12 2018
***************
*** 25,30 ****
--- 25,31 ----
   *   modify it under the terms of the GNU General Public License
   *   as published by the Free Software Foundation
   *
+ * Modified manually per https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/drivers/macintosh?id=3e7bed52719de4b5b5fb900869e293eae0bc3f3e
   */

  #include <linux/types.h>
***************
*** 432,438 ****
        .driver = {
                .name   = "therm_windtunnel",
        },
-       .attach_adapter = do_attach,
        .probe          = do_probe,
        .remove         = do_remove,
        .id_table       = therm_windtunnel_id,
--- 433,438 ----
***************
*** 445,451 ****

  static int therm_of_probe(struct platform_device *dev)
  {
!       return i2c_add_driver( &g4fan_driver );
  }

  static int
--- 445,473 ----

  static int therm_of_probe(struct platform_device *dev)
  {
!       struct i2c_adapter *adap;
!       int ret, i = 0;
!
!       adap = i2c_get_adapter(0);
!       if (!adap)
!               return -EPROBE_DEFER;
!
!       ret = i2c_add_driver(&g4fan_driver);
!       if (ret) {
!               i2c_put_adapter(adap);
!               return ret;
!       }
!
!       /* We assume Macs have consecutive I2C bus numbers starting at 0 */
!       while (adap) {
!               do_attach(adap);
!               if (x.running)
!                       return 0;
!               i2c_put_adapter(adap);
!               adap = i2c_get_adapter(++i);
!       }
!
!       return -ENODEV;
  }

  static int
nix$

done.

root@nix:~#
root@nix:~# uname -a
Linux nix 4.18.5-genunix #1 SMP Tue Aug 28 02:57:19 GMT 2018 ppc64 GNU/Linux
root@nix:~# uptime
 19:42:16 up 18 min,  1 user,  load average: 1.04, 0.91, 0.58
root@nix:~#


root@nix:~# lsmod
Module                  Size  Used by
snd_aoa_codec_onyx     17659  2
snd_aoa_fabric_layout    16949  0
snd_aoa                24290  2 snd_aoa_codec_onyx,snd_aoa_fabric_layout
tg3                   223958  0
snd_aoa_i2sbus         30915  1
sil164                  8432  1
libphy                 82220  1 tg3
nouveau              2598721  1
snd_aoa_soundbus        7405  2 snd_aoa_fabric_layout,snd_aoa_i2sbus
ohci_pci                8329  0
snd_pcm               142136  1 snd_aoa_i2sbus
ttm                   116161  1 nouveau
snd_timer              40439  1 snd_pcm
drm_kms_helper        206688  1 nouveau
ohci_hcd               82586  1 ohci_pci
ehci_pci                8066  0
drm                   544653  5 sil164,drm_kms_helper,ttm,nouveau
sr_mod                 26416  0
ehci_hcd              114491  1 ehci_pci
firewire_ohci          57861  0
snd 117617 6 snd_aoa_codec_onyx,snd_aoa_fabric_layout,snd_aoa_i2sbus,snd_timer,snd_pcm,snd_aoa
drm_panel_orientation_quirks     1490  1 drm
fb_sys_fops             2532  1 drm_kms_helper
sysimgblt               3136  1 drm_kms_helper
syscopyarea             4287  1 drm_kms_helper
sysfillrect             5743  1 drm_kms_helper
cdrom                  65768  1 sr_mod
firewire_core          94863  1 firewire_ohci
usbcore               345734  4 ohci_hcd,ehci_pci,ehci_hcd,ohci_pci
soundcore               9806  1 snd
sg                     42015  0
crc_itu_t               2108  1 firewire_core
i2c_algo_bit            9692  1 nouveau
rack_meter             12724  0
ip_tables              28402  0
x_tables               39145  1 ip_tables
autofs4                57183  2
ext4                  892199  1
crc32c_generic          3911  1
crc16                   2104  1 ext4
mbcache                 9895  1 ext4
fscrypto               33509  1 ext4
jbd2                  144372  1 ext4
windfarm_cpufreq_clamp     3725  1
windfarm_max6690_sensor     4463  1
windfarm_lm75_sensor     4957  1
windfarm_smu_sensors     7991  1
windfarm_smu_controls     8646  8
windfarm_pm112         15016  0
windfarm_smu_sat        8232  9 windfarm_pm112
windfarm_pid            3379  1 windfarm_pm112
windfarm_core 11943 7 windfarm_cpufreq_clamp,windfarm_smu_controls,windfarm_max6690_sensor,windfarm_smu_sat,windfarm_smu_sensors,windfarm_lm75_sensor,windfarm_pm112
sd_mod                 56106  2
ata_generic             5680  0
sata_svw               10587  1
root@nix:~#

I have a 4K pagesize in place :

root@nix:~# /home/dclarke/pgm/C/pagesize/pagesize
-------------------------------------------------------------
        system name = Linux
          node name = nix
            release = 4.18.5-genunix
            version = #1 SMP Tue Aug 28 02:57:19 GMT 2018
            machine = ppc64
-------------------------------------------------------------
         sysconf_phys = 2023423
       sysconf_avphys = 1964837
                 pgsz = 4096
                 phys = 2023423
               avphys = 1964837
Total physical memory may be   8287940608 bytes.
     Available memory may be   8047972352 bytes.
get_nprocs() claims 4 processors are available.
get_nprocs_conf() claims 4 processors are configured.
sysconf(_SC_NPROCESSORS_ONLN) reports 4 processors are available.
sysconf(_SC_NPROCESSORS_CONF) reports 4 processors are configured.
root@nix:~#

root@nix:~# grep -v "^#" /etc/apt/sources.list
deb http://ftp.ports.debian.org/debian-ports/ unstable main
deb http://ftp.ports.debian.org/debian-ports/ unreleased main
deb-src http://ftp.debian.org/debian/ unstable main

root@nix:~# apt install firefox -t=experimental
Reading package lists... Done
E: The value 'experimental' is invalid for APT::Default-Release as such a release is not available in the sources
root@nix:~#

OKay .. so now what ?  Somebody wants to ssh into this thing ?

Dennis


Reply to: