<feed xmlns='http://www.w3.org/2005/Atom'>
<title>BMC/Intel-BMC/linux.git/arch/powerpc/platforms/pseries/firmware.c, branch dev</title>
<subtitle>Intel OpenBMC Linux kernel source tree (mirror)</subtitle>
<id>https://git.radix-linux.su/BMC/Intel-BMC/linux.git/atom?h=dev</id>
<link rel='self' href='https://git.radix-linux.su/BMC/Intel-BMC/linux.git/atom?h=dev'/>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/BMC/Intel-BMC/linux.git/'/>
<updated>2013-04-26T06:08:23+00:00</updated>
<entry>
<title>powerpc/pseries: Update CPU maps when device tree is updated</title>
<updated>2013-04-26T06:08:23+00:00</updated>
<author>
<name>Jesse Larrew</name>
<email>jlarrew@linux.vnet.ibm.com</email>
</author>
<published>2013-04-24T06:00:35+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/BMC/Intel-BMC/linux.git/commit/?id=5d88aa85c00bb4026dd986430dc496effc637d42'/>
<id>urn:sha1:5d88aa85c00bb4026dd986430dc496effc637d42</id>
<content type='text'>
Platform events such as partition migration or the new PRRN firmware
feature can cause the NUMA characteristics of a CPU to change, and these
changes will be reflected in the device tree nodes for the affected
CPUs.

This patch registers a handler for Open Firmware device tree updates
and reconfigures the CPU and node maps whenever the associativity
changes. Currently, this is accomplished by marking the affected CPUs in
the cpu_associativity_changes_mask and allowing
arch_update_cpu_topology() to retrieve the new associativity information
using hcall_vphn().

Protecting the NUMA cpu maps from concurrent access during an update
operation will be addressed in a subsequent patch in this series.

Signed-off-by: Nathan Fontenot &lt;nfont@linux.vnet.ibm.com&gt;
Signed-off-by: Benjamin Herrenschmidt &lt;benh@kernel.crashing.org&gt;
</content>
</entry>
<entry>
<title>powerpc/pseries: Update firmware_has_feature() to check architecture vector 5 bits</title>
<updated>2013-04-26T06:08:22+00:00</updated>
<author>
<name>Nathan Fontenot</name>
<email>nfont@linux.vnet.ibm.com</email>
</author>
<published>2013-04-24T05:57:18+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/BMC/Intel-BMC/linux.git/commit/?id=f0ff7eb483b4c9b24b83aa682c4f42db256f9bdb'/>
<id>urn:sha1:f0ff7eb483b4c9b24b83aa682c4f42db256f9bdb</id>
<content type='text'>
The firmware_has_feature() function makes it easy to check for supported
features of the hypervisor. This patch extends the capability of
firmware_has_feature() to include checking for specified bits
in vector 5 of the architecture vector as reported in the device tree.

As part of this the #defines used for the architecture vector are re-defined
such that each option has the index into vector 5 and the feature bit encoded
into it. This makes checking for architecture bits when initiating data
for firmware_has_feature much easier.

Signed-off-by: Nathan Fontenot &lt;nfont@linux.vnet.ibm.com&gt;
Signed-off-by: Benjamin Herrenschmidt &lt;benh@kernel.crashing.org&gt;
</content>
</entry>
<entry>
<title>powerpc/pseries: Use ARRAY_SIZE to iterate over firmware_features_table array</title>
<updated>2013-04-26T06:08:21+00:00</updated>
<author>
<name>Nathan Fontenot</name>
<email>nfont@linux.vnet.ibm.com</email>
</author>
<published>2013-04-24T05:55:08+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/BMC/Intel-BMC/linux.git/commit/?id=43c0ea60537d9423f0f1b5c14b0cd0a0b4af5c81'/>
<id>urn:sha1:43c0ea60537d9423f0f1b5c14b0cd0a0b4af5c81</id>
<content type='text'>
When iterating over the entries in firmware_features_table we only need
to go over the actual number of entries in the array instead of declaring
it to be bigger and checking to make sure there is a valid entry in every
slot.

