# This is a BitKeeper generated patch for the following project: # Project Name: Linux kernel tree # This patch format is intended for GNU patch command version 2.5 or higher. # This patch includes the following deltas: # ChangeSet v2.6.2-rc1 -> 1.1517 # include/asm-x86_64/dwarf2.h 1.1 -> 1.2 # drivers/scsi/megaraid.c 1.58 -> 1.59 # arch/sparc64/kernel/smp.c 1.64 -> 1.65 # drivers/block/paride/Kconfig 1.2 -> 1.3 # drivers/atm/horizon.c 1.13 -> 1.14 # drivers/usb/input/hid.h 1.27.1.2 -> 1.29 # drivers/base/firmware_class.c 1.6 -> 1.7 # arch/x86_64/kernel/traps.c 1.31 -> 1.32 # arch/x86_64/mm/fault.c 1.19 -> 1.20 # net/ipv6/anycast.c 1.9 -> 1.10 # arch/x86_64/ia32/ia32_binfmt.c 1.19 -> 1.20 # net/core/flow.c 1.16 -> 1.18 # drivers/message/i2o/Kconfig 1.5 -> 1.6 # net/ipv6/exthdrs.c 1.13 -> 1.14 # arch/i386/kernel/apm.c 1.59 -> 1.60 # drivers/usb/input/wacom.c 1.31 -> 1.32 # arch/x86_64/kernel/vmlinux.lds.S 1.20 -> 1.21 # Documentation/video4linux/bttv/README 1.5 -> 1.6 # net/ipv6/ip6_output.c 1.48 -> 1.49 # arch/x86_64/lib/usercopy.c 1.7 -> 1.8 # net/ipv6/ip6_tunnel.c 1.15 -> 1.16 # fs/xfs/xfs_itable.c 1.6 -> 1.7 # arch/x86_64/kernel/acpi/sleep.c 1.1 -> 1.2 # drivers/input/serio/i8042.c 1.35.1.3 -> 1.39 # net/ipv6/datagram.c 1.12 -> 1.14 # Documentation/video4linux/bttv/CARDLIST 1.9 -> 1.10 Documentation/video4linux/CARDLIST.bttv (moved) # drivers/md/Kconfig 1.7 -> 1.8 # Documentation/video4linux/bttv/Insmod-options 1.6 -> 1.7 # include/asm-x86_64/kdebug.h 1.4 -> 1.5 # arch/i386/kernel/cpu/mcheck/non-fatal.c 1.7 -> 1.8 # drivers/md/raid6mmx.c 1.1 -> 1.2 # arch/i386/Kconfig 1.96 -> 1.98 # drivers/cdrom/cdrom.c 1.44 -> 1.45 # arch/x86_64/kernel/x8664_ksyms.c 1.20 -> 1.21 # drivers/atm/he.c 1.23 -> 1.25 # init/main.c 1.116 -> 1.117 # drivers/md/raid6recov.c 1.1 -> 1.2 # drivers/net/irda/sir_dongle.c 1.4 -> 1.5 # Documentation/BK-usage/00-INDEX 1.1 -> 1.2 # include/linux/cpu.h 1.8 -> 1.9 # include/net/ah.h 1.2 -> 1.3 # drivers/md/raid6sse1.c 1.1 -> 1.2 # drivers/md/raid6test/Makefile 1.1 -> 1.2 # include/linux/blkdev.h 1.132 -> 1.133 # drivers/scsi/aacraid/aacraid.h 1.10 -> 1.11 # arch/i386/pci/direct.c 1.18 -> 1.19 # drivers/md/raid6test/test.c 1.1 -> 1.2 # drivers/input/mouse/psmouse-base.c 1.43.1.1 -> 1.46 # drivers/serial/serial_core.c 1.75 -> 1.78 # arch/i386/kernel/cpu/mtrr/if.c 1.9 -> 1.10 # drivers/media/video/w9966.c 1.11 -> 1.12 # arch/x86_64/kernel/i387.c 1.9 -> 1.10 # drivers/net/irda/tekram-sir.c 1.3 -> 1.4 # drivers/md/md.c 1.196 -> 1.197 # include/asm-x86_64/ptrace.h 1.8 -> 1.9 # drivers/net/irda/sir_core.c 1.1 -> 1.2 # net/ipv6/icmp.c 1.45 -> 1.46 # net/ipv6/reassembly.c 1.20 -> 1.21 # arch/sparc64/defconfig 1.110 -> 1.111 # drivers/input/keyboard/maple_keyb.c 1.4.1.1 -> 1.6 # drivers/input/mouse/synaptics.c 1.15 -> 1.16 # arch/x86_64/kernel/entry.S 1.15 -> 1.16 # drivers/input/keyboard/98kbd.c 1.2 -> 1.3 # arch/sparc64/mm/init.c 1.52 -> 1.53 # arch/i386/kernel/dmi_scan.c 1.49 -> 1.51 # arch/sparc64/kernel/head.S 1.21 -> 1.22 # drivers/scsi/aacraid/linit.c 1.23 -> 1.24 # net/ipv6/raw.c 1.46 -> 1.47 # drivers/char/keyboard.c 1.38.1.1 -> 1.42 # drivers/usb/input/hid-input.c 1.20.1.1 -> 1.22 # drivers/usb/input/hiddev.c 1.41.1.1 -> 1.43 # arch/x86_64/ia32/sys_ia32.c 1.47 -> 1.48 # arch/x86_64/kernel/pci-gart.c 1.25 -> 1.26 # include/linux/input.h 1.40.1.1 -> 1.44 # drivers/net/dummy.c 1.7 -> 1.8 # arch/x86_64/ia32/ia32entry.S 1.27 -> 1.28 # drivers/net/irda/Makefile 1.19 -> 1.20 # arch/x86_64/lib/thunk.S 1.2 -> 1.3 # drivers/video/console/Makefile 1.15 -> 1.16 # fs/xfs/xfs_iomap.h 1.1 -> 1.2 # drivers/net/8139cp.c 1.58 -> 1.59 # drivers/usb/input/hid-ff.c 1.4 -> 1.5 # arch/alpha/kernel/signal.c 1.19 -> 1.20 # drivers/video/aty/aty128fb.c 1.40 -> 1.41 # drivers/input/joydev.c 1.20.1.1 -> 1.23 # drivers/pnp/Kconfig 1.6 -> 1.7 # include/asm-alpha/elf.h 1.6 -> 1.7 # drivers/ide/Makefile 1.14 -> 1.15 # security/selinux/netif.c 1.1 -> 1.2 # drivers/scsi/aha1542.c 1.31 -> 1.32 # drivers/net/irda/sir-dev.h 1.2 -> 1.3 # fs/xfs/xfs_log_recover.c 1.37 -> 1.38 # include/linux/apm_bios.h 1.7 -> 1.8 # arch/ppc64/Kconfig 1.37 -> 1.38 # arch/x86_64/kernel/process.c 1.22 -> 1.23 # net/ipv6/af_inet6.c 1.59 -> 1.60 # include/asm-x86_64/mc146818rtc.h 1.2 -> 1.3 # include/asm-x86_64/timex.h 1.9 -> 1.10 # drivers/usb/input/hid-core.c 1.67.1.1 -> 1.71 # include/asm-x86_64/vsyscall32.h 1.1 -> 1.2 # include/linux/skbuff.h 1.38 -> 1.39 # drivers/net/irda/actisys-sir.c 1.3 -> 1.4 # net/ipv6/ndisc.c 1.63 -> 1.64 # MAINTAINERS 1.190 -> 1.191 # net/sctp/ipv6.c 1.49 -> 1.50 # drivers/net/irda/sir_dev.c 1.9 -> 1.10 # arch/sparc64/kernel/sys_sparc32.c 1.84 -> 1.86 # drivers/input/mouse/logips2pp.c 1.4 -> 1.5 # include/asm-x86_64/calling.h 1.6 -> 1.7 # arch/x86_64/kernel/sys_x86_64.c 1.11 -> 1.12 # Makefile 1.447 -> 1.448 # arch/i386/defconfig 1.102 -> 1.103 # include/asm-x86_64/unistd.h 1.19 -> 1.20 # arch/x86_64/kernel/time.c 1.27 -> 1.28 # arch/x86_64/defconfig 1.29 -> 1.30 # net/ipv6/ah6.c 1.25 -> 1.26 # drivers/md/raid6x86.h 1.1 -> 1.2 # arch/x86_64/kernel/acpi/wakeup.S 1.3 -> 1.4 # include/asm-x86_64/thread_info.h 1.13 -> 1.14 # arch/ppc64/kernel/sys_ppc32.c 1.75 -> 1.76 # drivers/video/logo/Makefile 1.3 -> 1.4 # drivers/ide/pci/pdc202xx_new.c 1.20 -> 1.21 # drivers/net/irda/Kconfig 1.12 -> 1.13 # net/ipv6/route.c 1.62 -> 1.63 # drivers/usb/media/w9968cf.c 1.2 -> 1.3 # drivers/pcmcia/ds.c 1.39 -> 1.43 # drivers/usb/input/hid-lgff.c 1.5 -> 1.6 # drivers/net/tulip/xircom_cb.c 1.18 -> 1.19 # drivers/net/irda/esi-sir.c 1.2 -> 1.3 # include/net/addrconf.h 1.13 -> 1.14 # arch/x86_64/Kconfig 1.39 -> 1.40 # drivers/input/keyboard/atkbd.c 1.42.1.1 -> 1.48 # drivers/net/irda/sir_kthread.c 1.9 -> 1.10 # net/ipv6/ip6_fib.c 1.21 -> 1.22 # include/asm-x86_64/system.h 1.17 -> 1.18 # drivers/scsi/aic7xxx/aicasm/Makefile 1.11 -> 1.12 # net/ipv6/mcast.c 1.48 -> 1.49 # drivers/char/drm/Kconfig 1.9 -> 1.10 # arch/sparc64/Kconfig 1.44 -> 1.45 # net/ipv4/ah4.c 1.28 -> 1.29 # drivers/input/mouse/psmouse.h 1.4 -> 1.5 # include/asm-x86_64/proto.h 1.15 -> 1.16 # arch/x86_64/Makefile 1.32 -> 1.33 # include/asm-x86_64/ia32.h 1.15 -> 1.16 # fs/xfs/linux/xfs_aops.c 1.56 -> 1.57 # drivers/scsi/Kconfig 1.48 -> 1.50 # drivers/media/dvb/ttusb-dec/ttusb_dec.c 1.10 -> 1.12 # drivers/input/keyboard/amikbd.c 1.13 -> 1.14 # include/asm-x86_64/scatterlist.h 1.3 -> 1.4 # arch/x86_64/kernel/ldt.c 1.11 -> 1.12 # arch/x86_64/kernel/pci-dma.c 1.7 -> 1.8 # net/ipv6/addrconf.c 1.86 -> 1.90 # arch/ppc/kernel/setup.c 1.49 -> 1.50 # fs/compat_ioctl.c 1.15 -> 1.16 # drivers/md/raid6.h 1.1 -> 1.2 # drivers/usb/input/usbkbd.c 1.32.1.1 -> 1.34 # drivers/video/radeonfb.c 1.34 -> 1.35 # include/asm-x86_64/hw_irq.h 1.9 -> 1.10 # arch/x86_64/ia32/ia32_signal.c 1.17 -> 1.18 # include/asm-x86_64/processor.h 1.25 -> 1.26 # drivers/md/raid6int.uc 1.1 -> 1.3 # arch/ppc/kernel/signal.c 1.28 -> 1.29 # arch/x86_64/mm/k8topology.c 1.6 -> 1.7 # net/ipv4/igmp.c 1.44 -> 1.45 # drivers/scsi/aic7xxx/Makefile 1.23 -> 1.24 # arch/sparc64/kernel/traps.c 1.30 -> 1.31 # drivers/serial/sunzilog.c 1.39 -> 1.40 # arch/x86_64/ia32/ia32_aout.c 1.1 -> 1.2 # arch/i386/kernel/apic.c 1.49 -> 1.51 # drivers/macintosh/adbhid.c 1.16 -> 1.17 # drivers/md/raid6algos.c 1.1 -> 1.3 # include/asm-x86_64/desc.h 1.13 -> 1.14 # (new) -> 1.1 Documentation/video4linux/CARDLIST.saa7134 # (new) -> 1.1 drivers/input/keyboard/hpps2atkbd.h # (new) -> 1.1 drivers/net/irda/litelink-sir.c # (new) -> 1.1 Documentation/video4linux/README.cx88 # (new) -> 1.1 drivers/net/irda/act200l-sir.c # (new) -> 1.1 Documentation/video4linux/README.saa7134 # (new) -> 1.1 drivers/net/irda/girbil-sir.c # (new) -> 1.1 Documentation/video4linux/CARDLIST.tuner # (new) -> 1.1 drivers/net/irda/ma600-sir.c # (new) -> 1.1 Documentation/video4linux/README.ir # (new) -> 1.1 Documentation/BK-usage/cpcset # (new) -> 1.1 drivers/net/irda/mcp2120-sir.c # (new) -> 1.1 drivers/net/irda/old_belkin-sir.c # (new) -> 1.1 Documentation/BK-usage/gcapatch # (new) -> 1.1 include/asm-x86_64/hpet.h # # The following is the BitKeeper ChangeSet Log # -------------------------------------------- # 04/01/20 torvalds@home.osdl.org 1.1494.2.75 # Linux 2.6.2-rc1 # -------------------------------------------- # 04/01/20 torvalds@home.osdl.org 1.1494.2.76 # Merge bk://are.twiddle.net/axp-2.6 # into home.osdl.org:/home/torvalds/v2.5/linux # -------------------------------------------- # 04/01/20 davem@nuts.ninka.net 1.1494.9.1 # [SPARC64]: Fix 32-bit execve out_mm error path. # # Do not pass a NULL mm to mmdrop(). # -------------------------------------------- # 04/01/21 davem@nuts.ninka.net 1.1494.9.2 # [TTUSB]: ttusb_dec.c needs linux/init.h # -------------------------------------------- # 04/01/21 vojtech@ucw.cz 1.1494.2.77 # Merge ucw.cz:/home/vojtech/bk/linus into ucw.cz:/home/vojtech/bk/input # -------------------------------------------- # 04/01/21 davem@nuts.ninka.net 1.1494.9.3 # [SPARC64]: Update defconfig. # -------------------------------------------- # 04/01/21 davem@kernel.bkbits.net 1.1494.10.1 # Merge davem@nuts.ninka.net:/disk1/davem/BK/sparc-2.6 # into kernel.bkbits.net:/home/davem/sparc-2.6 # -------------------------------------------- # 04/01/21 dtor_core@ameritech.net 1.1494.2.78 # input: Allow Synaptics packet rate to be controlled by the # psmouse_rate= option. # -------------------------------------------- # 04/01/21 dtor_core@ameritech.net 1.1494.2.79 # input: If we get a byte with timeout or parity flags in psmouse.c, # we take the appropriate action. (throw the byte away, reset # byte counter, return NAK if acking, and complain). # -------------------------------------------- # 04/01/21 torvalds@home.osdl.org 1.1494.2.80 # Merge bk://kernel.bkbits.net/davem/sparc-2.6 # into home.osdl.org:/home/torvalds/v2.5/linux # -------------------------------------------- # 04/01/21 kraxel@bytesex.org 1.1494.2.81 # [PATCH] selinux build fix # # trivial one: uses __init and thus needs linux/init.h # -------------------------------------------- # 04/01/21 kraxel@bytesex.org 1.1494.2.82 # [PATCH] video4linux driver documentation update # # This updates / adds documentation for the bttv, saa7134 and cx88 # video4linux drivers. # -------------------------------------------- # 04/01/21 davej@redhat.com 1.1494.2.83 # [PATCH] Check for MCE ability before checking registers. # # Here's a novel idea, check the CPU has machine check capabilities # before we start polling registers. # # I was wondering why my VIA C3 was starting this. Who knows it may solve # some of the random crashes I saw there. # -------------------------------------------- # 04/01/21 trini@kernel.crashing.org 1.1494.2.84 # [PATCH] Elvis^H^H^H^H^HPaul has left the building # # > Paul Mackerras: # > o sort exception tables # # And as more proof that Paul is leaving us ppc32 folks, *sniff*, the # following is needed for PPC32 to compile: # -------------------------------------------- # 04/01/21 akpm@osdl.org 1.1494.2.85 # [NET]: Do not mark dummy_free_one() __exit in dummy.c driver. # -------------------------------------------- # 04/01/21 vnourval@tcs.hut.fi 1.1494.2.86 # [IPV6]: Fix link-local address check in datagram.c # -------------------------------------------- # 04/01/21 shemminger@osdl.org 1.1494.2.87 # [IPV6]: More missing sysctl table sentinels in addrconf.c # -------------------------------------------- # 04/01/21 krkumar@us.ibm.com 1.1494.2.88 # [IPV6]: Explicity set *dst to NULL at top of ip6_dst_lookup(). # -------------------------------------------- # 04/01/21 chas@cmf.nrl.navy.mil 1.1494.2.89 # [ATM]: [horizon] avoid warning about limited range of data type # -------------------------------------------- # 04/01/21 davem@nuts.ninka.net 1.1494.11.1 # [SPARC64]: Add missing sched_balance_exec() to 32-bit compat execve(). # -------------------------------------------- # 04/01/21 vnourval@tcs.hut.fi 1.1494.2.90 # [IPV6]: Add and use new 'strict' parameter to ip6_chk_addr(). # # RFC 2461 requires that the source address of Neighbor Discovery messages # is an address assigned to the sending interface. # # Duplicate Address Detection should also be interface specific. We don't, # for example, want a node to DoS itself just because it has two interfaces # on the same link and both happen to listen to the same multicast group. If # there is a true duplicate on the link, the interface doing DAD will notice # it anyway. # # The attached patch adds a 'strict' parameter to ip6_chk_addr() and # ip6_get_ifaddr() to allow link-local protocols like ND and DAD to do # strict address checks even on addresses with greater scope than # link-local. # -------------------------------------------- # 04/01/22 torvalds@home.osdl.org 1.1494.2.91 # Merge bk://kernel.bkbits.net/davem/sparc-2.6 # into home.osdl.org:/home/torvalds/v2.5/linux # -------------------------------------------- # 04/01/22 akpm@osdl.org 1.1494.2.92 # [PATCH] RAID-6 fixes # # From: "H. Peter Anvin" # # As expected, when it hit mainline I started getting real bug reports... # the attached patch does the following: # # - Fixes a few x86-64 specific bugs; # # - Removes MMX and SSE-1 from x86-64 (if we have x86-64 we have SSE-2); # # - Slightly astracts the integer code to make it easier to add # architecture-specific optimizations later (e.g. IA64 once gcc gets # better IA64 intrinsics support); # # - Resurrects the user-space testbench, and makes it not output the known # false positive of the D+Q case (D+Q is equivalent to a RAID-5 recovery, # so I didn't implement it in the user-space testbench.) # -------------------------------------------- # 04/01/22 akpm@osdl.org 1.1494.2.93 # [PATCH] document RAID-6 support in mdadm-1.5.0 # # From: "H. Peter Anvin" # # This is purely a doc patch saying RAID-6 support is available in # mdadm-1.5.0 and the patch is no longer necessary. # -------------------------------------------- # 04/01/22 akpm@osdl.org 1.1494.2.94 # [PATCH] ppc64: add missing sched_balance_exec() call # # From: Anton Blanchard # # We were missing the sched_balance_exec call. Could explain some NUMA # scheduling weirdness we were seeing. # -------------------------------------------- # 04/01/22 akpm@osdl.org 1.1494.2.95 # [PATCH] ppc64: include i2c in config # # ppc64 doesn't use drivers/Kconfig (it should) so it needs to include i2c by # hand. # -------------------------------------------- # 04/01/22 torvalds@home.osdl.org 1.1494.2.96 # Merge bk://bk.arm.linux.org.uk/linux-2.6-pcmcia # into home.osdl.org:/home/torvalds/v2.5/linux # -------------------------------------------- # 04/01/22 vnourval@tcs.hut.fi 1.1494.12.1 # [IPV6]: addrconf_sysctl_forward_strategy() needs to invoke rt6_purge_dflt_routers() too. # -------------------------------------------- # 04/01/22 torvalds@home.osdl.org 1.1494.2.97 # Fix APIC timer initialization. # # We used to write fields that were marked RESERVED and that # are apparently some old stale timer base. Stop doing that. # # Verified with Mikael Pettersson, and confirmed to fix ACPI # boot-time lockups for a few people. # -------------------------------------------- # 04/01/22 rusty@rustcorp.com.au 1.1494.12.2 # [NET]: Simplify net/flow.c per-cpu handling. # # The cpu handling in net/core/flow.c is complex: it tries to allocate # flow cache as each CPU comes up. It might as well allocate them for # each possible CPU at boot. # -------------------------------------------- # 04/01/22 mikpe@user.it.uu.se 1.1494.2.98 # [PATCH] non-integrated local APIC LVTT init compatibility # # Add back the old i82489DX bits to use timer scaling for the old # non-integrated APIC setup. # # It's possible these bits don't need to be set on i82489DXs, # but not having this HW for testing I elected to maintain # the old behaviour on these old machines. # -------------------------------------------- # 04/01/22 bcollins@debian.org 1.1494.1.5 # Merge http://linux.bkbits.net/linux-2.5 # into debian.org:/usr/src/kernel/sparc-2.6 # -------------------------------------------- # 04/01/22 torvalds@home.osdl.org 1.1494.2.99 # Merge bk://kernel.bkbits.net/davem/net-2.6 # into home.osdl.org:/home/torvalds/v2.5/linux # -------------------------------------------- # 04/01/23 roehrich@sgi.com 1.1494.13.1 # [XFS] In xfs_bulkstat, we need to do the readahead loop always. # # SGI Modid: xfs-linux:xfs-kern:164517a # -------------------------------------------- # 04/01/23 sandeen@sgi.com 1.1494.13.2 # [XFS] Fix for large allocation groups, so that extent # sizes will not overflow pagebuf lengths. # # SGI Modid: xfs-linux:xfs-kern:164827a # -------------------------------------------- # 04/01/23 bcollins@debian.org 1.1496 # Merge http://linux.bkbits.net/linux-2.5 # into debian.org:/usr/src/kernel/linux-2.6 # -------------------------------------------- # 04/01/23 akpm@osdl.org 1.1494.2.100 # [PATCH] LSI Logic MegaRAID3 PCI ID # # From: Chris Meadors # # Add a missing PCI ID. # -------------------------------------------- # 04/01/23 akpm@osdl.org 1.1494.2.101 # [PATCH] RAID-6 fix for IA-64 # # From: "H. Peter Anvin" # # Fix for RAID-6 on IA-64, from Bjorn Helgaas, and verified by me. # -------------------------------------------- # 04/01/23 akpm@osdl.org 1.1494.2.102 # [PATCH] ppc32: Fixes to the signal context code # # From: Benjamin Herrenschmidt # # This patch (which has been in my tree for some time now) does 2 things to # the ppc32 signal code: # # - The new sys_swapcontext() syscall that we added recently (and which is # _not_ yet used by glibc, so it's ok to change it slightly at this point, # glibc kernel version check will limit us to 2.6.2 or 2.6.3) gets a new # context size argument, so we can deal with future context size changes. # # - When ucontext is get/set/swapped using the above syscall, the TLS (r2) # is preserved (it's still saved/restored on signal entry & return though). # # The equivalent of this patch is already in the ppc64 signal32.c emulation, # and it has no effect until glibc is updated to use the new syscall, which # should happen soon now, so please apply. # -------------------------------------------- # 04/01/23 akpm@osdl.org 1.1494.2.103 # [PATCH] Fix rq_for_each_bio() macro again # # From: Rusty Russell # # Looks like an obvious typo. Works fine if "bio" is the name of the # iterator. # -------------------------------------------- # 04/01/23 torvalds@home.osdl.org 1.1494.2.104 # Merge http://xfs.org:8090/xfs-linux-2.6 # into home.osdl.org:/home/torvalds/v2.5/linux # -------------------------------------------- # 04/01/23 davej@redhat.com 1.1494.2.105 # [PATCH] PCI probing typo # -------------------------------------------- # 04/01/23 davej@redhat.com 1.1494.2.106 # [PATCH] OOSTORE needs MTRR. # # The centaur CPU init code gets linking errors without it. # -------------------------------------------- # 04/01/23 davej@redhat.com 1.1494.2.107 # [PATCH] Reduce stack usage in w9966 driver. # # 2KB onstack allocation. Nasty. # -------------------------------------------- # 04/01/23 davej@redhat.com 1.1494.2.108 # [PATCH] Restore 2.4 MTRR feature. # # If the CPU doesn't support MTRRs, don't create a /proc/mtrr # -------------------------------------------- # 04/01/23 davej@redhat.com 1.1494.2.109 # [PATCH] logic error in aty128fb # # Negate the expression not the register seems more sensible? # -------------------------------------------- # 04/01/23 davej@redhat.com 1.1494.2.110 # [PATCH] Remove unused CONFIG symbol. # # Grep of the tree only turned up these two uses. # -------------------------------------------- # 04/01/23 davej@redhat.com 1.1494.2.111 # [PATCH] Reduce stack usage in ttusb driver. # # ARM_PACKET_SIZE is 4KB. Ouch. # -------------------------------------------- # 04/01/23 davej@redhat.com 1.1494.2.112 # [PATCH] Correct CPUs printout on boot. # # This currently prints out the maximum number of CPUs the # kernel is configured to support, instead of the actual # number that the kernel brought up. Which results in odd # displays that look like you have more CPUs than you do. # -------------------------------------------- # 04/01/23 davej@redhat.com 1.1494.2.113 # [PATCH] Remove useless cruft from ATM HE driver. # # Echoing changes done in 2.4. (It now has a pci_pool_create backport). # -------------------------------------------- # 04/01/23 davej@redhat.com 1.1494.2.114 # [PATCH] logic error in radeonfb. # # Looks like another instance of a ! in the wrong place. # -------------------------------------------- # 04/01/23 davej@redhat.com 1.1494.2.115 # [PATCH] logic error in XFS # # Yet another misplaced ! by the looks.. # -------------------------------------------- # 04/01/23 davej@redhat.com 1.1494.2.116 # [PATCH] DMI updates from 2.4 # # A lot of the blacklists never made it forward, here's what I found # still lying around in my old 2.5 tree when I brought it up to date. # # I think 2.4 has had more updates since then (and there may be # some entries languishing in vendor 2.4 trees), I'll take a peek # when I get some spare cycles. # -------------------------------------------- # 04/01/23 davej@redhat.com 1.1494.2.117 # [PATCH] Update post-halloween doc url. # # I did a s/2.5/2.6/ a while ago, as it made more sense when 2.6 appeared. # The old URL will continue to work (symlink to the new file). If I move # this again, whack me. # -------------------------------------------- # 04/01/23 torvalds@home.osdl.org 1.1494.2.118 # Fix up he.c misuse of pci_pool_create() that # slipped in. # -------------------------------------------- # 04/01/23 akpm@osdl.org 1.1494.2.119 # [PATCH] md: Fix possible hang in raid shutdown. # # From: NeilBrown # # If a raid array was syncing on shutdown, it would hang on shutdown, # constantly re-entering md_enter_safemade. This fixes it. # -------------------------------------------- # 04/01/23 torvalds@home.osdl.org 1.1497 # Merge bk://bk.phunnypharm.org/linux-2.6 # into home.osdl.org:/home/torvalds/v2.5/linux # -------------------------------------------- # 04/01/23 akpm@osdl.org 1.1498 # [PATCH] Fix CPU hotplug in networking # # The code directly accessed the "cpucontrol" semaphore used # for CPU hotplug. That doesn't work all that well, since the # semaphore doesn't even exist on UP. # -------------------------------------------- # 04/01/23 bcollins@debian.org 1.1494.1.6 # [SUNZILOG]: Fix locking in cases where UART layer has grabbed the lock already. # -------------------------------------------- # 04/01/23 davem@nuts.ninka.net 1.1499 # Merge nuts.ninka.net:/disk1/davem/BK/sparcwork-2.6 # into nuts.ninka.net:/disk1/davem/BK/sparc-2.6 # -------------------------------------------- # 04/01/23 axboe@suse.de 1.1498.1.1 # [PATCH] remove mt rainier warning # # A debug printk was left in there by mistake, it'll get printed for every # non-mrw drive. So kill it. # -------------------------------------------- # 04/01/23 hunold@convergence.de 1.1498.1.2 # [PATCH] Fix up 'linux-dvb' maintainers entry # # We've created a new e-mail address which is currently an open # mailing-list anybody can subscribe to. # # It's currently watched by the main developers. If spam takes over the # list, we might change it to "moderated" or even route it to one single # person. # -------------------------------------------- # 04/01/23 jt@bougret.hpl.hp.com 1.1498.2.1 # [IRDA]: Update dongle api. # # From Martin Diehl. # # * change dongle api such that raw r/w and modem line helpers are directly # called, not virtual callbacks. # -------------------------------------------- # 04/01/23 jt@bougret.hpl.hp.com 1.1498.2.2 # [IRDA]: Update actisys-sir driver. # # From Martin Diehl. # # * convert to de-virtualized sirdev helpers # * improve error path during speed change # -------------------------------------------- # 04/01/23 jt@bougret.hpl.hp.com 1.1498.2.3 # [IRDA]: Update esr-sir driver. # # From Martin Diehl. # # * convert to de-virtualized sirdev helpers # * add probably missing dongle power-up operation # -------------------------------------------- # 04/01/23 jt@bougret.hpl.hp.com 1.1498.2.4 # [IRDA]: Update tekram-sir driver. # # From Martin Diehl. # # * increase default write-delay to 150msec # * convert to de-virtualized sirdev helpers # -------------------------------------------- # 04/01/23 jt@bougret.hpl.hp.com 1.1498.2.5 # [IRDA]: Add litelink-sir driver. # # From Eugene Crosser. # # * converted for new api from old driver # # From Martin Diehl. # # * convert to de-virtualized sirdev helpers # * set dongle to 9600 in case of invalid speed instead leaving it in # unknown configuration # -------------------------------------------- # 04/01/23 jt@bougret.hpl.hp.com 1.1498.2.6 # [IRDA]: Add act200l-sir driver. # # From Martin Diehl. # # * converted for new api from old driver # -------------------------------------------- # 04/01/23 jt@bougret.hpl.hp.com 1.1498.2.7 # [IRDA]: Add girbil-sir driver. # # From Martin Diehl. # # * converted for new api from old driver # -------------------------------------------- # 04/01/23 jt@bougret.hpl.hp.com 1.1498.2.8 # [IRDA]: Add ma600-sir driver. # # From Martin Diehl. # # * converted for new api from old driver # -------------------------------------------- # 04/01/23 jt@bougret.hpl.hp.com 1.1498.2.9 # [IRDA]: Add mcp2120-sir driver. # # From Martin Diehl. # # * converted for new api from old driver # -------------------------------------------- # 04/01/23 jt@bougret.hpl.hp.com 1.1498.2.10 # [IRDA]: Add old_belkin-sir driver. # # From Martin Diehl. # # * converted for new api from old driver # -------------------------------------------- # 04/01/23 jt@bougret.hpl.hp.com 1.1498.2.11 # [IRDA]: Kconfig changes to enable new drivers into the build, from Martin Diehl. # -------------------------------------------- # 04/01/24 markh@osdl.org 1.1494.14.1 # [PATCH] Fix for aacraid and high memory on 2.6.1 # # Here is an update to use pci_set_consistent_dma_mask. But since # dma_alloc_coherent uses dma_mask instead of consistent one, I left in # setting dma_mask as well until the alloc routine changes. # -------------------------------------------- # 04/01/24 jejb@mulgrave.(none) 1.1494.14.2 # drivers/scsi/Kconfig URL update: resource.cx # # From: Petri Koistinen # -------------------------------------------- # 04/01/24 jejb@mulgrave.(none) 1.1494.14.3 # aic7xxx parallel build # # From: Justin T. Gibbs # -------------------------------------------- # 04/01/24 akpm@osdl.org 1.1494.14.4 # [PATCH] aha1542 warning fix # # Fix this: # # drivers/scsi/aha1542.c:74: warning: unsigned int format, different type arg (arg 5) # -------------------------------------------- # 04/01/24 dlstevens@us.ibm.com 1.1498.3.1 # [MULTICAST]: multicast loop with include filters fix # # When sending a multicast and using looping back a copy to the # local machine, the interface filter checks can be done before the # source address is specified. For an INCLUDE filter, this won't match # the allowed sources and the packets won't be delivered locally, # even when the ultimate source address chosen is in the allowed list. # # The patch below fixes the filter checks for both IGMPv3 and MLDv2 # to only apply when a source address is available. # # Thanks to Steven Hessing for reporting the problem and providing # a test case for reproducing it. # -------------------------------------------- # 04/01/24 bart@samwel.tk 1.1498.3.2 # [NET]: Return 'unsigned char *' from *skb_pull*() routines. # -------------------------------------------- # 04/01/24 jmorris@redhat.com 1.1498.3.3 # [IPSEC]: Guard against potentially fatal stack usage for auth_data. # -------------------------------------------- # 04/01/24 yoshfuji@linux-ipv6.org 1.1498.3.4 # [IPV6]: Fix several comment spelling errors and typos. # -------------------------------------------- # 04/01/24 torvalds@home.osdl.org 1.1500 # Merge bk://kernel.bkbits.net/davem/sparc-2.6 # into home.osdl.org:/home/torvalds/v2.5/linux # -------------------------------------------- # 04/01/24 ak@suse.de 1.1501 # [PATCH] x86-64 merge # # Mainly lots of bug fixes and a few minor features. One change is that # it uses drivers/Kconfig now like i386. This requires a few minor changes in # outside Kconfig files which I am sending separately. # # - Tighten/fix some code in NUMA node discovery # - Fix oopses in threaded 32bit coredumps and read correct registers. # - Merge with 2.6.2rc1 # - Sync arch/x86_64/Kconfig with i386. Uses drivers/Kconfig now. # - Remove bcopy export # - Fix check for signal stack for 32bit signals # - Fix bcopy and exit prototypes for gcc 3.4 # - Fix asm contraint in usercopy.c for gcc 3.4 # - Use rt_sigreturn, not sigreturn for rt sigreturns. # - Pass si_fault address to 32bit # - Truncate si_error to 16bit in 32bit emulation to match i386 # - Move IA32 flag switching for 32bit executables to flush_thread # (code copied from ppc64/sparc64) # - Print exception trace for strace too, share code. # - Default to 3GB address space for a.out executables # - Fix security hole in ptrace. Also fixes some problems with 32bit gdb. # - Sync mmap address selection algorithm with mm/mmap.c version # - Disable a.out coredumps completely # - Fix bug in sigaltstack 32bit emulation. Kylix IDE now works. # - Move errata 93/BIOS workaround into fault handler. This should work # around USB legacy BIOS bugs too, although not completely (we cannot fix # faults injected by SMM into user space 64bit processes) # - Quieten some unimplemented 32bit syscall warnings and avoid repeated # warnings. # - Set LDT segment limit correctly (fixes problems with some modify_ldt # user) # - Remove obsolete ldt rw lock. # - Remove sys32_modify_ldt. The standard sys_modify_ldt is equivalent. # - Remove traces of old kgdb support # - Merge CFI changes from Jim Houston and some other smaller changes The # kernel assembly functions are described with dwarf2 unwind # information now, which makes it easier for debuggers to make sense of # stack backtraces. The code is only enabled with CONFIG_DEBUG_INFO. # Note this implies that when you use CONFIG_DEBUG_INFO you may need # an binutils update. # - defconfig updated # - Readd sleep support code (Pavel Machek) # - Drop fusion and flush workarounds from IOMMU code # - Add iommu=nofullflush option # - Rewrite 32bit emulation for siginfo conversion (Joe Korty) # - Allow remapping of scatterlists after unmap. This fixes some problems # with the SCSI layer retrying previously mapped sg lists when iommu # merging was enabled (it's disabled now by default) # - Port HPET rtc device emulation code from i386 # -------------------------------------------- # 04/01/24 ak@suse.de 1.1502 # [PATCH] Kconfig fixes for x86-64 # # x86-64 using drivers/Kconfig requires some minor changes. Mostly to disable drivers # that do not work. # # - Mark paride bpck6 not 64bit clean # - Disable I2O on 64bit # - Mark PNP dependent on ISA # - Mark NSP32 driver as not 64bit clean # -------------------------------------------- # 04/01/24 akpm@osdl.org 1.1503 # [PATCH] IDE build fix # # From: Arkadiusz Miskiewicz # # Both drivers/ide/legacy and drivers/ide/ppc broke because they can no # longer include drivers/ide/timing.h. Fix. # # (Acked by Bart) # -------------------------------------------- # 04/01/24 akpm@osdl.org 1.1504 # [PATCH] pdc202xx_new.c: fix PDC20270/1 init on the Xserve Apple machines # # From: Bartlomiej Zolnierkiewicz # # From: Benjamin Herrenschmidt # # Fix initialization of the PDC20270/1 chipsets on the Xserve Apple machines. # -------------------------------------------- # 04/01/24 akpm@osdl.org 1.1505 # [PATCH] Array overindexing in w9968cf # # From: Jean Delvare # # There are 24 members of this array. # -------------------------------------------- # 04/01/24 akpm@osdl.org 1.1506 # [PATCH] DMI update fix # # From: Dave Jones # # Fix typo in the recent 2.4 DMI sync-up. # -------------------------------------------- # 04/01/24 akpm@osdl.org 1.1507 # [PATCH] The RAW_GETBIND compat_ioctl fails # # From: James Cross # # The RAW_GETBIND compatibility ioctl call does convert properly between the # 32bit/64bit version of raw_config_request due to a trivial error, and the # ioctl call fails. # -------------------------------------------- # 04/01/24 akpm@osdl.org 1.1508 # [PATCH] request_firmware(): use del_timer_sync() # # Avoid a possible timer deletion race. # -------------------------------------------- # 04/01/24 torvalds@home.osdl.org 1.1509 # Merge bk://linux-scsi.bkbits.net/scsi-for-linus-2.6 # into home.osdl.org:/home/torvalds/v2.5/linux # -------------------------------------------- # 04/01/24 panagiotis.issaris@mech.kuleuven.ac.be 1.1510 # [PATCH] Graphire3 support # # I got a Wacom Graphire3 for my birthday and unfortunately it didn't # work. After some playing around, I noticed the 2.6 kernel needs a few # small modifications to make it work. # # This simple patch adds support for the Wacom Graphire 3. # -------------------------------------------- # 04/01/24 hirofumi@mail.parknet.co.jp 1.1511 # [netdrvr 8139cp] fix NAPI race # # Andreas Happe writes: # > my notebook (hp/compaq nx7000) still crashes when using 8139cp (runs # > rock solid with 8139too driver). The computer just locks up, there is no # > dmesg output. This has happened since I've got this laptop (around # > november '03). # # It seems 8139cp.c has the race condition of rx_poll and interrupt. # # NOTE, since I don't have this device, patch is untested. Sorry. # -------------------------------------------- # 04/01/24 shemminger@osdl.org 1.1512 # [PATCH] Make xircom cardbus handle shared irq # # Current driver doesn't do shared irq properly. When testing on # a laptop here irq 3 get shared between pcmcia slot and tty/IRDA # -------------------------------------------- # 04/01/24 torvalds@home.osdl.org 1.1510.1.1 # Merge bk://kernel.bkbits.net/davem/net-2.6 # into home.osdl.org:/home/torvalds/v2.5/linux # -------------------------------------------- # 04/01/24 rmk@flint.arm.linux.org.uk 1.1498.4.1 # [SERIAL] Eliminate a couple of redundant tests # # There is no way that tty can be NULL in uart_put_char() and # uart_write(). Eliminate these redundant tests. # -------------------------------------------- # 04/01/24 rmk@flint.arm.linux.org.uk 1.1498.4.2 # [SERIAL] Fix missing NULL check # # tty->driver_data or state->port may end up being NULL in uart_close. # Make sure that we correctly clean up in this case, rather than # oopsing. # -------------------------------------------- # 04/01/24 davem@kernel.bkbits.net 1.1510.1.2 # Merge davem@nuts.ninka.net:/disk1/davem/BK/irda-2.6 # into kernel.bkbits.net:/home/davem/irda-2.6 # -------------------------------------------- # 04/01/24 rmk@flint.arm.linux.org.uk 1.1498.4.3 # [SERIAL] Use tty_name() when printing the tty name. # -------------------------------------------- # 04/01/24 torvalds@home.osdl.org 1.1513 # Merge bk://gkernel.bkbits.net/net-drivers-2.5 # into home.osdl.org:/home/torvalds/v2.5/linux # -------------------------------------------- # 04/01/24 torvalds@home.osdl.org 1.1514 # Merge bk://kernel.bkbits.net/davem/irda-2.6 # into home.osdl.org:/home/torvalds/v2.5/linux # -------------------------------------------- # 04/01/24 akpm@osdl.org 1.1515 # [PATCH] i8042 timer fix # # From: Jim Collette # # There's an exit path in i8042_interrupt() which forgets to rearm the timer. # It can make the mouse die when X is started. # -------------------------------------------- # 04/01/24 torvalds@home.osdl.org 1.1516 # Merge bk://bk.arm.linux.org.uk/linux-2.6-serial # into home.osdl.org:/home/torvalds/v2.5/linux # -------------------------------------------- # 04/01/24 torvalds@home.osdl.org 1.1517 # Merge bk://gkernel.bkbits.net/misc-2.5 # into home.osdl.org:/home/torvalds/v2.5/linux # -------------------------------------------- # diff -Nru a/Documentation/BK-usage/00-INDEX b/Documentation/BK-usage/00-INDEX --- a/Documentation/BK-usage/00-INDEX Sat Jan 24 16:27:48 2004 +++ b/Documentation/BK-usage/00-INDEX Sat Jan 24 16:27:48 2004 @@ -17,6 +17,14 @@ which compresses its input, and then outputs the uu-/base64-encoded version of the compressed input. +cpcset: Copy changeset between unrelated repositories. +Attempts to preserve changeset user, user address, description, in +addition to the changeset (the patch) itself. +Typical usage: + cd my-updated-repo + bk changes # looking for a changeset... + cpcset 1.1511 . ../another-repo + csets-to-patches: Produces a delta of two BK repositories, in the form of individual files, each containing a single cset as a GNU patch. Output is several files, each with the filename "/tmp/rev-$REV.patch" @@ -32,6 +40,11 @@ cd my-updated-repo bk changes -L ~/repo/original-repo 2>&1 | \ perl cset-to-linus > summary.txt + +gcapatch: Generates patch containing changes in local repository. +Typical usage: + cd my-updated-repo + gcapatch > foo.patch unbz64wrap: Reverse an encoded, compressed data stream created by bz64wrap into an uncompressed, typically text/plain output. diff -Nru a/Documentation/BK-usage/cpcset b/Documentation/BK-usage/cpcset --- /dev/null Wed Dec 31 16:00:00 1969 +++ b/Documentation/BK-usage/cpcset Sat Jan 24 16:27:50 2004 @@ -0,0 +1,36 @@ +#!/bin/sh +# +# Purpose: Copy changeset patch and description from one +# repository to another, unrelated one. +# +# usage: cpcset [revision] [from-repository] [to-repository] +# + +REV=$1 +FROM=$2 +TO=$3 +TMPF=/tmp/cpcset.$$ + +rm -f $TMPF* + +CWD_SAVE=`pwd` +cd $FROM +bk changes -r$REV | \ + grep -v '^ChangeSet' | \ + sed -e 's/^ //g' > $TMPF.log + +USERHOST=`bk changes -r$REV | grep '^ChangeSet' | awk '{print $4}'` +export BK_USER=`echo $USERHOST | awk '-F@' '{print $1}'` +export BK_HOST=`echo $USERHOST | awk '-F@' '{print $2}'` + +bk export -tpatch -hdu -r$REV > $TMPF.patch && \ +cd $CWD_SAVE && \ +cd $TO && \ +bk import -tpatch -CFR -y"`cat $TMPF.log`" $TMPF.patch . && \ +bk commit -y"`cat $TMPF.log`" + +rm -f $TMPF* + +echo changeset $REV copied. +echo "" + diff -Nru a/Documentation/BK-usage/gcapatch b/Documentation/BK-usage/gcapatch --- /dev/null Wed Dec 31 16:00:00 1969 +++ b/Documentation/BK-usage/gcapatch Sat Jan 24 16:27:50 2004 @@ -0,0 +1,8 @@ +#!/bin/sh +# +# Purpose: Generate GNU diff of local changes versus canonical top-of-tree +# +# Usage: gcapatch > foo.patch +# + +bk export -tpatch -hdu -r`bk repogca bk://linux.bkbits.net/linux-2.5`,+ diff -Nru a/Documentation/video4linux/CARDLIST.bttv b/Documentation/video4linux/CARDLIST.bttv --- /dev/null Wed Dec 31 16:00:00 1969 +++ b/Documentation/video4linux/CARDLIST.bttv Sat Jan 24 16:27:48 2004 @@ -0,0 +1,115 @@ +card=0 - *** UNKNOWN/GENERIC *** +card=1 - MIRO PCTV +card=2 - Hauppauge (bt848) +card=3 - STB, Gateway P/N 6000699 (bt848) +card=4 - Intel Create and Share PCI/ Smart Video Recorder III +card=5 - Diamond DTV2000 +card=6 - AVerMedia TVPhone +card=7 - MATRIX-Vision MV-Delta +card=8 - Lifeview FlyVideo II (Bt848) LR26 / MAXI TV Video PCI2 LR26 +card=9 - IMS/IXmicro TurboTV +card=10 - Hauppauge (bt878) +card=11 - MIRO PCTV pro +card=12 - ADS Technologies Channel Surfer TV (bt848) +card=13 - AVerMedia TVCapture 98 +card=14 - Aimslab Video Highway Xtreme (VHX) +card=15 - Zoltrix TV-Max +card=16 - Prolink Pixelview PlayTV (bt878) +card=17 - Leadtek WinView 601 +card=18 - AVEC Intercapture +card=19 - Lifeview FlyVideo II EZ /FlyKit LR38 Bt848 (capture only) +card=20 - CEI Raffles Card +card=21 - Lifeview FlyVideo 98/ Lucky Star Image World ConferenceTV LR50 +card=22 - Askey CPH050/ Phoebe Tv Master + FM +card=23 - Modular Technology MM201/MM202/MM205/MM210/MM215 PCTV, bt878 +card=24 - Askey CPH05X/06X (bt878) [many vendors] +card=25 - Terratec TerraTV+ Version 1.0 (Bt848)/ Terra TValue Version 1.0/ Vobis TV-Boostar +card=26 - Hauppauge WinCam newer (bt878) +card=27 - Lifeview FlyVideo 98/ MAXI TV Video PCI2 LR50 +card=28 - Terratec TerraTV+ Version 1.1 (bt878) +card=29 - Imagenation PXC200 +card=30 - Lifeview FlyVideo 98 LR50 +card=31 - Formac iProTV, Formac ProTV I (bt848) +card=32 - Intel Create and Share PCI/ Smart Video Recorder III +card=33 - Terratec TerraTValue Version Bt878 +card=34 - Leadtek WinFast 2000/ WinFast 2000 XP +card=35 - Lifeview FlyVideo 98 LR50 / Chronos Video Shuttle II +card=36 - Lifeview FlyVideo 98FM LR50 / Typhoon TView TV/FM Tuner +card=37 - Prolink PixelView PlayTV pro +card=38 - Askey CPH06X TView99 +card=39 - Pinnacle PCTV Studio/Rave +card=40 - STB TV PCI FM, Gateway P/N 6000704 (bt878), 3Dfx VoodooTV 100 +card=41 - AVerMedia TVPhone 98 +card=42 - ProVideo PV951 +card=43 - Little OnAir TV +card=44 - Sigma TVII-FM +card=45 - MATRIX-Vision MV-Delta 2 +card=46 - Zoltrix Genie TV/FM +card=47 - Terratec TV/Radio+ +card=48 - Askey CPH03x/ Dynalink Magic TView +card=49 - IODATA GV-BCTV3/PCI +card=50 - Prolink PV-BT878P+4E / PixelView PlayTV PAK / Lenco MXTV-9578 CP +card=51 - Eagle Wireless Capricorn2 (bt878A) +card=52 - Pinnacle PCTV Studio Pro +card=53 - Typhoon TView RDS + FM Stereo / KNC1 TV Station RDS +card=54 - Lifeview FlyVideo 2000 /FlyVideo A2/ Lifetec LT 9415 TV [LR90] +card=55 - Askey CPH031/ BESTBUY Easy TV +card=56 - Lifeview FlyVideo 98FM LR50 +card=57 - GrandTec 'Grand Video Capture' (Bt848) +card=58 - Askey CPH060/ Phoebe TV Master Only (No FM) +card=59 - Askey CPH03x TV Capturer +card=60 - Modular Technology MM100PCTV +card=61 - AG Electronics GMV1 +card=62 - Askey CPH061/ BESTBUY Easy TV (bt878) +card=63 - ATI TV-Wonder +card=64 - ATI TV-Wonder VE +card=65 - Lifeview FlyVideo 2000S LR90 +card=66 - Terratec TValueRadio +card=67 - IODATA GV-BCTV4/PCI +card=68 - 3Dfx VoodooTV FM (Euro), VoodooTV 200 (USA) +card=69 - Active Imaging AIMMS +card=70 - Prolink Pixelview PV-BT878P+ (Rev.4C,8E) +card=71 - Lifeview FlyVideo 98EZ (capture only) LR51 +card=72 - Prolink Pixelview PV-BT878P+9B (PlayTV Pro rev.9B FM+NICAM) +card=73 - Sensoray 311 +card=74 - RemoteVision MX (RV605) +card=75 - Powercolor MTV878/ MTV878R/ MTV878F +card=76 - Canopus WinDVR PCI (COMPAQ Presario 3524JP, 5112JP) +card=77 - GrandTec Multi Capture Card (Bt878) +card=78 - Jetway TV/Capture JW-TV878-FBK, Kworld KW-TV878RF +card=79 - DSP Design TCVIDEO +card=80 - Hauppauge WinTV PVR +card=81 - IODATA GV-BCTV5/PCI +card=82 - Osprey 100/150 (878) +card=83 - Osprey 100/150 (848) +card=84 - Osprey 101 (848) +card=85 - Osprey 101/151 +card=86 - Osprey 101/151 w/ svid +card=87 - Osprey 200/201/250/251 +card=88 - Osprey 200/250 +card=89 - Osprey 210/220 +card=90 - Osprey 500 +card=91 - Osprey 540 +card=92 - Osprey 2000 +card=93 - IDS Eagle +card=94 - Pinnacle PCTV Sat +card=95 - Formac ProTV II (bt878) +card=96 - MachTV +card=97 - Euresys Picolo +card=98 - ProVideo PV150 +card=99 - AD-TVK503 +card=100 - Hercules Smart TV Stereo +card=101 - Pace TV & Radio Card +card=102 - IVC-200 +card=103 - Grand X-Guard / Trust 814PCI +card=104 - Nebula Electronics DigiTV +card=105 - ProVideo PV143 +card=106 - PHYTEC VD-009-X1 MiniDIN (bt878) +card=107 - PHYTEC VD-009-X1 Combi (bt878) +card=108 - PHYTEC VD-009 MiniDIN (bt878) +card=109 - PHYTEC VD-009 Combi (bt878) +card=110 - IVC-100 +card=111 - IVC-120G +card=112 - pcHDTV HD-2000 TV +card=113 - Twinhan DST + clones +card=114 - Winfast VC100 diff -Nru a/Documentation/video4linux/CARDLIST.saa7134 b/Documentation/video4linux/CARDLIST.saa7134 --- /dev/null Wed Dec 31 16:00:00 1969 +++ b/Documentation/video4linux/CARDLIST.saa7134 Sat Jan 24 16:27:50 2004 @@ -0,0 +1,23 @@ + 0 -> UNKNOWN/GENERIC + 1 -> Proteus Pro [philips reference design] [1131:2001,1131:2001] + 2 -> LifeView FlyVIDEO3000 [5168:0138] + 3 -> LifeView FlyVIDEO2000 [5168:0138] + 4 -> EMPRESS [1131:6752] + 5 -> SKNet Monster TV [1131:4e85] + 6 -> Tevion MD 9717 + 7 -> KNC One TV-Station RDS / Typhoon TV+Radio 90031 [1131:fe01] + 8 -> Terratec Cinergy 400 TV [153B:1142] + 9 -> Medion 5044 + 10 -> Kworld/KuroutoShikou SAA7130-TVPCI + 11 -> Terratec Cinergy 600 TV [153B:1143] + 12 -> Medion 7134 [16be:0003] + 13 -> ELSA EX-VISION 300TV [1048:226b] + 14 -> ELSA EX-VISION 500TV [1048:226b] + 15 -> ASUS TV-FM 7134 [PCI_VENDOR_ID_ASUSTEK:4842,PCI_VENDOR_ID_ASUSTEK:4830] + 16 -> AOPEN VA1000 POWER [1131:7133] + 17 -> 10MOONS PCI TV CAPTURE CARD [1131:2001] + 18 -> BMK MPEX No Tuner + 19 -> Compro VideoMate TV [185b:c100] + 20 -> Matrox CronosPlus [PCI_VENDOR_ID_MATROX:48d0] + 21 -> Medion 2819 [1461:a70b] + 22 -> BMK MPEX Tuner diff -Nru a/Documentation/video4linux/CARDLIST.tuner b/Documentation/video4linux/CARDLIST.tuner --- /dev/null Wed Dec 31 16:00:00 1969 +++ b/Documentation/video4linux/CARDLIST.tuner Sat Jan 24 16:27:50 2004 @@ -0,0 +1,43 @@ +tuner=0 - Temic PAL (4002 FH5) +tuner=1 - Philips PAL_I (FI1246 and compatibles) +tuner=2 - Philips NTSC (FI1236,FM1236 and compatibles) +tuner=3 - Philips (SECAM+PAL_BG) (FI1216MF, FM1216MF, FR1216MF) +tuner=4 - NoTuner +tuner=5 - Philips PAL_BG (FI1216 and compatibles) +tuner=6 - Temic NTSC (4032 FY5) +tuner=7 - Temic PAL_I (4062 FY5) +tuner=8 - Temic NTSC (4036 FY5) +tuner=9 - Alps HSBH1 +tuner=10 - Alps TSBE1 +tuner=11 - Alps TSBB5 +tuner=12 - Alps TSBE5 +tuner=13 - Alps TSBC5 +tuner=14 - Temic PAL_BG (4006FH5) +tuner=15 - Alps TSCH6 +tuner=16 - Temic PAL_DK (4016 FY5) +tuner=17 - Philips NTSC_M (MK2) +tuner=18 - Temic PAL_I (4066 FY5) +tuner=19 - Temic PAL* auto (4006 FN5) +tuner=20 - Temic PAL_BG (4009 FR5) or PAL_I (4069 FR5) +tuner=21 - Temic NTSC (4039 FR5) +tuner=22 - Temic PAL/SECAM multi (4046 FM5) +tuner=23 - Philips PAL_DK (FI1256 and compatibles) +tuner=24 - Philips PAL/SECAM multi (FQ1216ME) +tuner=25 - LG PAL_I+FM (TAPC-I001D) +tuner=26 - LG PAL_I (TAPC-I701D) +tuner=27 - LG NTSC+FM (TPI8NSR01F) +tuner=28 - LG PAL_BG+FM (TPI8PSB01D) +tuner=29 - LG PAL_BG (TPI8PSB11D) +tuner=30 - Temic PAL* auto + FM (4009 FN5) +tuner=31 - SHARP NTSC_JP (2U5JF5540) +tuner=32 - Samsung PAL TCPM9091PD27 +tuner=33 - MT2032 universal +tuner=34 - Temic PAL_BG (4106 FH5) +tuner=35 - Temic PAL_DK/SECAM_L (4012 FY5) +tuner=36 - Temic NTSC (4136 FY5) +tuner=37 - LG PAL (newer TAPC series) +tuner=38 - Philips PAL/SECAM multi (FM1216ME MK3) +tuner=39 - LG NTSC (newer TAPC series) +tuner=40 - HITACHI V7-J180AT +tuner=41 - Philips PAL_MK (FI1216 MK) +tuner=42 - Philips 1236D ATSC/NTSC daul in diff -Nru a/Documentation/video4linux/README.cx88 b/Documentation/video4linux/README.cx88 --- /dev/null Wed Dec 31 16:00:00 1969 +++ b/Documentation/video4linux/README.cx88 Sat Jan 24 16:27:50 2004 @@ -0,0 +1,59 @@ + +cx8800 release notes +==================== + +This is a v4l2 device driver for the cx2388x chip. + + +current status +============== + +video + Basically works. Some minor quality glitches. For now + only capture, overlay support isn't completed yet. + +audio + Doesn't work. Also the chip specs for the on-chip TV sound + decoder are next to useless :-/ + Most tuner chips do provide mono sound, which may or may not + be useable depending on the board design. With the Hauppauge + cards it works, so there is at least mono sound. Not nice, + but better than nothing. + +vbi + not implemented yet (but I don't expect problems here, just + found no time for that yet). + + +how to add support for new cards +================================ + +The driver needs some config info for the TV cards. This stuff is in +cx88-cards.c. If the driver doesn't work well you likely need a new +entry for your card in that file. Check the kernel log (using dmesg) +to see whenever the driver knows your card or not. There is a line +like this one: + + cx8800[0]: subsystem: 0070:3400, board: Hauppauge WinTV \ + 34xxx models [card=1,autodetected] + +If your card is listed as "board: UNKNOWN/GENERIC" it is unknown to +the driver. + +You can try to create a new entry yourself, or you can mail me the +config information. I need at least the following informations to +add the card: + + * the PCI Subsystem ID ("0070:3400" from the line above, "lspci -v" + output is fine too). + * the tuner type used by the card. You can try to find one by + trial-and-error using the tuner= insmod option. If you + know which one the card has you can also have a look at the + list in CARDLIST.tuner + +Have fun, + + Gerd + +-- +Gerd Knorr [SuSE Labs] diff -Nru a/Documentation/video4linux/README.ir b/Documentation/video4linux/README.ir --- /dev/null Wed Dec 31 16:00:00 1969 +++ b/Documentation/video4linux/README.ir Sat Jan 24 16:27:50 2004 @@ -0,0 +1,72 @@ + +infrared remote control support in video4linux drivers +====================================================== + + +basics +------ + +Current versions use the linux input layer to support infrared +remote controls. I suggest to download my input layer tools +from http://bytesex.org/snapshot/input-.tar.gz + +Modules you have to load: + + saa7134 statically built in, i.e. just the driver :) + bttv ir-kbd-gpio or ir-kbd-i2c depending on your + card. + +ir-kbd-gpio and ir-kbd-i2c don't support all cards lirc supports +(yet), mainly for the reason that the code of lirc_i2c and lirc_gpio +was very confusing and I decided to basically start over from scratch. +Feel free to contact me in case of trouble. Note that the ir-kbd-* +modules work on 2.6.x kernels only through ... + + +how it works +------------ + +The modules register the remote as keyboard within the linux input +layer, i.e. you'll see the keys of the remote as normal key strokes +(if CONFIG_INPUT_KEYBOARD is enabled). + +Using the event devices (CONFIG_INPUT_EVDEV) it is possible for +applications to access the remote via /dev/input/event devices. +You might have to create the special files using "/sbin/MAKEDEV +input". The input layer tools mentioned above use the event device. + +The input layer tools are nice for trouble shooting, i.e. to check +whenever the input device is really present, which of the devices it +is, check whenever pressing keys on the remote actually generates +events and the like. You can also use the kbd utility to change the +keymaps (2.6.x kernels only through). + + +using with lircd +================ + +The cvs version of the lircd daemon supports reading events from the +linux input layer (via event device). The input layer tools tarball +comes with a lircd config file. + + +using without lircd +=================== + +XFree86 likely can be configured to recognise the remote keys. Once I +simply tried to configure one of the multimedia keyboards as input +device, which had the effect that XFree86 recognised some of the keys +of my remote control and passed volume up/down key presses as +XF86AudioRaiseVolume and XF86AudioLowerVolume key events to the X11 +clients. + +It likely is possible to make that fly with a nice xkb config file, +I know next to nothing about that through. + + +Have fun, + + Gerd + +-- +Gerd Knorr diff -Nru a/Documentation/video4linux/README.saa7134 b/Documentation/video4linux/README.saa7134 --- /dev/null Wed Dec 31 16:00:00 1969 +++ b/Documentation/video4linux/README.saa7134 Sat Jan 24 16:27:50 2004 @@ -0,0 +1,73 @@ + + +What is it? +=========== + +This is a v4l2/oss device driver for saa7130/33/34/35 based capture / TV +boards. See http://www.semiconductors.philips.com/pip/saa7134hl for a +description. + + +Status +====== + +Almost everything is working. video, sound, tuner, radio, mpeg ts, ... + +As with bttv, card-specific tweaks are needed. Check CARDLIST for a +list of known TV cards and saa7134-cards.c for the drivers card +configuration info. + + +Build +===== + +Pick up videodev + v4l2 patches from http://bytesex.org/patches/. +Configure, build, install + boot the new kernel. You'll need at least +these config options: + + CONFIG_I2C=m + CONFIG_VIDEO_DEV=m + +Type "make" to build the driver now. "make install" installs the +driver. "modprobe saa7134" should load it. Depending on the card you +might have to pass card= as insmod option, check CARDLIST for +valid choices. + + +Changes / Fixes +=============== + +Please mail me unified diffs ("diff -u") with your changes, and don't +forget to tell me what it changes / which problem it fixes / whatever +it is good for ... + + +Known Problems +============== + +* The tuner for the flyvideos isn't detected automatically and the + default might not work for you depending on which version you have. + There is a tuner= insmod option to override the driver's default. + +Card Variations: +================ + +Cards can use either of these two crystals (xtal): + - 32.11 MHz -> .audio_clock=0x187de7 + - 24.576MHz -> .audio_clock=0x200000 +(xtal * .audio_clock = 51539600) + + +Credits +======= + +andrew.stevens@philips.com + werner.leeb@philips.com for providing +saa7134 hardware specs and sample board. + + +Have fun, + + Gerd + +-- +Gerd Knorr [SuSE Labs] diff -Nru a/Documentation/video4linux/bttv/CARDLIST b/Documentation/video4linux/bttv/CARDLIST --- a/Documentation/video4linux/bttv/CARDLIST Sat Jan 24 16:27:48 2004 +++ /dev/null Wed Dec 31 16:00:00 1969 @@ -1,141 +0,0 @@ -bttv.o - card=0 - *** UNKNOWN/GENERIC *** - card=1 - MIRO PCTV - card=2 - Hauppauge (bt848) - card=3 - STB, Gateway P/N 6000699 (bt848) - card=4 - Intel Create and Share PCI/ Smart Video Recorder III - card=5 - Diamond DTV2000 - card=6 - AVerMedia TVPhone - card=7 - MATRIX-Vision MV-Delta - card=8 - Lifeview FlyVideo II (Bt848) LR26 - card=9 - IMS/IXmicro TurboTV - card=10 - Hauppauge (bt878) - card=11 - MIRO PCTV pro - card=12 - ADS Technologies Channel Surfer TV (bt848) - card=13 - AVerMedia TVCapture 98 - card=14 - Aimslab Video Highway Xtreme (VHX) - card=15 - Zoltrix TV-Max - card=16 - Prolink Pixelview PlayTV (bt878) - card=17 - Leadtek WinView 601 - card=18 - AVEC Intercapture - card=19 - Lifeview FlyVideo II EZ /FlyKit LR38 Bt848 (capture only) - card=20 - CEI Raffles Card - card=21 - Lifeview FlyVideo 98/ Lucky Star Image World ConferenceTV LR50 - card=22 - Askey CPH050/ Phoebe Tv Master + FM - card=23 - Modular Technology MM201/MM202/MM205/MM210/MM215 PCTV, bt878 - card=24 - Askey CPH05X/06X (bt878) [many vendors] - card=25 - Terratec TerraTV+ Version 1.0 (Bt848)/ Terra TValue Version 1.0/ Vobis TV-Boostar - card=26 - Hauppauge WinCam newer (bt878) - card=27 - Lifeview FlyVideo 98/ MAXI TV Video PCI2 LR50 - card=28 - Terratec TerraTV+ Version 1.1 (bt878) - card=29 - Imagenation PXC200 - card=30 - Lifeview FlyVideo 98 LR50 - card=31 - Formac iProTV - card=32 - Intel Create and Share PCI/ Smart Video Recorder III - card=33 - Terratec TerraTValue Version Bt878 - card=34 - Leadtek WinFast 2000/ WinFast 2000 XP - card=35 - Lifeview FlyVideo 98 LR50 / Chronos Video Shuttle II - card=36 - Lifeview FlyVideo 98FM LR50 / Typhoon TView TV/FM Tuner - card=37 - Prolink PixelView PlayTV pro - card=38 - Askey CPH06X TView99 - card=39 - Pinnacle PCTV Studio/Rave - card=40 - STB TV PCI FM, Gateway P/N 6000704 (bt878), 3Dfx VoodooTV 100 - card=41 - AVerMedia TVPhone 98 - card=42 - ProVideo PV951 - card=43 - Little OnAir TV - card=44 - Sigma TVII-FM - card=45 - MATRIX-Vision MV-Delta 2 - card=46 - Zoltrix Genie TV/FM - card=47 - Terratec TV/Radio+ - card=48 - Askey CPH03x/ Dynalink Magic TView - card=49 - IODATA GV-BCTV3/PCI - card=50 - Prolink PV-BT878P+4E / PixelView PlayTV PAK / Lenco MXTV-9578 CP - card=51 - Eagle Wireless Capricorn2 (bt878A) - card=52 - Pinnacle PCTV Studio Pro - card=53 - Typhoon TView RDS + FM Stereo / KNC1 TV Station RDS - card=54 - Lifeview FlyVideo 2000 /FlyVideo A2/ Lifetec LT 9415 TV [LR90] - card=55 - Askey CPH031/ BESTBUY Easy TV - card=56 - Lifeview FlyVideo 98FM LR50 - card=57 - GrandTec 'Grand Video Capture' (Bt848) - card=58 - Askey CPH060/ Phoebe TV Master Only (No FM) - card=59 - Askey CPH03x TV Capturer - card=60 - Modular Technology MM100PCTV - card=61 - AG Electronics GMV1 - card=62 - Askey CPH061/ BESTBUY Easy TV (bt878) - card=63 - ATI TV-Wonder - card=64 - ATI TV-Wonder VE - card=65 - Lifeview FlyVideo 2000S LR90 - card=66 - Terratec TValueRadio - card=67 - IODATA GV-BCTV4/PCI - card=68 - 3Dfx VoodooTV FM (Euro), VoodooTV 200 (USA) - card=69 - Active Imaging AIMMS - card=70 - Prolink Pixelview PV-BT878P+ (Rev.4C,8E) - card=71 - Lifeview FlyVideo 98EZ (capture only) LR51 - card=72 - Prolink Pixelview PV-BT878P+9B (PlayTV Pro rev.9B FM+NICAM) - card=73 - Sensoray 311 - card=74 - RemoteVision MX (RV605) - card=75 - Powercolor MTV878/ MTV878R/ MTV878F - card=76 - Canopus WinDVR PCI (COMPAQ Presario 3524JP, 5112JP) - card=77 - GrandTec Multi Capture Card (Bt878) - card=78 - Jetway TV/Capture JW-TV878-FBK, Kworld KW-TV878RF - card=79 - DSP Design TCVIDEO - card=80 - Hauppauge WinTV PVR - card=81 - GV-BCTV5/PCI - card=82 - Osprey 100/150 (878) - card=83 - Osprey 100/150 (848) - card=84 - Osprey 101 (848) - card=85 - Osprey 101/151 - card=86 - Osprey 101/151 w/ svid - card=87 - Osprey 200/201/250/251 - card=88 - Osprey 200/250 - card=89 - Osprey 210/220 - card=90 - Osprey 500 - card=91 - Osprey 540 - card=92 - Osprey 2000 - card=93 - IDS Eagle - card=94 - Pinnacle PCTV Sat - card=95 - Formac ProTV II - card=96 - MachTV - card=97 - Euresys Picolo - -tuner.o - type=0 - Temic PAL (4002 FH5) - type=1 - Philips PAL_I (FI1246 and compatibles) - type=2 - Philips NTSC (FI1236,FM1236 and compatibles) - type=3 - Philips (SECAM+PAL_BG) (FI1216MF, FM1216MF, FR1216MF) - type=4 - NoTuner - type=5 - Philips PAL_BG (FI1216 and compatibles) - type=6 - Temic NTSC (4032 FY5) - type=7 - Temic PAL_I (4062 FY5) - type=8 - Temic NTSC (4036 FY5) - type=9 - Alps HSBH1 - type=10 - Alps TSBE1 - type=11 - Alps TSBB5 - type=12 - Alps TSBE5 - type=13 - Alps TSBC5 - type=14 - Temic PAL_BG (4006FH5) - type=15 - Alps TSCH6 - type=16 - Temic PAL_DK (4016 FY5) - type=17 - Philips NTSC_M (MK2) - type=18 - Temic PAL_I (4066 FY5) - type=19 - Temic PAL* auto (4006 FN5) - type=20 - Temic PAL_BG (4009 FR5) or PAL_I (4069 FR5) - type=21 - Temic NTSC (4039 FR5) - type=22 - Temic PAL/SECAM multi (4046 FM5) - type=23 - Philips PAL_DK (FI1256 and compatibles) - type=24 - Philips PAL/SECAM multi (FQ1216ME) - type=25 - LG PAL_I+FM (TAPC-I001D) - type=26 - LG PAL_I (TAPC-I701D) - type=27 - LG NTSC+FM (TPI8NSR01F) - type=28 - LG PAL_BG+FM (TPI8PSB01D) - type=29 - LG PAL_BG (TPI8PSB11D) - type=30 - Temic PAL* auto + FM (4009 FN5) - type=31 - SHARP NTSC_JP (2U5JF5540) - type=32 - Samsung PAL TCPM9091PD27 - type=33 - MT2032 universal - type=34 - Temic PAL_BG (4106 FH5) - type=35 - Temic PAL_DK/SECAM_L (4012 FY5) - type=36 - Temic NTSC (4136 FY5) - type=37 - LG PAL (newer TAPC series) - type=38 - Philips PAL/SECAM multi (FM1216ME MK3) - type=39 - LG NTSC (newer TAPC series) diff -Nru a/Documentation/video4linux/bttv/Insmod-options b/Documentation/video4linux/bttv/Insmod-options --- a/Documentation/video4linux/bttv/Insmod-options Sat Jan 24 16:27:48 2004 +++ b/Documentation/video4linux/bttv/Insmod-options Sat Jan 24 16:27:48 2004 @@ -1,4 +1,10 @@ +Note: "modinfo " prints various informations about a kernel +module, among them a complete and up-to-date list of insmod options. +This list tends to be outdated because it is updated manually ... + +========================================================================== + bttv.o the bt848/878 (grabber chip) driver diff -Nru a/Documentation/video4linux/bttv/README b/Documentation/video4linux/bttv/README --- a/Documentation/video4linux/bttv/README Sat Jan 24 16:27:48 2004 +++ b/Documentation/video4linux/bttv/README Sat Jan 24 16:27:48 2004 @@ -1,88 +1,37 @@ -IMPORTANT: Don't send me mails with images attached unless I ask you -to do so. Mails with images attached will go to /dev/null unseen. - - -Release notes for bttv-0.7.x -============================ - -This version is based on Ralphs 0.6.4 release. There are alot of -changes. Bugfixes, merged patches from other people, merged fixes -from the kernel version, port to the new i2c stack, removed support -for 2.0.x, code cleanups, ... - -To compile this bttv version, you'll the new i2c stack. Kernels -newer than 2.3.34 have this already included. If you have a older -kernel, download it from: - http://www2.lm-sensors.nu/~lm78/download.html +Release notes for bttv +====================== You'll need at least these config options for bttv: -CONFIG_I2C=m -CONFIG_I2C_ALGOBIT=m -CONFIG_VIDEO_DEV=m + CONFIG_I2C=m + CONFIG_I2C_ALGOBIT=m + CONFIG_VIDEO_DEV=m The latest bttv version is available from http://bytesex.org/bttv/ -You'll find Ralphs original (mostly outdated) documentation in the -ralphs-doc subdirectory. - - -Compile bttv ------------- - -If you are compiling the kernel version, just say 'm' if you are asked -for bttv. I /strongly/ recommend to compile bttv as module, because -there are some insmod options for configuring the driver. Starting -with 0.7.49 the most important ones are available as kernel args too. - -If you downloaded the separate bttv bundle: You need configured kernel -sources to compile the bttv driver. The driver uses some Makefile -magic to compile the modules with your kernel's configuration -(wrt. module-versions, SMP, ...). If you already have compiled the -kernel at least once, you probably don't have do worry about this. If -not, go to /usr/src/linux and run at least "make config". Even -better, compile your own kernel, you'll never become a real hacker -else ;-) -Note that you have to turn on video4linux support (CONFIG_VIDEO_DEV) -in the kernel to get the videodev.o module which is required by bttv. - Make bttv work with your card ----------------------------- -Setup your /etc/modules.conf file and let kmod load the modules. -See also: +Just try "modprobe bttv" and see if that works. -Modules.conf: some sample entries for /etc/modules.conf -Insmod-options: list of all insmod options available for bttv and - the helper modules. -MAKEDEV: a script to create the special files for v4l -CARDLIST: List of all supported cards -Cards: more detailed descriptions of known TV cards: - OEM name variants, used i2c chips, ... - also includes non-bttv cards. - -Loading just the bttv modules isn't enouth for most cards. The -drivers for the i2c tuner/sound chips must also be loaded. bttv tries -to load them automagically by calling request_module() now, but this -obviously works only with kmod enabled. +If it doesn't bttv likely could not autodetect your card and needs some +insmod options. The most important insmod option for bttv is "card=n" +to select the correct card type. If you get video but no sound you've +very likely specified the wrong (or no) card type. A list of supported +cards is in CARDLIST.bttv If bttv takes very long to load (happens sometimes with the cheap cards which have no tuner), try adding this to your modules.conf: options i2c-algo-bit bit_test=1 -The most important insmod option for bttv is "card=n" to select the -correct card type in case the autodetection does'nt work. If you get -video but no sound you've very likely specified the wrong (or no) -card type. A list of supported cards is in CARDLIST. - For the WinTV/PVR you need one firmware file from the driver CD: hcwamc.rbf. The file is in the pvr45xxx.exe archive (self-extracting zip file, unzip can unpack it). Put it into the /etc/pvr directory or use the firm_altera= insmod option to point the driver to the location of the file. -If your card isn't listed in CARDLIST or if you have trouble making +If your card isn't listed in CARDLIST.bttv or if you have trouble making audio work, you should read the Sound-FAQ. @@ -103,14 +52,6 @@ in bttv-cards.c (in case you are intrested or want to mail patches with updates). -Old driver versions used to have a heuristic which could identify some -bt848-based cards. It worked for Hauppauge and Miro cards in most -cases (simply because these where the first cards available on the -market), but misdetected other bt848 cards. That code is gone now for -exactly this reason, the misdetection confused lots of people. If you -have a old Hauppauge or Miro card, you'll have to load the driver with -card=1 or card=2 these days. - Still doesn't work? ------------------- @@ -146,4 +87,4 @@ Gerd -- -Gerd Knorr +Gerd Knorr diff -Nru a/MAINTAINERS b/MAINTAINERS --- a/MAINTAINERS Sat Jan 24 16:27:49 2004 +++ b/MAINTAINERS Sat Jan 24 16:27:49 2004 @@ -709,7 +709,8 @@ DVB SUBSYSTEM AND DRIVERS P: LinuxTV.org Project -L: linux-dvb@linuxtv.org +M: linux-dvb-maintainer@linuxtv.org +L: linux-dvb@linuxtv.org (subscription required) W: http://linuxtv.org/developer/dvb.xml S: Supported diff -Nru a/Makefile b/Makefile --- a/Makefile Sat Jan 24 16:27:49 2004 +++ b/Makefile Sat Jan 24 16:27:49 2004 @@ -690,7 +690,7 @@ _modinst_: @if [ -z "`$(DEPMOD) -V | grep module-init-tools`" ]; then \ echo "Warning: you may need to install module-init-tools"; \ - echo "See http://www.codemonkey.org.uk/post-halloween-2.5.txt";\ + echo "See http://www.codemonkey.org.uk/docs/post-halloween-2.6.txt";\ sleep 1; \ fi @rm -rf $(MODLIB)/kernel diff -Nru a/arch/alpha/kernel/signal.c b/arch/alpha/kernel/signal.c --- a/arch/alpha/kernel/signal.c Sat Jan 24 16:27:49 2004 +++ b/arch/alpha/kernel/signal.c Sat Jan 24 16:27:49 2004 @@ -201,10 +201,13 @@ * Do a signal return; undo the signal stack. */ +#if _NSIG_WORDS > 1 +# error "Non SA_SIGINFO frame needs rearranging" +#endif + struct sigframe { struct sigcontext sc; - unsigned long extramask[_NSIG_WORDS-1]; unsigned int retcode[3]; }; @@ -268,19 +271,20 @@ return err; } +/* Note that this syscall is also used by setcontext(3) to install + a given sigcontext. This because it's impossible to set *all* + registers and transfer control from userland. */ + asmlinkage void -do_sigreturn(struct sigframe *frame, struct pt_regs *regs, +do_sigreturn(struct sigcontext *sc, struct pt_regs *regs, struct switch_stack *sw) { sigset_t set; /* Verify that it's a good sigcontext before using it */ - if (verify_area(VERIFY_READ, frame, sizeof(*frame))) + if (verify_area(VERIFY_READ, sc, sizeof(*sc))) goto give_sigsegv; - if (__get_user(set.sig[0], &frame->sc.sc_mask) - || (_NSIG_WORDS > 1 - && __copy_from_user(&set.sig[1], &frame->extramask, - sizeof(frame->extramask)))) + if (__get_user(set.sig[0], &sc->sc_mask)) goto give_sigsegv; sigdelsetmask(&set, ~_BLOCKABLE); @@ -289,7 +293,7 @@ recalc_sigpending(); spin_unlock_irq(¤t->sighand->siglock); - if (restore_sigcontext(&frame->sc, regs, sw)) + if (restore_sigcontext(sc, regs, sw)) goto give_sigsegv; /* Send SIGTRAP if we're single-stepping: */ @@ -314,10 +318,9 @@ struct switch_stack *sw) { sigset_t set; - stack_t st; - /* Verify that it's a good sigcontext before using it */ - if (verify_area(VERIFY_READ, frame, sizeof(*frame))) + /* Verify that it's a good ucontext_t before using it */ + if (verify_area(VERIFY_READ, &frame->uc, sizeof(frame->uc))) goto give_sigsegv; if (__copy_from_user(&set, &frame->uc.uc_sigmask, sizeof(set))) goto give_sigsegv; @@ -331,12 +334,6 @@ if (restore_sigcontext(&frame->uc.uc_mcontext, regs, sw)) goto give_sigsegv; - if (__copy_from_user(&st, &frame->uc.uc_stack, sizeof(st))) - goto give_sigsegv; - /* It is more difficult to avoid calling this function than to - call it and ignore errors. */ - do_sigaltstack(&st, NULL, rdusp()); - /* Send SIGTRAP if we're single-stepping: */ if (ptrace_cancel_bpt (current)) { siginfo_t info; @@ -437,10 +434,6 @@ goto give_sigsegv; err |= setup_sigcontext(&frame->sc, regs, sw, set->sig[0], oldsp); - if (_NSIG_WORDS > 1) { - err |= __copy_to_user(frame->extramask, &set->sig[1], - sizeof(frame->extramask)); - } if (err) goto give_sigsegv; diff -Nru a/arch/i386/Kconfig b/arch/i386/Kconfig --- a/arch/i386/Kconfig Sat Jan 24 16:27:48 2004 +++ b/arch/i386/Kconfig Sat Jan 24 16:27:48 2004 @@ -399,7 +399,7 @@ config X86_OOSTORE bool - depends on MWINCHIP3D || MWINCHIP2 || MWINCHIPC6 + depends on (MWINCHIP3D || MWINCHIP2 || MWINCHIPC6) && MTRR default y config HPET_TIMER @@ -1260,11 +1260,6 @@ and slower, but it will give very useful debugging information. If you don't debug the kernel, you can say N, but we may not be able to solve problems without frame pointers. - -config X86_EXTRA_IRQS - bool - depends on X86_LOCAL_APIC || X86_VOYAGER - default y config X86_FIND_SMP_CONFIG bool diff -Nru a/arch/i386/defconfig b/arch/i386/defconfig --- a/arch/i386/defconfig Sat Jan 24 16:27:49 2004 +++ b/arch/i386/defconfig Sat Jan 24 16:27:49 2004 @@ -1101,7 +1101,6 @@ # CONFIG_DEBUG_KERNEL is not set CONFIG_DEBUG_SPINLOCK_SLEEP=y CONFIG_FRAME_POINTER=y -CONFIG_X86_EXTRA_IRQS=y CONFIG_X86_FIND_SMP_CONFIG=y CONFIG_X86_MPPARSE=y diff -Nru a/arch/i386/kernel/apic.c b/arch/i386/kernel/apic.c --- a/arch/i386/kernel/apic.c Sat Jan 24 16:27:50 2004 +++ b/arch/i386/kernel/apic.c Sat Jan 24 16:27:50 2004 @@ -834,11 +834,13 @@ void __setup_APIC_LVTT(unsigned int clocks) { - unsigned int lvtt1_value, tmp_value; + unsigned int lvtt_value, tmp_value, ver; - lvtt1_value = SET_APIC_TIMER_BASE(APIC_TIMER_BASE_DIV) | - APIC_LVT_TIMER_PERIODIC | LOCAL_TIMER_VECTOR; - apic_write_around(APIC_LVTT, lvtt1_value); + ver = GET_APIC_VERSION(apic_read(APIC_LVR)); + lvtt_value = APIC_LVT_TIMER_PERIODIC | LOCAL_TIMER_VECTOR; + if (!APIC_INTEGRATED(ver)) + lvtt_value |= SET_APIC_TIMER_BASE(APIC_TIMER_BASE_DIV); + apic_write_around(APIC_LVTT, lvtt_value); /* * Divide PICLK by 16 diff -Nru a/arch/i386/kernel/apm.c b/arch/i386/kernel/apm.c --- a/arch/i386/kernel/apm.c Sat Jan 24 16:27:48 2004 +++ b/arch/i386/kernel/apm.c Sat Jan 24 16:27:48 2004 @@ -844,6 +844,8 @@ idle_percentage *= 100; idle_percentage /= jiffies_since_last_check; use_apm_idle = (idle_percentage > idle_threshold); + if (apm_info.forbid_idle) + use_apm_idle = 0; last_jiffies = jiffies; last_stime = current->stime; } diff -Nru a/arch/i386/kernel/cpu/mcheck/non-fatal.c b/arch/i386/kernel/cpu/mcheck/non-fatal.c --- a/arch/i386/kernel/cpu/mcheck/non-fatal.c Sat Jan 24 16:27:48 2004 +++ b/arch/i386/kernel/cpu/mcheck/non-fatal.c Sat Jan 24 16:27:48 2004 @@ -74,6 +74,16 @@ static int __init init_nonfatal_mce_checker(void) { + struct cpuinfo_x86 *c = &boot_cpu_data; + + /* Check for MCE support */ + if (!cpu_has(c, X86_FEATURE_MCE)) + return -ENODEV; + + /* Check for PPro style MCA */ + if (!cpu_has(c, X86_FEATURE_MCA)) + return -ENODEV; + /* Some Athlons misbehave when we frob bank 0 */ if (boot_cpu_data.x86_vendor == X86_VENDOR_AMD && boot_cpu_data.x86 == 6) diff -Nru a/arch/i386/kernel/cpu/mtrr/if.c b/arch/i386/kernel/cpu/mtrr/if.c --- a/arch/i386/kernel/cpu/mtrr/if.c Sat Jan 24 16:27:48 2004 +++ b/arch/i386/kernel/cpu/mtrr/if.c Sat Jan 24 16:27:48 2004 @@ -352,6 +352,14 @@ static int __init mtrr_if_init(void) { + struct cpuinfo_x86 *c = &boot_cpu_data; + + if ((!cpu_has(c, X86_FEATURE_MTRR)) && + (!cpu_has(c, X86_FEATURE_K6_MTRR)) && + (!cpu_has(c, X86_FEATURE_CYRIX_ARR)) && + (!cpu_has(c, X86_FEATURE_CENTAUR_MCR))) + return -ENODEV; + proc_root_mtrr = create_proc_entry("mtrr", S_IWUSR | S_IRUGO, &proc_root); if (proc_root_mtrr) { diff -Nru a/arch/i386/kernel/dmi_scan.c b/arch/i386/kernel/dmi_scan.c --- a/arch/i386/kernel/dmi_scan.c Sat Jan 24 16:27:49 2004 +++ b/arch/i386/kernel/dmi_scan.c Sat Jan 24 16:27:49 2004 @@ -283,6 +283,30 @@ return 0; } +static __init int apm_is_horked_d850md(struct dmi_blacklist *d) +{ + if (apm_info.disabled == 0) { + apm_info.disabled = 1; + printk(KERN_INFO "%s machine detected. Disabling APM.\n", d->ident); + printk(KERN_INFO "This bug is fixed in bios P15 which is available for \n"); + printk(KERN_INFO "download from support.intel.com \n"); + } + return 0; +} + +/* + * Some APM bioses hang on APM idle calls + */ + +static __init int apm_likes_to_melt(struct dmi_blacklist *d) +{ + if (apm_info.forbid_idle == 0) { + apm_info.forbid_idle = 1; + printk(KERN_INFO "%s machine detected. Disabling APM idle calls.\n", d->ident); + } + return 0; +} + /* * Some machines, usually laptops, can't handle an enabled local APIC. * The symptoms include hangs or reboots when suspending or resuming, @@ -558,6 +582,22 @@ MATCH(DMI_PRODUCT_NAME, "Latitude C600"), NO_MATCH, NO_MATCH } }, + { set_apm_ints, "Dell Latitude", { /* Allow interrupts during suspend on Dell Latitude laptops*/ + MATCH(DMI_SYS_VENDOR, "Dell Computer Corporation"), + MATCH(DMI_PRODUCT_NAME, "Latitude C510"), + NO_MATCH, NO_MATCH + } }, + { apm_is_horked, "Dell Inspiron 2500", { /* APM crashes */ + MATCH(DMI_SYS_VENDOR, "Dell Computer Corporation"), + MATCH(DMI_PRODUCT_NAME, "Inspiron 2500"), + MATCH(DMI_BIOS_VENDOR,"Phoenix Technologies LTD"), + MATCH(DMI_BIOS_VERSION,"A11") + } }, + { set_apm_ints, "Dell Inspiron", { /* Allow interrupts during suspend on Dell Inspiron laptops*/ + MATCH(DMI_SYS_VENDOR, "Dell Computer Corporation"), + MATCH(DMI_PRODUCT_NAME, "Inspiron 4000"), + NO_MATCH, NO_MATCH + } }, { broken_apm_power, "Dell Inspiron 5000e", { /* Handle problems with APM on Inspiron 5000e */ MATCH(DMI_BIOS_VENDOR, "Phoenix Technologies LTD"), MATCH(DMI_BIOS_VERSION, "A04"), @@ -568,6 +608,12 @@ MATCH(DMI_BIOS_VERSION, "A12"), MATCH(DMI_BIOS_DATE, "02/04/2002"), NO_MATCH } }, + { apm_is_horked, "Dell Dimension 4100", { /* APM crashes */ + MATCH(DMI_SYS_VENDOR, "Dell Computer Corporation"), + MATCH(DMI_PRODUCT_NAME, "XPS-Z"), + MATCH(DMI_BIOS_VENDOR,"Intel Corp."), + MATCH(DMI_BIOS_VERSION,"A11") + } }, { set_realmode_power_off, "Award Software v4.60 PGMA", { /* broken PM poweroff bios */ MATCH(DMI_BIOS_VENDOR, "Award Software International, Inc."), MATCH(DMI_BIOS_VERSION, "4.60 PGMA"), @@ -578,21 +624,16 @@ MATCH(DMI_PRODUCT_NAME, "PowerEdge 1300/"), NO_MATCH, NO_MATCH } }, - { set_bios_reboot, "Dell PowerEdge 300", { /* Handle problems with rebooting on Dell 1300's */ + { set_bios_reboot, "Dell PowerEdge 300", { /* Handle problems with rebooting on Dell 300's */ MATCH(DMI_SYS_VENDOR, "Dell Computer Corporation"), MATCH(DMI_PRODUCT_NAME, "PowerEdge 300/"), NO_MATCH, NO_MATCH } }, - { set_bios_reboot, "Dell PowerEdge 2400", { /* Handle problems with rebooting on Dell 300/800's */ + { set_bios_reboot, "Dell PowerEdge 2400", { /* Handle problems with rebooting on Dell 2400's */ MATCH(DMI_SYS_VENDOR, "Dell Computer Corporation"), MATCH(DMI_PRODUCT_NAME, "PowerEdge 2400"), NO_MATCH, NO_MATCH } }, - { set_apm_ints, "Dell Inspiron", { /* Allow interrupts during suspend on Dell Inspiron laptops*/ - MATCH(DMI_SYS_VENDOR, "Dell Computer Corporation"), - MATCH(DMI_PRODUCT_NAME, "Inspiron 4000"), - NO_MATCH, NO_MATCH - } }, { set_apm_ints, "Compaq 12XL125", { /* Allow interrupts during suspend on Compaq Laptops*/ MATCH(DMI_SYS_VENDOR, "Compaq"), MATCH(DMI_PRODUCT_NAME, "Compaq PC"), @@ -619,7 +660,7 @@ MATCH(DMI_BIOS_VERSION, "Version1.01"), NO_MATCH, NO_MATCH, } }, - { apm_is_horked, "Intel D850MD", { /* APM crashes */ + { apm_is_horked_d850md, "Intel D850MD", { /* APM crashes */ MATCH(DMI_BIOS_VENDOR, "Intel Corp."), MATCH(DMI_BIOS_VERSION, "MV85010A.86A.0016.P07.0201251536"), NO_MATCH, NO_MATCH, @@ -647,6 +688,16 @@ MATCH(DMI_BIOS_VENDOR,"Phoenix Technologies LTD"), MATCH(DMI_BIOS_VERSION,"A11") } }, + { apm_likes_to_melt, "Jabil AMD", { /* APM idle hangs */ + MATCH(DMI_BIOS_VENDOR, "American Megatrends Inc."), + MATCH(DMI_BIOS_VERSION, "0AASNP06"), + NO_MATCH, NO_MATCH, + } }, + { apm_likes_to_melt, "AMI Bios", { /* APM idle hangs */ + MATCH(DMI_BIOS_VENDOR, "American Megatrends Inc."), + MATCH(DMI_BIOS_VERSION, "0AASNP05"), + NO_MATCH, NO_MATCH, + } }, { sony_vaio_laptop, "Sony Vaio", { /* This is a Sony Vaio laptop */ MATCH(DMI_SYS_VENDOR, "Sony Corporation"), MATCH(DMI_PRODUCT_NAME, "PCG-"), @@ -777,6 +828,11 @@ } }, { broken_pirq, "l44GX Bios", { /* Bad $PIR */ MATCH(DMI_BIOS_VENDOR, "Intel Corporation"), + MATCH(DMI_BIOS_VERSION,"L440GX0.86B.0115.P12"), + NO_MATCH, NO_MATCH + } }, + { broken_pirq, "l44GX Bios", { /* Bad $PIR */ + MATCH(DMI_BIOS_VENDOR, "Intel Corporation"), MATCH(DMI_BIOS_VERSION,"L440GX0.86B.0120.P12"), NO_MATCH, NO_MATCH } }, @@ -788,6 +844,12 @@ { broken_pirq, "l44GX Bios", { /* Bad $PIR */ MATCH(DMI_BIOS_VENDOR, "Intel Corporation"), MATCH(DMI_BIOS_VERSION,"L440GX0.86B.0066.P07.9906041405"), + NO_MATCH, NO_MATCH + } }, + + { broken_pirq, "IBM xseries 370", { /* Bad $PIR */ + MATCH(DMI_BIOS_VENDOR, "IBM"), + MATCH(DMI_BIOS_VERSION,"MMKT33AUS"), NO_MATCH, NO_MATCH } }, diff -Nru a/arch/i386/pci/direct.c b/arch/i386/pci/direct.c --- a/arch/i386/pci/direct.c Sat Jan 24 16:27:48 2004 +++ b/arch/i386/pci/direct.c Sat Jan 24 16:27:48 2004 @@ -259,7 +259,7 @@ release_resource(region); type2: - if ((!pci_probe & PCI_PROBE_CONF2) == 0) + if ((pci_probe & PCI_PROBE_CONF2) == 0) goto out; region = request_region(0xCF8, 4, "PCI conf2"); if (!region) diff -Nru a/arch/ppc/kernel/setup.c b/arch/ppc/kernel/setup.c --- a/arch/ppc/kernel/setup.c Sat Jan 24 16:27:50 2004 +++ b/arch/ppc/kernel/setup.c Sat Jan 24 16:27:50 2004 @@ -675,7 +675,6 @@ if ( ppc_md.progress ) ppc_md.progress("arch: exit", 0x3eab); paging_init(); - sort_exception_table(); /* this is for modules since _machine can be a define -- Cort */ ppc_md.ppc_machine = _machine; diff -Nru a/arch/ppc/kernel/signal.c b/arch/ppc/kernel/signal.c --- a/arch/ppc/kernel/signal.c Sat Jan 24 16:27:50 2004 +++ b/arch/ppc/kernel/signal.c Sat Jan 24 16:27:50 2004 @@ -241,12 +241,16 @@ * (except for MSR). */ static int -restore_user_regs(struct pt_regs *regs, struct mcontext __user *sr) +restore_user_regs(struct pt_regs *regs, struct mcontext __user *sr, int sig) { + unsigned long save_r2; #ifdef CONFIG_ALTIVEC unsigned long msr; #endif + /* backup/restore the TLS as we don't want it to be modified */ + if (!sig) + save_r2 = regs->gpr[2]; /* copy up to but not including MSR */ if (__copy_from_user(regs, &sr->mc_gregs, PT_MSR * sizeof(elf_greg_t))) return 1; @@ -254,6 +258,8 @@ if (__copy_from_user(®s->orig_gpr3, &sr->mc_gregs[PT_ORIG_R3], GP_REGS_SIZE - PT_ORIG_R3 * sizeof(elf_greg_t))) return 1; + if (!sig) + regs->gpr[2] = save_r2; /* force the process to reload the FP registers from current->thread when it next does FP instructions */ @@ -359,7 +365,7 @@ force_sig(SIGSEGV, current); } -static int do_setcontext(struct ucontext __user *ucp, struct pt_regs *regs) +static int do_setcontext(struct ucontext __user *ucp, struct pt_regs *regs, int sig) { sigset_t set; struct mcontext *mcp; @@ -368,7 +374,7 @@ || __get_user(mcp, &ucp->uc_regs)) return -EFAULT; restore_sigmask(&set); - if (restore_user_regs(regs, mcp)) + if (restore_user_regs(regs, mcp, sig)) return -EFAULT; return 0; @@ -376,10 +382,16 @@ int sys_swapcontext(struct ucontext __user *old_ctx, struct ucontext __user *new_ctx, - int r5, int r6, int r7, int r8, struct pt_regs *regs) + int ctx_size, int r6, int r7, int r8, struct pt_regs *regs) { unsigned char tmp; + /* Context size is for future use. Right now, we only make sure + * we are passed something we understand + */ + if (ctx_size < sizeof(struct ucontext)) + return -EINVAL; + if (old_ctx != NULL) { if (verify_area(VERIFY_WRITE, old_ctx, sizeof(*old_ctx)) || save_user_regs(regs, &old_ctx->uc_mcontext, 0) @@ -406,7 +418,7 @@ * or if another thread unmaps the region containing the context. * We kill the task with a SIGSEGV in this situation. */ - if (do_setcontext(new_ctx, regs)) + if (do_setcontext(new_ctx, regs, 0)) do_exit(SIGSEGV); sigreturn_exit(regs); /* doesn't actually return back to here */ @@ -425,7 +437,7 @@ (regs->gpr[1] + __SIGNAL_FRAMESIZE + 16); if (verify_area(VERIFY_READ, rt_sf, sizeof(struct rt_sigframe))) goto bad; - if (do_setcontext(&rt_sf->uc, regs)) + if (do_setcontext(&rt_sf->uc, regs, 1)) goto bad; /* @@ -484,7 +496,7 @@ if (save_user_regs(regs, &frame->mctx, __NR_sigreturn)) goto badframe; - if (put_user(regs->gpr[1], (unsigned long *)newsp)) + if (put_user(regs->gpr[1], (unsigned long __user *)newsp)) goto badframe; regs->gpr[1] = newsp; regs->gpr[3] = sig; @@ -529,7 +541,7 @@ sr = (struct mcontext *) sigctx.regs; if (verify_area(VERIFY_READ, sr, sizeof(*sr)) - || restore_user_regs(regs, sr)) + || restore_user_regs(regs, sr, 1)) goto badframe; sigreturn_exit(regs); /* doesn't return */ diff -Nru a/arch/ppc64/Kconfig b/arch/ppc64/Kconfig --- a/arch/ppc64/Kconfig Sat Jan 24 16:27:49 2004 +++ b/arch/ppc64/Kconfig Sat Jan 24 16:27:49 2004 @@ -286,6 +286,8 @@ source "drivers/char/Kconfig" +source "drivers/i2c/Kconfig" + source "drivers/media/Kconfig" source "fs/Kconfig" diff -Nru a/arch/ppc64/kernel/sys_ppc32.c b/arch/ppc64/kernel/sys_ppc32.c --- a/arch/ppc64/kernel/sys_ppc32.c Sat Jan 24 16:27:49 2004 +++ b/arch/ppc64/kernel/sys_ppc32.c Sat Jan 24 16:27:49 2004 @@ -2011,6 +2011,8 @@ int retval; int i; + sched_balance_exec(); + file = open_exec(filename); retval = PTR_ERR(file); diff -Nru a/arch/sparc64/Kconfig b/arch/sparc64/Kconfig --- a/arch/sparc64/Kconfig Sat Jan 24 16:27:49 2004 +++ b/arch/sparc64/Kconfig Sat Jan 24 16:27:49 2004 @@ -727,6 +727,10 @@ depends on DEBUG_KERNEL bool "Stack Overflow Detection Support" +config DEBUG_BOOTMEM + depends on DEBUG_KERNEL + bool "Debug BOOTMEM initialization" + # We have a custom atomic_dec_and_lock() implementation but it's not # compatible with spinlock debugging so we need to fall back on # the generic version in that case. diff -Nru a/arch/sparc64/defconfig b/arch/sparc64/defconfig --- a/arch/sparc64/defconfig Sat Jan 24 16:27:48 2004 +++ b/arch/sparc64/defconfig Sat Jan 24 16:27:48 2004 @@ -379,6 +379,7 @@ CONFIG_MD_RAID0=m CONFIG_MD_RAID1=m CONFIG_MD_RAID5=m +CONFIG_MD_RAID6=m CONFIG_MD_MULTIPATH=m CONFIG_BLK_DEV_DM=m # CONFIG_DM_IOCTL_V4 is not set @@ -969,7 +970,7 @@ CONFIG_PHONE_IXJ=m # -# Unix 98 PTY support +# Unix98 PTY support # CONFIG_UNIX98_PTYS=y CONFIG_UNIX98_PTY_COUNT=256 @@ -1054,16 +1055,21 @@ CONFIG_I2C_ALI15X3=m CONFIG_I2C_AMD756=m CONFIG_I2C_AMD8111=m +CONFIG_I2C_ELV=m CONFIG_I2C_I801=m CONFIG_I2C_I810=m +CONFIG_I2C_ISA=m CONFIG_I2C_NFORCE2=m CONFIG_I2C_PHILIPSPAR=m +CONFIG_I2C_PARPORT=m +CONFIG_I2C_PARPORT_LIGHT=m CONFIG_I2C_PROSAVAGE=m CONFIG_I2C_SAVAGE4=m CONFIG_SCx200_ACB=m CONFIG_I2C_SIS5595=m CONFIG_I2C_SIS630=m CONFIG_I2C_SIS96X=m +CONFIG_I2C_VELLEMAN=m CONFIG_I2C_VIA=m CONFIG_I2C_VIAPRO=m CONFIG_I2C_VOODOO3=m @@ -1073,14 +1079,20 @@ # CONFIG_I2C_SENSOR=m CONFIG_SENSORS_ADM1021=m +CONFIG_SENSORS_ASB100=m CONFIG_SENSORS_EEPROM=m CONFIG_SENSORS_IT87=m CONFIG_SENSORS_LM75=m CONFIG_SENSORS_LM78=m CONFIG_SENSORS_LM83=m CONFIG_SENSORS_LM85=m +CONFIG_SENSORS_LM90=m CONFIG_SENSORS_VIA686A=m CONFIG_SENSORS_W83781D=m +CONFIG_SENSORS_W83L785TS=m +# CONFIG_I2C_DEBUG_CORE is not set +# CONFIG_I2C_DEBUG_BUS is not set +# CONFIG_I2C_DEBUG_CHIP is not set # # File systems @@ -1572,12 +1584,15 @@ # # USB Miscellaneous drivers # +CONFIG_USB_EMI62=m +CONFIG_USB_EMI26=m # CONFIG_USB_TIGL is not set CONFIG_USB_AUERSWALD=m CONFIG_USB_RIO500=m CONFIG_USB_LEGOTOWER=m # CONFIG_USB_BRLVGER is not set CONFIG_USB_LCD=m +CONFIG_USB_LED=m CONFIG_USB_SPEEDTOUCH=m CONFIG_USB_TEST=m # CONFIG_USB_GADGET is not set diff -Nru a/arch/sparc64/kernel/head.S b/arch/sparc64/kernel/head.S --- a/arch/sparc64/kernel/head.S Sat Jan 24 16:27:49 2004 +++ b/arch/sparc64/kernel/head.S Sat Jan 24 16:27:49 2004 @@ -54,7 +54,14 @@ .ascii "HdrS" .word LINUX_VERSION_CODE - .half 0x0203 /* HdrS version */ + + /* History: + * + * 0x0202 : Supports kernel params string + * 0x0300 : Supports being located at other than 0x4000 + */ + .half 0x0300 /* HdrS version */ + root_flags: .half 1 root_dev: @@ -345,7 +352,8 @@ nop nop and %g1, %g3, %g1 /* Mask to just get paddr bits. */ - sub %g1, %g2, %g1 /* Get rid of %pc offset to get base. */ + set 0x5fff, %l3 /* Mask offset to get phys base. */ + andn %g1, %l3, %g1 /* NOTE: We hold on to %g1 paddr base as we need it below to lock * NOTE: the PROM cif code into the TLB. diff -Nru a/arch/sparc64/kernel/smp.c b/arch/sparc64/kernel/smp.c --- a/arch/sparc64/kernel/smp.c Sat Jan 24 16:27:48 2004 +++ b/arch/sparc64/kernel/smp.c Sat Jan 24 16:27:48 2004 @@ -1261,6 +1261,7 @@ void __devinit smp_prepare_boot_cpu(void) { + current_thread_info()->cpu = hard_smp_processor_id(); cpu_set(smp_processor_id(), cpu_online_map); cpu_set(smp_processor_id(), phys_cpu_present_map); } diff -Nru a/arch/sparc64/kernel/sys_sparc32.c b/arch/sparc64/kernel/sys_sparc32.c --- a/arch/sparc64/kernel/sys_sparc32.c Sat Jan 24 16:27:49 2004 +++ b/arch/sparc64/kernel/sys_sparc32.c Sat Jan 24 16:27:49 2004 @@ -1950,6 +1950,8 @@ int retval; int i; + sched_balance_exec(); + file = open_exec(filename); retval = PTR_ERR(file); @@ -2023,7 +2025,8 @@ security_bprm_free(&bprm); out_mm: - mmdrop(bprm.mm); + if (bprm.mm) + mmdrop(bprm.mm); out_file: if (bprm.file) { diff -Nru a/arch/sparc64/kernel/traps.c b/arch/sparc64/kernel/traps.c --- a/arch/sparc64/kernel/traps.c Sat Jan 24 16:27:50 2004 +++ b/arch/sparc64/kernel/traps.c Sat Jan 24 16:27:50 2004 @@ -2043,8 +2043,4 @@ */ atomic_inc(&init_mm.mm_count); current->active_mm = &init_mm; - -#ifdef CONFIG_SMP - current_thread_info()->cpu = hard_smp_processor_id(); -#endif } diff -Nru a/arch/sparc64/mm/init.c b/arch/sparc64/mm/init.c --- a/arch/sparc64/mm/init.c Sat Jan 24 16:27:49 2004 +++ b/arch/sparc64/mm/init.c Sat Jan 24 16:27:49 2004 @@ -1293,6 +1293,10 @@ unsigned long bootmap_pfn, bytes_avail, size; int i; +#ifdef CONFIG_DEBUG_BOOTMEM + prom_printf("bootmem_init: Scan sp_banks, "); +#endif + bytes_avail = 0UL; for (i = 0; sp_banks[i].num_bytes != 0; i++) { end_of_phys_memory = sp_banks[i].base_addr + @@ -1359,14 +1363,24 @@ /* Initialize the boot-time allocator. */ max_pfn = max_low_pfn = end_pfn; min_low_pfn = pfn_base; + +#ifdef CONFIG_DEBUG_BOOTMEM + prom_printf("init_bootmem(spfn[%lx], bpfn[%lx], mlpfn[%lx])\n", + start_pfn, bootmap_pfn, max_low_pfn); +#endif bootmap_size = init_bootmem_node(NODE_DATA(0), bootmap_pfn, pfn_base, end_pfn); /* Now register the available physical memory with the * allocator. */ - for (i = 0; sp_banks[i].num_bytes != 0; i++) + for (i = 0; sp_banks[i].num_bytes != 0; i++) { +#ifdef CONFIG_DEBUG_BOOTMEM + prom_printf("free_bootmem(sp_banks:%d): base[%lx] size[%lx]\n", + i, sp_banks[i].base_addr, sp_banks[i].num_bytes); +#endif free_bootmem(sp_banks[i].base_addr, sp_banks[i].num_bytes); + } #ifdef CONFIG_BLK_DEV_INITRD if (initrd_start) { @@ -1382,6 +1396,9 @@ #endif /* Reserve the kernel text/data/bss. */ size = (start_pfn << PAGE_SHIFT) - phys_base; +#ifdef CONFIG_DEBUG_BOOTMEM + prom_printf("reserve_bootmem(kernel): base[%lx] size[%lx]\n", phys_base, size); +#endif reserve_bootmem(phys_base, size); *pages_avail -= PAGE_ALIGN(size) >> PAGE_SHIFT; @@ -1390,6 +1407,10 @@ * in free_all_bootmem. */ size = bootmap_size; +#ifdef CONFIG_DEBUG_BOOTMEM + prom_printf("reserve_bootmem(bootmap): base[%lx] size[%lx]\n", + (bootmap_pfn << PAGE_SHIFT), size); +#endif reserve_bootmem((bootmap_pfn << PAGE_SHIFT), size); *pages_avail -= PAGE_ALIGN(size) >> PAGE_SHIFT; @@ -1714,6 +1735,9 @@ max_mapnr = last_valid_pfn - pfn_base; high_memory = __va(last_valid_pfn << PAGE_SHIFT); +#ifdef CONFIG_DEBUG_BOOTMEM + prom_printf("mem_init: Calling free_all_bootmem().\n"); +#endif totalram_pages = num_physpages = free_all_bootmem() - 1; /* diff -Nru a/arch/x86_64/Kconfig b/arch/x86_64/Kconfig --- a/arch/x86_64/Kconfig Sat Jan 24 16:27:49 2004 +++ b/arch/x86_64/Kconfig Sat Jan 24 16:27:49 2004 @@ -68,6 +68,9 @@ If unsure, say Y. +config HPET_EMULATE_RTC + def_bool HPET_TIMER && RTC=y + config GENERIC_ISA_DMA bool default y @@ -271,51 +274,7 @@ menu "Power management options" -config PM - bool "Power Management support" - ---help--- - "Power Management" means that parts of your computer are shut - off or put into a power conserving "sleep" mode if they are not - being used. There are two competing standards for doing this: APM - and ACPI. If you want to use either one, say Y here and then also - to the requisite support below. - - Power Management is most important for battery powered laptop - computers. - - Note that, even if you say N here, Linux on the x86 architecture - will issue the hlt instruction if nothing is to be done, thereby - sending the processor to limited sleep and saving power. However - using ACPI will likely save more power. - -config SOFTWARE_SUSPEND - bool "Software Suspend (EXPERIMENTAL)" - depends on EXPERIMENTAL && PM && SWAP - ---help--- - Enable the possibilty of suspending the machine. It doesn't need APM. - You may suspend your machine by 'swsusp' or 'shutdown -z