[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAHKzcEPuwZFei+6RehMn1yzRD45k_xfMgGC2Ma4eeR9y5rnFow@mail.gmail.com>
Date: Thu, 14 Jan 2021 18:04:18 +0100
From: Waldemar Rymarkiewicz <waldemar.rymarkiewicz@...il.com>
To: linux-kernel@...r.kernel.org, linux-pci@...r.kernel.org
Subject: Hook up a PCIe device into the thermal framework
Hi,
I've been looking for a nice way to hook up a PCIe device into the
thermal framework recently and I want to confront my findings with the
right people here.
I have a PCIe wireless adapter connected to PCI-to-PCI bridge which in
turns is connected to a PCI root complex (RC). I want to define a
thermal zone over the wireless adapter in my system and control it
over DT (thermal-zones{...}) instead of keeping thermal zone
definition statically in the PCI device driver (as it's done in the
iwlwifi wireless driver or the mlxsw ethernet driver for example)
The issue I have faced is that a PCI device has no DT node
(pci_dev.dev.of_node) which is reasonable as this is by design
discoverable device. This, however, prevents me to register the PCI
device as a thermal sensor (dev.of_node is required by thermal).
As far as we consider a fixed PCI topology eg. a SoC internal design I
could put something like this in DT (used by ath11k/ath10k btw).
pci@... {
...
pci-bridge@... {
...
wifi:wifi@0 {
reg = <0x0 0 0 0 0>;
#thermal-sensor-cells = <0>;
};
};
};
but in case we consider an arbitrary location of the device in PCI
topology that DT modification will not work and still I have no device
node.
Is there any preferred solution in the Linux kernel for this kind of use-case?
All the ideas appreciated.
Thanks,
/Waldek
Powered by blists - more mailing lists