This patch removes the FIRMWARE_MAX_FEATURES #define and replaces the
array looping with the use of ARRAY_SIZE().

Signed-off-by: Nathan Fontenot &lt;nfont@linux.vnet.ibm.com&gt;
Signed-off-by: Benjamin Herrenschmidt &lt;benh@kernel.crashing.org&gt;
</content>
</entry>
<entry>
<title>powerpc/pseries: Cleanup best_energy_hcall detection</title>
<updated>2013-01-10T04:08:37+00:00</updated>
<author>
<name>Michael Neuling</name>
<email>mikey@neuling.org</email>
</author>
<published>2012-11-06T14:49:16+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/BMC/Intel-BMC/linux.git/commit/?id=0388c79c99ccb43f711af57d2e14fcd6a5f45a06'/>
<id>urn:sha1:0388c79c99ccb43f711af57d2e14fcd6a5f45a06</id>
<content type='text'>
Currently we search for the best_energy hcall using a custom function.  Move
this to using the firmware_feature_table.

Signed-off-by: Michael Neuling &lt;mikey@neuling.org&gt;
cc: Vaidyanathan Srinivasan &lt;svaidy@linux.vnet.ibm.com&gt;
cc: Linux PPC dev &lt;linuxppc-dev@ozlabs.org&gt;
Signed-off-by: Benjamin Herrenschmidt &lt;benh@kernel.crashing.org&gt;
</content>
</entry>
<entry>
<title>powerpc/pseries: Allow firmware features to match partial strings</title>
<updated>2013-01-10T03:43:46+00:00</updated>
<author>
<name>Michael Neuling</name>
<email>mikey@neuling.org</email>
</author>
<published>2012-11-06T14:49:15+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/BMC/Intel-BMC/linux.git/commit/?id=2f1d4ea7bcd96d3796eba4087388bdb37322ee7a'/>
<id>urn:sha1:2f1d4ea7bcd96d3796eba4087388bdb37322ee7a</id>
<content type='text'>
This allows firmware_features_table names to add a '*' at the end so that only
partial strings are matched.

When a '*' is added, only upto the '*' is matched when setting firmware feature
bits.

This is useful for the matching best energy feature.

Signed-off-by: Michael Neuling &lt;mikey@neuling.org&gt;
cc: Vaidyanathan Srinivasan &lt;svaidy@linux.vnet.ibm.com&gt;
cc: Linux PPC dev &lt;linuxppc-dev@ozlabs.org&gt;
Reviewed-by: Stephen Rothwell &lt;sfr@canb.auug.org.au&gt;
Signed-off-by: Benjamin Herrenschmidt &lt;benh@kernel.crashing.org&gt;
</content>
</entry>
<entry>
<title>powerpc: Add set_mode hcall</title>
<updated>2012-11-15T04:08:06+00:00</updated>
<author>
<name>Ian Munsie</name>
<email>imunsie@au1.ibm.com</email>
</author>
<published>2012-11-06T05:15:17+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/BMC/Intel-BMC/linux.git/commit/?id=d8f48ecc0e81cbc52a8eac907e02916d98dbfb5a'/>
<id>urn:sha1:d8f48ecc0e81cbc52a8eac907e02916d98dbfb5a</id>
<content type='text'>
This new hcall in POWER8 is used to set various resource mode registers.
eg. it can set address translation mode on interrupt (note: partition wide
scope)

Signed-off-by: Ian Munsie &lt;imunsie@au1.ibm.com&gt;
Signed-off-by: Michael Neuling &lt;mikey@neuling.org&gt;
Signed-off-by: Benjamin Herrenschmidt &lt;benh@kernel.crashing.org&gt;
</content>
</entry>
<entry>
<title>powerpc: Add VPHN firmware feature</title>
<updated>2010-11-29T04:48:22+00:00</updated>
<author>
<name>Jesse Larrew</name>
<email>jlarrew@linux.vnet.ibm.com</email>
</author>
<published>2010-11-09T13:24:48+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/BMC/Intel-BMC/linux.git/commit/?id=36f567b42932a81866bf723779703ecc84cf714b'/>
<id>urn:sha1:36f567b42932a81866bf723779703ecc84cf714b</id>
<content type='text'>
This simple patch adds the firmware feature for VPHN to the firmware
features bitmask.

