From: Rafael J. Wysocki rafael.j.wyso...@intel.com
If tick_broadcast_enter() fails in cpuidle_enter_state(),
try to find another idle state to enter instead of invoking
default_idle_call() immediately and returning -EBUSY which
should increase the chances of saving some energy in those
cases.
On Saturday, May 09, 2015 10:33:05 PM Rafael J. Wysocki wrote:
On Saturday, May 09, 2015 10:11:41 PM Rafael J. Wysocki wrote:
On Saturday, May 09, 2015 11:19:16 AM Preeti U Murthy wrote:
Hi Rafael,
On 05/08/2015 07:48 PM, Rafael J. Wysocki wrote:
[cut]
+ /* Take
From: Rafael J. Wysocki rafael.j.wyso...@intel.com
The check of the cpuidle_enter() return value against -EBUSY
made in call_cpuidle() will not be necessary any more if
cpuidle_enter_state() calls default_idle_call() directly when it
is about to return -EBUSY, so make that happen and eliminate
From: Rafael J. Wysocki rafael.j.wyso...@intel.com
Introduce a wrapper function around idle_set_state() called
sched_idle_set_state() that will pass this_rq() to it as the
first argument and make cpuidle_enter_state() call the new
function before and after entering the target state.
At the same
On Saturday, May 09, 2015 10:11:41 PM Rafael J. Wysocki wrote:
On Saturday, May 09, 2015 11:19:16 AM Preeti U Murthy wrote:
Hi Rafael,
On 05/08/2015 07:48 PM, Rafael J. Wysocki wrote:
[cut]
+/* Take note of the planned idle state. */
+
On 05/01/2015 04:02 PM, Gavin Shan wrote:
We're having the hardware or enforced (on P7IOC) limitation: M64
I would think if it is enforced, then it is enforced by hardware but you
say hardware OR enforced :)
segment#x can only be assigned to PE#x. IO and M32 segment can be
mapped to
On 05/01/2015 04:02 PM, Gavin Shan wrote:
The original code doesn't support releasing PEs dynamically, meaning
that PE and the associated resources (IO, M32, M64 and DMA) can't
be released when unplugging a PCI adapter from one hotpluggable slot.
The patch takes object oriented methodology,
On 05/01/2015 04:02 PM, Gavin Shan wrote:
Currently, the PEs and their associated resources are assigned
in ppc_md.pcibios_fixup(). The function is called for once after
PCI probing and resources assignment are finished. Obviously, it's
not hotplug friendly. The patch creates PEs dynamically by
On 05/01/2015 04:02 PM, Gavin Shan wrote:
Nobody is using the this function. The patch drops it.
Signed-off-by: Gavin Shan gws...@linux.vnet.ibm.com
Yay! :)
I would move this patchset along with other mechanical changes to the
beginning of the patchset.
Reviewed-by: Alexey Kardashevskiy
On 05/01/2015 04:02 PM, Gavin Shan wrote:
The PHB's IO or M32 window is divided evenly to segments, each of
them can be mapped to arbitrary PE# by IODT or M32DT. Current code
figures out the consumed IO and M32 segments by one particular PE
from the windows of the PE's upstream bridge. It won't
On 05/01/2015 04:03 PM, Gavin Shan wrote:
The patch intends to add standalone driver to support PCI hotplug
for PowerPC PowerNV platform, which runs on top of skiboot firmware.
The firmware identified hotpluggable slots and marked their device
tree node with proper ibm,slot-pluggable and
On 05/01/2015 04:02 PM, Gavin Shan wrote:
Function pnv_pci_reset_secondary_bus() is used to reset specified
PCI bus, which is leaded by root complex or PCI bridge. That means
the function shouldn't be called on PCI root bus and the patch
removes the logic for that case.
Also, some adapters
On 05/01/2015 04:02 PM, Gavin Shan wrote:
For PowerNV platform, running on top of skiboot, all PE level reset
should be routed to firmware if the bridge of the PE primary bus has
device-node property ibm,reset-by-firmware. Otherwise, the kernel
has to issue hot reset on PE's primary bus despite
On 05/01/2015 04:03 PM, Gavin Shan wrote:
We might not get some PCI slot information (e.g. power status)
immediately by OPAL API. Instead, opal_pci_poll() need to be called
for the required information.
The patch introduces pnv_pci_poll(), which bases on original
pnv_eeh_poll(), to cover the
On 05/01/2015 04:03 PM, Gavin Shan wrote:
The pci_dn instances are allocated from memblock or bootmem when
creating PCI controller (hoses) in setup_arch(). The PCI hotplug,
which will be supported by proceeding patches, will release PCI
device nodes and their corresponding pci_dn on unplugging
On 05/01/2015 04:03 PM, Gavin Shan wrote:
The patch exports 3 functions, which base on corresponding OPAL
APIs to get or set PCI slot status. Those functions are going to
be used by PCI hotplug module in subsequent patches:
pnv_pci_get_presence_status() opal_pci_get_presence_status()
On 05/01/2015 04:03 PM, Gavin Shan wrote:
The eeh_dev is always created based on pci_dn, but with initcall
supported by core_initcall_sync(). The patch creates eeh_dev
when pci_dn is created, indicating they have same life cycle.
Signed-off-by: Gavin Shan gws...@linux.vnet.ibm.com
---
Commit 3a3dd0186f619b (i2c/powermac: Improve detection of devices from
device-tree) added a codec device instantiation workaround
unconditionally although it is only needed for onyx. Do it conditionally
since keywest has its own codec instantiation in the sound drivers.
Thanks must go to
As we now have deferred probing, we can use a custom mechanism and
finally get rid of this legacy interface from the i2c core.
Signed-off-by: Wolfram Sang w...@the-dreams.de
Tested-by: Dan DeVoto dand1...@yahoo.com
Tested-by: Mark Elliott txliteb...@gmail.com
---
Changes since last time: Added
On Saturday, May 09, 2015 11:19:16 AM Preeti U Murthy wrote:
Hi Rafael,
On 05/08/2015 07:48 PM, Rafael J. Wysocki wrote:
+/*
+ * find_tick_valid_state - select a state where tick does not stop
+ * @dev: cpuidle device for this cpu
+ * @drv: cpuidle driver for this cpu
+ */
+static
On Saturday, May 09, 2015 08:46:20 PM Rafael J. Wysocki wrote:
On Saturday, May 09, 2015 11:19:16 AM Preeti U Murthy wrote:
Hi Rafael,
On 05/08/2015 07:48 PM, Rafael J. Wysocki wrote:
+/*
+ * find_tick_valid_state - select a state where tick does not stop
+ * @dev: cpuidle device
On Saturday, May 09, 2015 11:19:16 AM Preeti U Murthy wrote:
Hi Rafael,
On 05/08/2015 07:48 PM, Rafael J. Wysocki wrote:
[cut]
+ /* Take note of the planned idle state. */
+ idle_set_state(smp_processor_id(), target_state);
And I wouldn't do this either.
The behavior here
22 matches
Mail list logo