HP PA-RISC J6750 — Installing Gentoo Linux

The HP J6750 is a dual PA-RISC CPU @875mhz box you can find the full specs located hear.

I will be dual booting this machine with HP-UX 11.11 and Linux (just for fun).

I need this machine  to run HP-UX as its main cause for work reasons.
As a side project I will install Linux on to the second disk.

I will be using Gentoo Linux, as that’s what I like, feel free to use any HPPA supported Linux.

Linux is still very immature on the PA-RISC platform, there’s a lot to be worked on and a lot of bugs, Not saying that it can not be stable you just need to understand certain things.

One big key thing is what width will your kernel be, since PA-RISC 2.0  is 64bit HP have been kind enough to allow some models to still run 32bit PA-RISC code.
Currently the Linux kernel is MUCH more stable in 32bit. User land is more stable in 32bit.
I will soon have a minimum of 8gb of ram in this system (hoping for 16gb) there for I will have no choice but to run with a 64bit Linux kernel. Userland can always be a mix of 64bit and 32bit applications.

The one thing I like  about Gentoo is there “Handbooks” very useful for any base system install.
For installing Gentoo HPPA on to the j6750, just follow the hand book.
Unfortunately there’s a few issues around 64bit kernels.
When you go to build the kernel it will quite happily build a 32bit version, not what I need.So follow the following to build a 64bit kernel
Commands to type are in italics

So you need to emerge kgcc64.
# emerge emerge kgcc64
This will get you a 64bit build environment for your kernel. Next you need to set up the environment.
Firstly select the correct GCC version, lets check to make sure we have the necessary versions installed.
# gcc-config -l
This should report the following :-
[1] hppa2.0-unknown-linux-gnu-4.2.4 *
[2] hppa64-unknown-linux-gnu-4.2.4 *
Enter the following command to select the 64bit environment.
# gcc-config 2 ( this will select option two from the above list)
This will give the output:-
* Switching cross-compiler to hppa64-unknown-linux-gnu-4.2.4 …
you now need to edit one extra file to ensure that make knows what cross compile environment to use. (note this is only important when building the kernel the first from from the install CD  since the CD is 32bit and we need to cross compile to 64bit)

With out the following you will get an error like this :-
“make: hppa64-linux-gnu-gcc: Command not found”

Edit the following file :-
# nano /usr/src/linux/arch/parisc/Makefile
edit the following section:-
Under the section called “ifdef CONFIG_64BIT”
Change the following line from :-
CROSS_COMPILE   := hppa64-linux-gnu-
to :-
CROSS_COMPILE   := hppa64-unknown-linux-gnu-

If you do not do this make will not be able to find a cross compile environment for the 64bit PA-RIRSC.
You can continue to configure the kernel. ( see my .config later in this post) Keep following the Gentoo Handbook from this point onwards.

After install there’s a few things that bugged me (I dislike seeing “warnings” during the boot processes)

1) During boot your console spews forth this:-

setfont: putfont xxx,xxxx: failed -1
putfont: PIO_FONT: Function not implemented
putfont: PIO_FONT trying…

This is ugly, slows the boot and just really pisses me off..
Consolefont  has known issues under HPPA on “some” hardware platforms so this may not effect you depends on the machine. Also my HP FX-10 pro (A1299B) is unsupported as a framebuffer, text mode rocks anyway..
You need to disable consolefont in Gentoo to get rid of the messages:-
# rc-update del consolefont

2) The console will spew the following constantly:-
“INIT: Id “b0″ respawing too  fast: disabled for 5 minutes”
“b0” referfs to the early stage of boot where the PDC still holds control of the console, later on in the boot the kernel swaps over from boot console “ttyB0” to ttyS0. So I can not see any need/ reasion to keep this open.
lets comment out the ttyB0 from inittab
edit :-
# nano /etc/inittab
comment out the following line :-
“b0:12345:respawn:/sbin/agetty 9600 ttyB0 vt100”

Ensure that “s0” or “s1” are enabled otherwise you will have no console!

It should now boot happily with no warnings…

# uname -a
Linux valve 2.6.32-gentoo-r1 #13 SMP Mon Jan 18 20:36:11 EST 2010 parisc64 PA8700 (PCX-W2) 9000/785/J6750 GNU/Linux

# cat /proc/cpuinfo
processor    : 0
cpu family    : PA-RISC 2.0
cpu        : PA8700 (PCX-W2)
cpu MHz        : 875.000000
capabilities    : os32 os64
model        : 9000/785/J6750
model name    : Duet W2
hversion    : 0x00005dd0
sversion    : 0x00000491
I-cache        : 768 KB
D-cache        : 1536 KB (WB, direct mapped)
ITLB entries    : 240
DTLB entries    : 240 – shared with ITLB
bogomips    : 1744.89
software id    : 2002919556

Theres one thing to keep in mind.
If your running a 64bit kernel with more then 4gb of ram you really should be using discontiguous memory mapping.
This web site explains why discontiguous memory mapping its a good idea, flat memory mapping is still supported in 64bit kernel, just not a good idea. The web site talks about the ZX1 but the concept of memory holes still applies to astro and runway bus used in the J class.

Overall, Linux is VERY immature on this platform and slow compared to HP-UX (and its FAR from light) but the more I use it the more I can fix things and tune things make it work better.

