Search:  
Gentoo Wiki

Misc_Sparc

This article is part of the Miscellaneous series.
Definitions Listings Licenses Other

The following tips come from someone running Gentoo on an Ultra5. This page is meant to help those with relatively specific problems as opposed to more general help - http://www.gentoo.org/proj/en/base/sparc/index.xml

Contents

System Specs

Here's an inventory of the machine's hardware:

cpu             : TI UltraSparc IIi (Sabre)
fpu             : UltraSparc IIi integrated FPU
promlib         : Version 3 Revision 15
prom            : 3.15.2
type            : sun4u
ncpus probed    : 1
ncpus active    : 1
Cpu0Bogo        : 539.03
Cpu0ClkTck      : 000000001017df80
MMU Type        : Spitfire

PCI Information:

0000:00:00.0 Host bridge: Sun Microsystems Computer Corp. Ultra IIi
0000:00:01.0 PCI bridge: Sun Microsystems Computer Corp. Simba Advanced PCI Bridge (rev 13)
0000:00:01.1 PCI bridge: Sun Microsystems Computer Corp. Simba Advanced PCI Bridge (rev 13)
0000:01:01.0 Bridge: Sun Microsystems Computer Corp. EBUS (rev 01)
0000:01:01.1 Ethernet controller: Sun Microsystems Computer Corp. Happy Meal (rev 01)
0000:01:02.0 VGA compatible controller: ATI Technologies Inc 3D Rage Pro 215GP (rev 5c)
0000:01:03.0 IDE interface: Silicon Image, Inc. (formerly CMD Technology Inc) PCI0646 (rev 03)
0000:02:01.0 SCSI storage controller: LSI Logic / Symbios Logic 53c875 (rev 14)
0000:02:01.1 SCSI storage controller: LSI Logic / Symbios Logic 53c875 (rev 14)


Keyboard Maps

Every now and then after a huge emerge --update world you might notice your keyboard has become 'unmapped', which makes it next to impossible to correct on the same physical box.

  1. . You'll need access to a sane prompt: login from second system via SSH or use your gentoo install disk.
  2. . Disable XDM: rc-update del xdm
  3. . Reboot the machine

If your keymap is broken at the tty/mgetty level, investigate the KEYMAP setting in /etc/rc.conf. Here's what I'm using (as of March 20, 2005):

KEYMAP="sunt5-us-cz" 
EXTENDED_KEYMAPS=

xorg-x11 is another challenge. Here's what I'm using:

Section "InputDevice"
   Identifier  "Keyboard1"
   Option      "Protocol"   "standard"
   Driver      "Keyboard"
   Option      "AutoRepeat" "500 30"
   Option      "XkbRules"   "sun"
   Option      "XkbModel"   "type5"
EndSection

While we're at it, here's the entire xorg.conf.

Xorg Settings

This xorg.conf is confirmed working for xorg-x11 6.8.2 as of March 20th, 2005.


Section "Module"
   SubSection  "extmod"
   EndSubSection
   Load        "type1"
   Load        "speedo"
   Load       "glx"
EndSection

Section "Files"
   RgbPath     "/usr/lib/X11/rgb"
   FontPath   "/usr/share/fonts/misc/"
   FontPath   "/usr/share/fonts/75dpi/:unscaled"
   FontPath   "/usr/share/fonts/100dpi/:unscaled"
   FontPath   "/usr/share/fonts/Type1/"
   FontPath   "/usr/share/fonts/terminus"
   FontPath   "/usr/share/fonts/75dpi/"
   FontPath   "/usr/share/fonts/100dpi/"
EndSection

Section "ServerFlags"
EndSection

Section "InputDevice"
   Identifier  "Keyboard1"
   Option      "Protocol"   "standard"
   Driver      "Keyboard"
   Option      "AutoRepeat" "500 30"
   Option      "XkbRules"   "sun"
   Option      "XkbModel"   "type5"
EndSection

Section "InputDevice"
   Identifier  "Mouse1"
   Driver      "mouse"
   Option "CorePointer"
   Option "Protocol"    "BusMouse"
   Option "Device"      "/dev/sunmouse"
EndSection

Section "Monitor"
   Identifier  "My Monitor"
   HorizSync   31.5 - 82.0
   VertRefresh 50-100
EndSection

Section "Device"
   Identifier  "ati"
   Driver      "ati"
EndSection

Section "Screen"
   Identifier  "Screen 1"
   Device      "ati"
   Monitor     "My Monitor"
   DefaultDepth 16
   Subsection "Display"
       Depth       16
       Modes       "1024x768"
       ViewPort    0 0
   EndSubsection
EndSection

Section "ServerLayout"
   Identifier  "Simple Layout"
   Screen "Screen 1"
   InputDevice "Mouse1" "CorePointer"
   InputDevice "Keyboard1" "CoreKeyboard"
EndSection

2.4.x Kernel

Here's the config from the latest 2.4.29 sparc-sources. This is a static-only kernel, and is relatively stripped down. If you don't see an option then it's disabled (I've grep -v'd them for brevity). Build your kernel with make vmlinux, and strip useless symbols with strip -R .ident -R .comment -R .note vmlinux

# Code maturity level options
CONFIG_EXPERIMENTAL=y
# General setup
CONFIG_VT=y
CONFIG_VT_CONSOLE=y
CONFIG_SPARC64=y
CONFIG_HAVE_DEC_LOCK=y
CONFIG_RWSEM_XCHGADD_ALGORITHM=y
CONFIG_SBUS=y
CONFIG_SBUSCHAR=y
CONFIG_BUSMOUSE=y
CONFIG_SUN_MOUSE=y
CONFIG_SERIAL=y
CONFIG_SUN_SERIAL=y
CONFIG_SERIAL_CONSOLE=y
CONFIG_SUN_KEYBOARD=y
CONFIG_SUN_CONSOLE=y
CONFIG_SUN_AUXIO=y
CONFIG_SUN_IO=y
CONFIG_PCI=y
CONFIG_RTC=y
CONFIG_PCI_NAMES=y
CONFIG_SUN_OPENPROMFS=y
CONFIG_NET=y
CONFIG_SYSVIPC=y
CONFIG_KCORE_ELF=y
CONFIG_SPARC32_COMPAT=y
CONFIG_BINFMT_ELF32=y
CONFIG_BINFMT_ELF=y
CONFIG_BINFMT_MISC=y
# Console drivers
CONFIG_PROM_CONSOLE=y
# Frame-buffer support
CONFIG_FB=y
CONFIG_DUMMY_CONSOLE=y
CONFIG_FB_LOGO_LARRY=y
CONFIG_FB_ATY=y
CONFIG_FB_ATY_CT=y
CONFIG_FB_PCI=y
CONFIG_FB_ATY=y
CONFIG_FB_ATY_CT=y
CONFIG_FBCON_CFB8=y
CONFIG_FBCON_CFB16=y
CONFIG_FBCON_CFB24=y
CONFIG_FBCON_CFB32=y
CONFIG_FBCON_FONTWIDTH8_ONLY=y
CONFIG_FONT_SUN8x16=y
# Misc Linux/SPARC drivers
CONFIG_SUN_OPENPROMIO=y
CONFIG_SUN_MOSTEK_RTC=y
# Linux/SPARC audio subsystem (EXPERIMENTAL)
CONFIG_SPARCAUDIO=y
CONFIG_SPARCAUDIO_CS4231=y
# Block devices
CONFIG_BLK_DEV_FD=y
CONFIG_BLK_DEV_LOOP=y
# Networking options
CONFIG_PACKET=y
CONFIG_PACKET_MMAP=y
CONFIG_UNIX=y
CONFIG_INET=y
# ATA/IDE/MFM/RLL support
CONFIG_IDE=y

# IDE, ATA and ATAPI Block devices
CONFIG_BLK_DEV_IDE=y
CONFIG_BLK_DEV_IDEDISK=y
CONFIG_BLK_DEV_IDECD=y
CONFIG_BLK_DEV_IDEPCI=y
CONFIG_IDEPCI_SHARE_IRQ=y
CONFIG_BLK_DEV_IDEDMA_PCI=y
CONFIG_IDEDMA_PCI_AUTO=y
CONFIG_BLK_DEV_IDEDMA=y
CONFIG_BLK_DEV_CMD64X=y
CONFIG_IDEDMA_AUTO=y
# Network device support
CONFIG_NETDEVICES=y
# Ethernet (10 or 100Mbit)
CONFIG_NET_ETHERNET=y
CONFIG_HAPPYMEAL=y
# Input core support
CONFIG_INPUT=y
CONFIG_INPUT_KEYBDEV=y
CONFIG_INPUT_MOUSEDEV=y
CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024
CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768
# File systems
CONFIG_EXT3_FS=y
CONFIG_JBD=y
CONFIG_TMPFS=y
CONFIG_RAMFS=y
CONFIG_ISO9660_FS=y
CONFIG_JOLIET=y
CONFIG_PROC_FS=y
CONFIG_DEVFS_FS=y
CONFIG_DEVFS_MOUNT=y
CONFIG_XFS_FS=y
# Network File Systems
CONFIG_NFSD=y
CONFIG_NFSD_V3=y
CONFIG_NFSD_TCP=y
CONFIG_SUNRPC=y
CONFIG_LOCKD=y
CONFIG_LOCKD_V4=y
# Partition Types
CONFIG_MSDOS_PARTITION=y
CONFIG_SUN_PARTITION=y
CONFIG_NLS=y
# Native Language Support
CONFIG_NLS_DEFAULT="iso8859-1"
# Kernel hacking
CONFIG_LOG_BUF_SHIFT=0

2.6.x Kernel

Check out http://dev.gentoo.org/~ciaranm/docs/sparc-2.6.x/ for more help. <<-- THIS LINK IS DEAD. Someone who has a better idea? :)

I haven't got 2.6.x working with Xorg because I can't find the equivalent of ATI PCI Framebuffer Support.

CONFIG_FB_PCI=y
CONFIG_FB_ATY=y
CONFIG_FB_ATY_CT=y

If you figure it out, please edit this area.

Retrieved from "http://www.gentoo-wiki.info/Misc_Sparc"

Last modified: Fri, 05 Sep 2008 11:03:00 +0000 Hits: 14,086