12297: Difference between revisions

From OLPC
Jump to navigation Jump to search
No edit summary
 
(7 intermediate revisions by the same user not shown)
Line 1: Line 1:
OLPC has begun enabling the second processor core in the XO-4 laptops.
OLPC has enabled the second processor core in the XO-4 laptops.


== Problem ==
== Problem ==
Line 9: Line 9:
XO-4 only:
XO-4 only:


Upgrade to [[14.1.0]] once it is released
Upgrade to [[13.2.6]].


== Workaround ==
== Workaround ==
Line 17: Line 17:
On unsecure laptops running [[13.2.0]], [[13.2.1]] and [[13.2.2]], upgrade the kernel and the firmware at the same time. The exact steps are:
On unsecure laptops running [[13.2.0]], [[13.2.1]] and [[13.2.2]], upgrade the kernel and the firmware at the same time. The exact steps are:


* download the [http://rpmdropbox.laptop.org/f20-xo4/kernel-3.5.7_xo4-20150108.2115.olpc.b2c8f99.armv7hl.rpm 3.5.7_xo4-20150108.2115.olpc.b2c8f99] kernel package,
* download the [http://rpmdropbox.laptop.org/f18-xo4/kernel-3.5.7_xo4-20150610.0359.olpc.97336f6.armv7hl.rpm kernel-3.5.7_xo4-20150610.0359.olpc.97336f6.armv7hl.rpm] kernel package,
* download the [http://dev.laptop.org/pub/firmware/q7c02/q7c02.rom q7c02.rom] new firmware,
* download the [http://dev.laptop.org/pub/firmware/q7c05/q7c05.rom q7c05.rom] new firmware,
* copy both to a USB drive,
* copy both to a USB drive,
* add battery and power cable, and wait for the laptop to finish charging,
* add battery and power cable, and wait for the laptop to finish charging,
* upgrade the kernel,
* upgrade the kernel,
sudo rpm -U kernel-3.5.7_xo4-20150108.2115.olpc.b2c8f99.armv7hl.rpm
sudo rpm -U kernel-3.5.7_xo4-20150610.0359.olpc.97336f6.armv7hl.rpm
* shutdown,
* shutdown,
sudo poweroff
sudo poweroff
* upgrade the firmware,
* upgrade the firmware,
ok flash u:\q7c02.rom
ok flash u:\q7c05.rom
* allow the laptop to boot.
* allow the laptop to boot, and verify dual-core operation:
bash-4.2# cat /proc/cpuinfo
Processor : ARMv7 Processor rev 2 (v7l)
processor : 0
BogoMIPS : 1196.85
processor : 1
BogoMIPS : 1196.85
Features : swp half thumb fastmult vfp edsp iwmmxt thumbee neon vfpv3 tls
CPU implementer : 0x56
CPU architecture: 7
CPU variant : 0x2
CPU part : 0x584
CPU revision : 2
Hardware : Marvell MMP3 (Device Tree Support) OLPC XO-4
Revision : 0000
Serial : 0000000000000000
-bash-4.2# █

To add dual core to a build of Fedora 18, add the kernel and firmware packages to your build.


== Reverting ==
== Reverting ==


* download the [http://rpmdropbox.laptop.org/f18-xo4/kernel-3.5.7_xo4-20141118.2329.olpc.cd558cf.armv7hl.rpm 3.5.7_xo4-20141118.2329.olpc.cd558cf] kernel package,
* download the [http://rpmdropbox.laptop.org/f18-xo4/kernel-3.5.7_xo4-20141118.2329.olpc.cd558cf.armv7hl.rpm 3.5.7_xo4-20141118.2329.olpc.cd558cf] kernel package,
* download the [http://dev.laptop.org/pub/firmware/q7b43/q7b43.rom q7b43.rom] old firmware,
* download the [http://dev.laptop.org/pub/firmware/q7b45/q7b45.rom q7b45.rom] old firmware,
* copy both to a USB drive,
* copy both to a USB drive,
* downgrade the kernel,
* downgrade the kernel,
Line 38: Line 59:
sudo poweroff
sudo poweroff
* downgrade the firmware,
* downgrade the firmware,
ok flash u:\q7b43.rom
ok flash u:\q7b45.rom
* allow the laptop to boot.
* allow the laptop to boot.


== Using a single core kernel on 14.1.0 ==
== Using a single core kernel on 14.1.0 ==


Certain tasks may benefit from the higher memory bandwidth of the single core kernel.
Certain tasks may benefit from the higher memory allocation bandwidth of the single core kernel.


* download the [http://rpmdropbox.laptop.org/f18-xo4/kernel-3.5.7_xo4-20141118.2329.olpc.cd558cf.armv7hl.rpm 3.5.7_xo4-20141118.2329.olpc.cd558cf] kernel package,
* download the [http://rpmdropbox.laptop.org/f18-xo4/kernel-3.5.7_xo4-20141118.2329.olpc.cd558cf.armv7hl.rpm 3.5.7_xo4-20141118.2329.olpc.cd558cf] kernel package,
* download the [http://dev.laptop.org/pub/firmware/q7b43/q7b43.rom q7b43.rom] old firmware,
* download the [http://dev.laptop.org/pub/firmware/q7b45/q7b45.rom q7b45.rom] old firmware,
* copy both to a USB drive,
* copy both to a USB drive,
* <font color="red">note</font>: remove the /bootpart/boot/bootfw4.zip file, to prevent automatic firmware upgrade;
* <font color="red">note</font>: remove the /bootpart/boot/bootfw4.zip file, to prevent automatic firmware upgrade;
Line 56: Line 77:
sudo poweroff
sudo poweroff
* downgrade the firmware,
* downgrade the firmware,
ok flash u:\q7b43.rom
ok flash u:\q7b45.rom
* allow the laptop to boot.
* allow the laptop to boot, and verify single-core operation:
-bash-4.2# cat /proc/cpuinfo
Processor : ARMv7 Processor rev 2 (v7l)
BogoMIPS : 1191.11
Features : swp half thumb fastmult vfp edsp iwmmxt thumbee neon vfpv3 tls
CPU implementer : 0x56
CPU architecture: 7
CPU variant : 0x2
CPU part : 0x584
CPU revision : 2
Hardware : Marvell MMP2 (Device Tree Support)
Revision : 0000
Serial : 0000000000000000
-bash-4.2# █

== Booting a single core kernel on dual core firmware ==

For manual use only. Disable the dual core feature before booting, like this:

ok patch noop mmp3-gic linux-fixup
ok boot█

Do not deploy this workaround, as it causes a power draw regression.


== See Also ==
== See Also ==

Latest revision as of 04:09, 18 November 2015

OLPC has enabled the second processor core in the XO-4 laptops.

Problem

The released operating systems 13.2.1 and 13.2.2 run only one core. The XO-4 underperforms compared to some other devices.

Solution

XO-4 only:

Upgrade to 13.2.6.

Workaround

Care is needed. Without the firmware upgrade, our dual-core kernel will not boot. With the firmware upgrade, the original kernel will not boot. The reason for the restriction is that changes to firmware and kernel must occur at the same time.

On unsecure laptops running 13.2.0, 13.2.1 and 13.2.2, upgrade the kernel and the firmware at the same time. The exact steps are:

sudo rpm -U kernel-3.5.7_xo4-20150610.0359.olpc.97336f6.armv7hl.rpm
  • shutdown,
sudo poweroff
  • upgrade the firmware,
ok flash u:\q7c05.rom
  • allow the laptop to boot, and verify dual-core operation:
bash-4.2# cat /proc/cpuinfo
Processor       : ARMv7 Processor rev 2 (v7l)
processor       : 0
BogoMIPS        : 1196.85

processor       : 1
BogoMIPS        : 1196.85

Features        : swp half thumb fastmult vfp edsp iwmmxt thumbee neon vfpv3 tls 
CPU implementer : 0x56
CPU architecture: 7
CPU variant     : 0x2
CPU part        : 0x584
CPU revision    : 2

Hardware        : Marvell MMP3 (Device Tree Support) OLPC XO-4
Revision        : 0000
Serial          : 0000000000000000
-bash-4.2# █

To add dual core to a build of Fedora 18, add the kernel and firmware packages to your build.

Reverting

sudo poweroff
  • downgrade the firmware,
ok flash u:\q7b45.rom
  • allow the laptop to boot.

Using a single core kernel on 14.1.0

Certain tasks may benefit from the higher memory allocation bandwidth of the single core kernel.

sudo rm /bootpart/boot/bootfw4.zip
  • downgrade the kernel, by forcing upgrade to lower version;
sudo rpm --upgrade --force \
kernel-3.5.7_xo4-20141118.2329.olpc.cd558cf.armv7hl.rpm
  • shutdown,
sudo poweroff
  • downgrade the firmware,
ok flash u:\q7b45.rom
  • allow the laptop to boot, and verify single-core operation:
-bash-4.2# cat /proc/cpuinfo 
Processor       : ARMv7 Processor rev 2 (v7l)
BogoMIPS        : 1191.11
Features        : swp half thumb fastmult vfp edsp iwmmxt thumbee neon vfpv3 tls 
CPU implementer : 0x56
CPU architecture: 7
CPU variant     : 0x2
CPU part        : 0x584
CPU revision    : 2

Hardware        : Marvell MMP2 (Device Tree Support)
Revision        : 0000
Serial          : 0000000000000000
-bash-4.2# █

Booting a single core kernel on dual core firmware

For manual use only. Disable the dual core feature before booting, like this:

ok patch noop mmp3-gic linux-fixup
ok boot█

Do not deploy this workaround, as it causes a power draw regression.

See Also