I am still miffed to this day WHY HP though IA64 should replace  PA-RISC.
Don’t get me wrong I like IA64 too….
I even own an Itanium2 (more on that later) I personalty think PA-RISC could of gone much further its a very nice architecture.  Also a lot easier to optimize then IA64…

In the next few days I will upload images of the j6750 to my flicker so keep  an eye on that.

You can find my initial kernel .config file  here. ( SMP, 64bit, very fat)
If you want 64bit and under 4gb of memory I would recoment using flat memory mapping over discontiguousmemory mapping, flat memory mapping for under 4gb will be faster and more stable.
HPPA SMP 64bit .config
Rename the above file to .config  or just .txt to read.
This is NOT a word .doc file , just silly wordpress won’t accept .txt  Like i would use word for anything!

I will work on making this more optimized and smaller later on. For now  it boots.


11 Responses to “HP PA-RISC J6750 — Installing Gentoo Linux”

  1. Your setupt/installation guide was a great help for me and my HP box C3750. I can not get /dve/fb or fbdev files. GOOGLING, asking but people say why I need fb (frame buffer) – I think it is silly question. I want to run X11 server (like on headless machines) so I can use iMac as X11 terminal.
    The graphic card on this box is HP one normally supplied with this box, can not remember but it 8 bit color palette. Your help will greatly appreciated.

    Kind regards …. Kris

    • You can run X11 headless with out a FB device.
      I do it all the time, infact you don’t even need X11 running on the C3750 you just need to allow remote X11 connections.
      You can you putty or ssh client to forward X11 apps to your OSX desktop. I would recommend using native SSH client on OSX.

      Just connect with -X or -Y and start up your remote app.
      I do this for HP-UX and “sam” back to a linux desktop.

      • Boy it is almost a year …. I had this HPPA2 box working until I stupidly decided to do SYNC (using gentoo), it always real pain when upgrade. I am stuck … again … and can not remember how I did before. Boot stops after message:
        Turn off ttyB0 ….. Have IPL configured like before (upgrade/update) console=ttyS0. Turning upside down google and just can not find answer. Any ideas ??? Please


      • Hi Kris,

        Ensure you have reset up /etc/inittab . It sounds like your console is not been spawned.

        Did you upgrade the kernel ?

        If so try ttyS1 rather then S0, just in case.

        Will the box eventually boot ? or your network is not working as well?
        My PA-RISC box is in need of an update too. So If I run into the issue I can comment.

      • Thanks for reply.
        Drives me crazy ….. still either with ttyS0 or S1 boot process stops at “turn off boot console ttyB0”
        Checked out inittab – looks OK. I had this machine OK until I did upgrade …. always after it there are numerous problems and it takes days to get things working again. The 3.4 kernel … did not work, I always check which version of kernel is stable, experience tells me that kernels marked unstable on what ever processor are not stable or just do not work. Any way I got the sources for the kernel that I had working before, rebuild it ….. and I am in the “s…t”.
        I preserved old kernel … but it does not work anymore.
        Just before line ….. turn of …. ttyB0 messages are:
        TCP cubic registered
        Initializing XFRM net link socket
        NET: Registered protocol family 17
        NET: Registered —————- 15
        But network if is not working. There are messages earlier about NET and TCP ..so looks like at least there is an attempt to start networking.

        By the way … are you living in Honk Kong? Almost every time I go to EU I go via HK – my family lives there. I will be in HK for a couple weeks next month.
        I looked at you blog and found that you like the old machines. I am trying to clean up my place but still have SUN IPC, back home in Poland LX, here in Sydney two INDYs, one of them is R500 and big SUN Ultra 30. I did have E10k …. but it was to much …

        Regards Kris

      • Trying to find out what is going on.
        Dmesg when boot from live cd says:
        …. ttyB0->tty0
        also for some reson net is not active as the thing looks for tulip0.

        When boot from HD dmesg line:
        console tty0 enabled, bootconsole disabled.
        I do not have serial tty connection so can not interact with computer via tty. Further when trying to start internet ….
        tulip0: no phu info, ….
        tulip0: MII transceiver …
        eth0: Digital DS21142/43 Tulip rev 65 at Port 0x100 …..
        TCP cubic registered
        NET: Registered protocol family 17

        but no network connection to the machine …. (bummer)
        Why there is no ttyB0->tty0 or S0 ?????

        Going to sniff further what is happening.

  2. Hang on. You don’t have a serial console on ttyB0 ?

    If i am reading that correctly. then disable that line in your inittab and boot loader.

    Set your console device in the PDC to your video device and USB keyboard.

    As for the network. Not sure I can fire up my system and give it an upgrade (over 1 year) that should be fun!

    Dropped you an email at your gmail account.

  3. hi there
    someone on C3600 ? here I am experimenting a lot of troubles with 64bit mode. I am on 2.6.26, kernel 2.6.39 doesn’t boot.

    let me know

  4. I will try you join you as soon as possible. IRC is banned from the place where I work.

    Anyhoo. Is someone using C36xx/C37xx? WIth more than 4Gbyte of ram? Is it stable?

    let me know.

    I will put a new hard drive on the SCSI chain, in order to use a new gentoo-stage3.

  5. someone is using Adaptec SCSI Card 39160 (AIC7XXX/7899) with his/her HPPA machine ?

    I need a SCSI card with two VHDCI LVD SCSI connectors


    I’m tempted to buy a C8000, but it’s priced at 500 quid, currently I own a C3600, so just to have an idea about performances, can someone run nbench(1) and report the result ?

    thanks =)


Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: