Red Hat* 9.0 Linux* PCI Device ID Patchset Release Notes covering
Intel(R) 82875P / Intel(R) Hance Rapids Chipsets
===============================================================

Release Date: 2003-08-11 16:53


Contents
========
- Scope
- Platform Hardware Requirements
- Platform BIOS Requirements
- In This Release (Supported Devices)
- In This Release (Bill of Materials)
- Sources included in this release
- HW Setup/OS Install Recommendations
- Patch Application
- Kernel Compilation
- Post Kernel Compile Boot Preparation
- Loading Drivers
- Verifying driver package & platform features
- Errata


1) Scope
========

This patchset is designed to provide Linux* PCI Device ID kernel support for 
Intel(R) 82875P and Intel(R) Hance Rapids Chipset based platforms.
Additionally the patchset will enable support for  Intel(R) Hance Rapids ICH integrated
devices using Linux  Red Hat 9.0 OS.


2) Platform Hardware Requirements
==============================

Target Platform hardware configuration is assumed to contain:
	 Intel(R) Pentium 4 CPU
	 Intel(R) 82875P Northbridge
 	 Intel(R) Hance Rapids Southbridge
	 Minimum 128MB of System RAM
	 1 PATA IDE Drive on PATA i/f
	 1 SATA IDE Drive on SATA i/f

Please check with your system provider to determine hardware 
configuration of your Target system.


3) Platform BIOS Requirements
=============================

 Device/Feature		Setting		Required For
 --------------		-------		-------------------------

 IDE PATA/SATA Config-1			- Install of stock Red Hat 9.0
  IDE Mode= Compatible			assumes this BIOS configuration
  PATA/SATA Selection= Combined		
  Combined Mode Option= MV= 110

 IDE PATA/SATA Config-2			- After applying patch and compiling new kernel
  IDE Mode= Enhanced			- See ERRATA for more info
  PATA Configuration= Legacy		
  SATA Port Setup M/S= p0=Pri, p1=Sec 
  IOAPIC= Enabled

 SMBUS			Enabled		- i2c driver 
 AC97 Audio Controller	Enabled		- i810_audio sound driver
 USB 1.1 UHCI 		Enabled		- UHCI drivers
 USB 2.0 EHCI		Enabled		- EHCI drivers

Caveats/Notes:
- The above settings are platform BIOS specific and may be look different depending on 
  your specific BIOS
- Depending on your BIOS, make sure IDE PATA/SATA Config-1 is set to Compatibility
  mode versus Enhanced mode. In Compatibility mode, the actual Secondary PATA IDE channel 
  will be disabled and the actual SATA channel will -appear- as the Secondary PATA IDE channel
- Depending on your BIOS, make sure IDE PATA/SATA Config-2 is set to Enhanced versus Compatibility.
  This should only be done once you have applied the patch, compiled the kernel, and are ready to 
  boot into the new kernel. Setting this option to Enhanced will enable all devices under both
  the PATA and SATA channels. Keep in mind that in Enhanced mode, the SATA channels will become
  Primary and Secondary IDE channels, and the PATA devices will be Third and Fourth IDE channels


4) In this Release (Supported Devices)
======================================

Platform Feature	Support Mechanism
----------------	-----------------

Parallel ATA (PATA)	patches for 2.4.20-8 ide driver
Serial ATA (SATA)	patches for 2.4.20-8 ide driver
USB 1.1 UHCI		stock 2.4.20-8 uhci driver
USB 2.0 EHCI		stock 2.4.20-8 ehci driver
SMBUS 			patches for lm_sensors i2c driver
AC97 Audio		patches for i810_audio sound driver
lspci			patches for lspci utility


5) In This Release (Bill of Materials)
======================================

CW_HR_RH9.0_DevIdUpdate-v0.1/relnotes
		- this file
CW_HR_RH9.0_DevIdUpdate-v0.1/Canterwood_HR_RH9.0_2.4.20-8_DevIdUpdate-0.1.patch
		- patchset to enable OS support for PATA/SATA 
		  storage, SMBUS, and AC97 Audio interfaces,
		  support for lspci utility, and PCI Device ID
		  kernel support


6) Sources included in this release
===================================

N/A


7) HW Setup/OS Install Recommendations
======================================

7.1) HW Setup Recommendations

PATA Primary Master	PATA HD
PATA Primary Slave	CD/DVD Drive
PATA Secondary Master	Empty
PATA Secondary Slave	Empty
SATA-0			SATA HD
SATA-1			Empty

Caveats/Notes:
- Do not install any device required during OS install on PATA Secondary Master/Slave channel
- PATA Secondary channels will be disabled when BIOS 'IDE Mode= Compatible' and 'PATA/SATA selection= Combined' is set
- SATA channels will be remapped to PATA Secondary channels when BIOS 'IDE Mode= Compatible'
  and 'PATA/SATA selection= Combined' is set

7.2) BIOS Setup Recommendations

Advanced/IDE Configuration:
IDE Mode Select		Compatible
PATA/SATA Selection	Combined
Combined Mode Option	MV=110

Boot/Boot Device Priority:
1st Boot		Floppy
2nd Boot		CD/DVD Drive
3rd Boot		PATA HD

Caveats/Notes:
- BIOS settings differ from platform to platform and may not be the same on your system, please use the above
  settings as general guidelines and configure your system to match the above as close as possible

7.3) OS Install Recommendations

Partitions		- hda1 -> /boot
			- hda2 -> swap
			- hda3 -> /
Package selection	- Perform a complete install.  At the very least select the kernel source packages as
			  it is needed for compiling a new kernel

Caveats/Notes:
- Partitions (hda1, hda2, hda3) are assuming PATA HD is Primary Master device
- Kernel Source packages must be installed on system in order to apply source patches and compile a new kernel 


8.0) Patch Application
======================

8.1) Login as root user

8.2) Copy the patch tarball to the root directory
	cp <path>/CW_HR_RH9.0_DevIdUpdate-v0.1.tgz /root

8.3) Change directory to root directory if not already
	cd /root

8.4) Extract files from the patch tarball
	tar -xzvf CW_HR_RH9.0_DevIdUpdate-v0.1.tgz

8.5) Change directory to /usr/src
	cd /usr/src

8.6) Create a clean backup copy of the source tree
	tar -cvf linux-2.4.20-8-backup.tar linux-2.4.20-8

8.7) Apply Device ID update patch to the source tree
	patch --verbose -b -p0 < /root/CW_HR_RH9.0_DevIdUpdate-v0.1/Canterwood_HR_RH9.0_2.4.20-8_DevIdUpdate-0.1.patch

8.8) Check for any rejects during patching process (if patch fails to apply against any target file, 
     a <target-file>.rej file is created in target path. If no files found, you are ready to proceed)
	find / -name *.rej 

Caveats/Notes:
- It is important for the user to apply the patch from the /usr/src directory with the -p0 option
- It is advisable that the patch be applied with the --verbose (verbose output to console), and
  -b (saves a backup file of target file with a .orig extention) options in addition to the
  required -p0 option


9.0) Kernel Compilation
=======================

9.1) Change directory to /usr/src/linux-2.4
	cd /usr/src/linux-2.4

9.2) Clean source tree
	make mrproper

9.3) Edit Makefile to append unique EXTRAVERSION number (important to uniquely identify the new kernel
     and prevent overwrite of stock kernel modules) 
	- Use any text editor to edit /usr/src/linux-2.4/Makefile
	- Look for the line starting with EXTRAVERSION = and delete any strings leaving the revision number
	- Change EXTRAVERSION =  to EXTRAVERSION = <existing revision number>-DevID-v0.1
	- Save and exit

9.4) Copy default Red Hat9.0 kernel configuration options into source tree
	cp /boot/config-2.4.20-8smp .config

9.5) Launch Kernel configuration utility (we will not be making any changes, only open, save and exit. The
     kernel configuration utility will use the .config kernel configuration file created in the last step and
     and initialize the remaining files needed for compilation) 
	- if in GUI (XWindow)
		make xconfig
		- Do NOT make changes, save and exit
	- if in console
		make menuconfig
		- Do NOT make changes, save and exit

9.6) Build dependencies
	make dep

9.7) Compile the kernel (the new kernel will be located in /usr/src/linux-2.4/arch/i386/boot and will be called bzImage)
	make bzImage

9.8) Build all modules specified in the kernel configuration file (the modules for new kernel will be located
     in /lib/modules/<kernel-version>)
	make modules

9.9) Install modules (this step requires that you be logged in as root user)
	make modules_install

Caveats/Notes:
- It is imperative to change the 'EXTRAVERSION =' line in the /usr/src/linux-2.4/Makefile to anything other than the
  default.  Failure to do this will cause the stock kernel modules to be overwritten which in turn may render the
  system unable to boot using the stock kernel in the event something goes wrong.
- Do not make any changes in the kernel configuration utility as we are attempting to build a new kernel as close
  as possible to the stock kernel
- You are required to be logged in as root in order to run 'make modules_install' command


10) Post Kernel Compile Boot Preparation
========================================

10.1) Copy new kernel to /boot directory and rename to match kernel version
	cp /usr/src/linux-2.4/arch/i386/boot/bzImage /boot/vmlinuz-2.4.20-8-DevID-v0.1

10.2) Change directory to /boot
	cd /boot

10.3) Build initial ramdisk (this will contain drivers needed during boot to access boot time devices)
	mkinitrd /boot/initrd-2.4.20-8-DevID-v0.1.img 2.4.20-8-DevID-v0.1

10.4) Update Grub bootloader with new kernel information
	cd /boot/grub
	- Use any text editor to edit /boot/grub/grub.conf
	- Add the following three lines above the first line starting with 'title'
		title Red Hat9.0 w/ DevID-v0.1
			kernel /vmlinuz-2.4.20-8-DevID-v0.1 ro root=/dev/hda2
			initrd /initrd-2.4.20-8-DevID-v0.1.img
	- Save and exit

10.5) Reboot system and select the new kernel from the Grub menu


11) Loading Drivers
===================

11.1) Loading IDE-SATA Drivers

- Automatic, no manual intervention required
- Details of autodectection/configuration of ide/sata devices can be
  viewed by looking at /proc/ide or by typing 'less dmesg'

11.2) Loading IDE-PATA Drivers

- Automatic, no manual intervention required
- Details of autodectection/configuration of ide/pata devices can be
  viewed by looking at /proc/ide or by typing 'less dmesg'

11.3) Loading USB Drivers

USB 1.1 UHCI Driver
- Automatic, no manual intervention required
- Details of autodetction of UHCI can be viewed by typing 'less dmesg'

USB 2.0 EHCI Driver
- Automatic, no manual intervention required
- Details of autodetection of EHCI can be viewed by typing 'less dmesg'

USB HUB/Device Specific Drivers
- Normally automatic, no manual intervention required; if not auto detected run the following commands
	modprobe hid          
	modprobe mousedev     (For USB mouse)
	modprobe keybdev      (For USB keyboard)
	modprobe usb-storage  (For USB hard drives)
	mount -t usbdevfs none /proc/bus/usb

11.4) AC'97 Audio

- Automatic when XWindow GUI is started, no manual intervention required


12) Verifying driver package & platform features
================================================

12.1) Verifying LSPCI Support

- run lspci to list PCI devices present on the platform
- pci devices integrated into the MCH will show
  82875P in the name string identifier if Canterwood MCH
- pci devices integrated into the ICH will show
  Enterprise Southbridge in the name string identifier if Hance Rapids

12.2) Verifying AC97 Audio Support (in XWindow)

xmms -p file.wav	- opens the xmms player and plays a .wav file

12.3) Verifying IDE-SATA Support

less /proc/ide/piix		- if file does not exist, all IDE (PATA/SATA) interfaces running in PIO mode
				- if file exist and 'Intel PIIX4 SATA 150 Chipset' listed, SATA interface
			  	  is running in native SATA mode (entry will only appear if BIOS is configured
			  	  to run in 'Enhanced' mode vs 'Compatibility' mode), current UDMA speeds available
less /proc/ide/hdc/settings	- lists the current SATA HD settings used by OS (assumes HW Setup Recommendation in
			  	  section 7.1 is followed) 
hdparm -tT /dev/hdc		- runs throughput test against listed SATA HD (assumes HW Setup Recommendation in
			  	  section 7.1 is followed)

12.4) Verifying IDE-PATA Support

less /proc/ide/piix		- if file does not exist, all IDE (PATA/SATA) interfaces running in PIO mode
less /proc/ide/hda/settings	- lists the current PATA HD settings used by OS (assumes HW Setup Recommendation in
			  	  section 7.1 is followed) 
hdparm -tT /dev/hda		- runs throughput test against listed PATA HD (assumes HW Setup Recommendation in
			  	  section 7.1 is followed)


13) Errata
==========

Following errata was noted during testing of 'Canterwood_HR_RH9.0_2.4.20-8_DevIdUpdate-0.1.patch'

13.1) Distribution specific issues

13.2) Patch specific issues


(C)2002 INTEL Corporation.  All rights reserved.