Signed-off-by: Jesse Larrew &lt;jlarrew@linux.vnet.ibm.com&gt;
Signed-off-by: Benjamin Herrenschmidt &lt;benh@kernel.crashing.org&gt;
</content>
</entry>
<entry>
<title>powerpc: Fix hypervisor TLB batching</title>
<updated>2009-10-14T05:58:37+00:00</updated>
<author>
<name>Anton Blanchard</name>
<email>anton@samba.org</email>
</author>
<published>2009-10-11T21:47:34+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/BMC/Intel-BMC/linux.git/commit/?id=b6dcde5c74d1cbf16da37202a14fa187dce6e4c0'/>
<id>urn:sha1:b6dcde5c74d1cbf16da37202a14fa187dce6e4c0</id>
<content type='text'>
Profiling of a page fault scalability microbenchmark shows flush_hash_range
is not calling the batch hpte invalidate hcall (H_BULK_REMOVE).

It turns out we have a duplicate firmware feature for hcall-bulk and the
current setup code stops after finding the first match. This meant we never
batch and always do individual invalidates.

The patch below removes the duplicate and shifts FW_FEATURE_CMO to close
the gap. With the patch applied the single threaded page fault rate improves
from 217169 to 238755 per second on a POWER5 test box, a 10% improvement.

Signed-off-by: Anton Blanchard &lt;anton@samba.org&gt;
Signed-off-by: Benjamin Herrenschmidt &lt;benh@kernel.crashing.org&gt;
</content>
</entry>
<entry>
<title>[POWERPC] pseries/firmware.c should include pseries/pseries.h</title>
<updated>2008-05-14T12:32:00+00:00</updated>
<author>
<name>Michael Ellerman</name>
<email>michael@ellerman.id.au</email>
</author>
<published>2008-05-08T04:27:21+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/BMC/Intel-BMC/linux.git/commit/?id=3ff1999b2c84e1486e80fbd3ca12b1663dc3408b'/>
<id>urn:sha1:3ff1999b2c84e1486e80fbd3ca12b1663dc3408b</id>
<content type='text'>
The declaration for fw_feature_init() is in pseries.h and
implemented in firmware.c, so the latter should include the
former.

Signed-off-by: Michael Ellerman &lt;michael@ellerman.id.au&gt;
Signed-off-by: Paul Mackerras &lt;paulus@samba.org&gt;
</content>
</entry>
<entry>
<title>[POWERPC] Add CONFIG_PPC_PSERIES_DEBUG to enable debugging for platforms/pseries</title>
<updated>2008-04-24T11:08:12+00:00</updated>
<author>
<name>Michael Ellerman</name>
<email>michael@ellerman.id.au</email>
</author>
<published>2008-04-24T05:13:21+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/BMC/Intel-BMC/linux.git/commit/?id=36f8a2c4c61e3559a95190e457b431c6900859b4'/>
<id>urn:sha1:36f8a2c4c61e3559a95190e457b431c6900859b4</id>
<content type='text'>
Add a DEBUG config setting which turns on all (most) of the debugging
under platforms/pseries.

To have this take effect we need to remove all the #undef DEBUG's, in
various files. We leave the #undef DEBUG in platforms/pseries/lpar.c,
as this enables debugging printks from the low-level hash table routines,
and tends to make your system unusable. If you want those enabled you
still have to turn them on by hand.

Also some of the RAS code has a DEBUG block which causes a functional
change, so I've keyed this off a different (non-existant) debug #define.

This is only enabled if you have PPC_EARLY_DEBUG enabled also.

Signed-off-by: Michael Ellerman &lt;michael@ellerman.id.au&gt;
Signed-off-by: Paul Mackerras &lt;paulus@samba.org&gt;
</content>
</entry>
</feed>
