1 |
I'd like to start giving ~monthly updates on the status of mips@ in |
2 |
Gentoo. |
3 |
|
4 |
Recently I received a Loongson 3A system (quad-core 1.35GHz, 16GB RAM, |
5 |
AMD graphics) which is significantly faster and more stable than any |
6 |
other mips system I have. |
7 |
|
8 |
mips@ is currently assigned or cc'd on 29 bugs. This number is down from |
9 |
probably >50 at the beginning of March. |
10 |
|
11 |
My list of to-do items consists of: |
12 |
|
13 |
== Switch to stable profiles == |
14 |
https://github.com/gentoo/gentoo/pull/7672 |
15 |
|
16 |
While keeping mips unstable (KEYWORDS=~mips) I plan to switch the |
17 |
profiles from exp to stable so that no new breakage is added. |
18 |
|
19 |
To that end, I've been working to test and keyword packages until we can |
20 |
flip the switch without adding any breakage ourselves. See the github |
21 |
pull request for the current status. I'll periodically rebase the branch |
22 |
as I add more keywords to the main tree. |
23 |
|
24 |
My plan is to add stable 17.0 mips profiles when the keywording is |
25 |
sorted out and kill two birds with one stone. |
26 |
|
27 |
== Loongson 3A support == |
28 |
|
29 |
The Loongson 3A system I received requires a number of out of tree |
30 |
patches to the kernel, gcc, binutils, and glibc. I've seen their |
31 |
developers working to upstream kernel patches, but it's slow going and |
32 |
there are a lot of them. |
33 |
|
34 |
I haven't seen much work to upstream the other patches. I'm not sure how |
35 |
to reasonably support hardware requiring so many out-of-tree patches. |
36 |
|
37 |
== n64 (the ABI!) support == |
38 |
https://bugs.gentoo.org/show_bug.cgi?id=442548 |
39 |
https://bugs.gentoo.org/show_bug.cgi?id=513042 |
40 |
|
41 |
I want to support the tree main ABIs: Old 32 ("o32"), New 32 ("n32"), |
42 |
and New 64 ("n64"). |
43 |
|
44 |
n32 is equivalent to amd64's x32 ABI: 64-bit ABI but with 32-bit |
45 |
pointers. It's the default ABI we use for 64-bit MIPS. |
46 |
|
47 |
I'd like to offer n64 support as well, but gcc is not quite ready. At |
48 |
this point I have figured out the gcc build system enough to hack |
49 |
something together that works. I just need to... upstream something I |
50 |
guess? |
51 |
|
52 |
== n64 toolchain in n32 system == |
53 |
https://bugs.gentoo.org/show_bug.cgi?id=477956 |
54 |
|
55 |
n32 (and o32) only offer 31-bits of address space (2GB). That's not |
56 |
sufficient to link large libraries like webkit-gtk. For n32 systems, I'd |
57 |
like the toolchain binaries to be n64, to avoid these problems. |
58 |
|
59 |
That's going to be some amount of work on top of regular n64 support, |
60 |
but hopefully not too much. multilib/ABI_MIPS support already exists and |
61 |
works. |
62 |
|
63 |
== stages and installation media == |
64 |
https://bugs.gentoo.org/show_bug.cgi?id=150402 |
65 |
https://bugs.gentoo.org/show_bug.cgi?id=348647 |
66 |
|
67 |
With so many subarchitectures, ABIs, and two byte orderings providing |
68 |
stages and installation media has been a pain point. |
69 |
|
70 |
I'd like to automate as much of this as possible. I really need Kumba to |
71 |
build a new SGI CD, but well, that bug's been open since 2006. |