2003-01-29 03:35:30

by Marcelo Tosatti

[permalink] [raw]
Subject: Linux 2.4.21-pre4


Hi,

So here goes -pre4...


Summary of changes from v2.4.21-pre3 to v2.4.21-pre4
============================================

<[email protected]>:
o [IPV4 ROUTE]: Fix some sysctl documentation

<[email protected]>:
o Miscellaneous MTD block driver fixes
o MTD partitioning updates
o MTD updates

<[email protected]>:
o [NETFILTER]: ip_conntrack_ftp.c, fixes a typo in a DEBUG statement

<[email protected]>:
o [NETFILTER]: Fix a locking bug in ip_conntrack_proto_tcp

<[email protected]>:
o Added ids for the Dell Axim and Toshiba E740. Thanks to Ian Molton

<[email protected]>:
o Fix /proc/slabinfo on ARM

<[email protected]>:
o scanner.c: remove "magic" number for interface
o USB scanner driver: updated Configure.help
o scanner.h, scanner.c: New vendor/product ids for visioneer scanners
o scanner.c: print user-supplied ids only on start-up
o scanner.c, scanner.h: Remove PV8630 ioctls
o scanner.c: endpoint detection cleanup
o Add maintainer for USB scanner driver
o scanner.h, scanner.c: maintainer change

<[email protected]>:
o [SPARC64]: Fix MAP_GROWSDOWN value, cannot be the same as MAP_LOCKED

<[email protected]>:
o [NETFILTER]: Fix excess logging of reused FTP expectations

<[email protected]>:
o [netdrvr tg3] add support for another 5704 board, fix up 5704 phy init

<[email protected]>:
o [NETFILTER]: ipt_multiport invert fix

<[email protected]>:
o USB Serial patch

<[email protected]>:
o [NETFILTER]: UDP nat helper support

<[email protected]>:
o sonypi driver update
o make sonypi use ec_read/ec_write from ACPI patch

<[email protected]>:
o [SPARC64]: Translate IPT_SO_SET_REPLACE socket option for 32-bit apps
o [SPARC64]: Handle SO_TIMESTAMP properly in compat recvmsg

Adrian Bunk <[email protected]>:
o remove duplicate entries from Configure.help

Alan Cox <[email protected]>:
o allow people to build M686 without PGE kernels
o more vaio apm blacklist entries
o mp oops fix
o MP message improvements
o remove confusing MP report
o nmi stack usage
o fix linux crash on boot with some boarss
o fix up cx86 docs
o IPMI driver
o enable ipmi config
o fix compile of 4.0 DRM
o more parisc specific merge bits
o parisc mux driver (parisc specific)
o disable taskfile I/O
o further IDE tape fixes
o Skip disabled IDE generic controllers
o Add ide software raid driver for Medley IDE raid
o add support for Nvidia nForce2 IDE
o Allow DMA setup on radeon IGP now we think its fixed
o allow selection of SI raid
o fix packet padding on 3c501
o fix packet padding on the 3c505
o more unusual USB storage devices
o fix packet padding on the 3c507
o fix packet padding on the 3c523
o fix packet padding on the 7990
o fix packet padding on the 8139too
o fix 8390 packet padding
o fix packet padding on at1700
o fix packet padding on atp
o fix de600/20 packet padding
o fix ni5010 packet padding
o fix ni52 packet padding
o fix packet padding on ni65
o fix packet padding on axnet_cs
o fix padding on sgiseeq
o fix sk_g16 padding
o fix sun3_82586 padding
o fix sun3lance packet padding
o further dscc4 updates
o document undocumentend field in SCSI headers
o fix ad1889 warning - void functions dont return values
o more unusual USB storage devices
o ; cut the mount hash table down to a sane size, and fix printk
o fix casting in pci dma
o parisc header update
o fix msdos end markers for compatibility with cameras etc

Andi Kleen <[email protected]>:
o x86-64 update
o hammer support for i386

Andrea Arcangeli <[email protected]>:
o O_DIRECT alignment fix

Andrew Morton <[email protected]>:
o [SPARC64]: Handle unchanging _TIF_32BIT properly in SET_PERSONALITY
o sync_supers() race fix
o Fix ext3 scheduling storm and lockup
o 3c59x: add 3c920 support
o fix rare BUG in ext3

Christoph Hellwig <[email protected]>:
o fix scsi module unload bug
o cciss/cpqarray/md should use generic BLKGETSIZE
o properly handle too long pathnames in d_path
o update bdflush documentation

Dave Engebretsen <[email protected]>:
o PPC64 update

Dave Kleikamp <[email protected]>:
o JFS: Remove invalid warning
o JFS: Remove COMMIT_Holdlock
o JFS: add jfs_get_volume_size() back
o JFS: Clean up flushing outstanding transactions to journal
o JFS: add sync_fs super_operation

David Brownell <[email protected]>:
o zaurus B500 (sl-5600?) & usbnet
o usb root hub strings

David Gibson <[email protected]>:
o Squash warnings in init/do_mounts.c

David S. Miller <[email protected]>:
o [USB]: rtl8150.c needs linux/init.h
o [TCP]: Add tcp_low_latency sysctl
o [TCP]: Fix typo in TCP_LOW_LATENCY changes

Geert Uytterhoeven <[email protected]>:
o Amiflop incorrect sti()
o Atari ACSI exports
o M68k misc_register audit
o Mac/m68k config fixes
o Mac/m68k early startup fixes
o Mac/m68k Nubus updates
o Atari NVRAM
o m68k typo
o Q40 IRQ typo
o Replace Mac/m68k NS8390 with daynaport driver
o init_rootfs() prototype
o M68k matroxfb
o register_console() comment typo
o Mac/m68k NCR5380 SCSI updates

Gerd Knorr <[email protected]>:
o videodev bugfix
o add bt832 driver
o bttv documentation update
o tuner update
o i2c tv modules update

Greg Kroah-Hartman <[email protected]>:
o USB: fix ehci build problem for older versions of gcc
o USB bluetooth: fix incorrect url in help text
o USB: Move the scanner ioctls to usb_scanner_ioctl.h to allow access by archs that need it

Harald Welte <[email protected]>:
o [NETFILTER]: This patch fixes the ULOG target when logging packets without any ethernet header (mac address).

Ivan Kokshaysky <[email protected]>:
o alpha update
o alpha: titan, marvel, srmcons updates

Jeff Garzik <[email protected]>:
o [netdrvr tg3] s/spin_lock/spin_lock_irqsave/ in tg3_poll and tg3_timer
o [netdrvr tg3] Better interrupt masking
o [netdrvr tg3] flush irq-mask reg write before checking hw status block, in tg3_enable_ints.
o [netdrvr tg3] manage jumbo flag on MTU change when interface is down
o [netdrvr e100] remove file e100_proc, missed in previous patch (standard stats)
o [netdrvr tg3] more verbose failures, during initialization

Jens Axboe <[email protected]>:
o Fix ide highmem scatterlist setup
o fix CONFIG_IDE_DMA_ONLYDISK
o IDE: Do not call bh_phys() on buffers with invalid b_page

John Stultz <[email protected]>:
o Compensate lost ticks in x440s

Kai Germaschewski <[email protected]>:
o ISDN: Remove unfinished driver
o ISDN: Improve DTMF detection
o ISDN: Fix HiSax/ISAR fax handling bug
o ISDN: Add locking for list access
o ISDN: Add ISDN side support for Auerswald USB ISDN support
o ISDN: Small HiSax cleanups

Khalid Aziz <[email protected]>:
o Avoid ide-scsi from starting DMA too soon

Marcel Holtmann <[email protected]>:
o [Bluetooth] Make READ_VOICE_SETTING available for normal users
o [Bluetooth] Replace info message about SCO MTU with BT_DBG
o [Bluetooth] Remove wrong check for size value in rfcomm_wmalloc()

Marcelo Tosatti <[email protected]>:
o Changed EXTRAVERSION to -pre4

Olaf Hering <[email protected]>:
o autofs compat for ppc

Oleg Drokin <[email protected]>:
o reiserfs: iput deadlock fix - do not call iput() from inside of transaction

Patrick McHardy <[email protected]>:
o [NETFILTER]: Fix ipt_REJECT udp checksums
o [NETFILTER]: Fix incremental TCP checksum in ECN module
o [PPP]: Handle filtering drops correctly

Paul Gortmaker <[email protected]>:
o Fix wildcards in RTC alarm settings

Paul Mackerras <[email protected]>:
o add prctls for FP exception control

Petr Vandrovec <[email protected]>:
o Fix non-G450/G550 build of matroxfb

Randy Dunlap <[email protected]>:
o usb-skeleton MINOR_BASE change

Richard Henderson <[email protected]>:
o [ALPHA] Add debugging access (core and ptrace) to the PAL unique value.

Robert Olsson <[email protected]>:
o [NAPI]: Discuss some more issues in driver HOWTO

Scott Feldman <[email protected]>:
o [netdrvr e100] Sync 2.4.x driver with 2.5.x driver
o [netdrvr e100] udelay a better way
o [netdrvr e100] standardize nic-specific stats output
o [netdrvr e100] fix TxDescriptor bit setting
o [netdrvr e1000] allocate ethtool eeprom buffer dynamically, rather than a large static allocation on the stack
o [netdrvr e1000] remove /proc support
o [netdrvr e1000] Add ethtool GSTATS support

Simon Evans <[email protected]>:
o USB: Backport konicawc driver to 2.4

Tom Callaway <[email protected]>:
o [SUNLANCE]: Add missing asm/machine.h include for sun4 builds
o [SPARC64]: Add USB scanner ioctls to 32-bit compat table

Trond Myklebust <[email protected]>:
o Fix Oopsable NFS condition in 2.4.21-preX

Vojtech Pavlik <[email protected]>:
o Fix the JSIOCGABSMAP et al ioctls in joydev.c
o Add new devices support to I-Force driver


2003-01-29 06:18:05

by John Kim

[permalink] [raw]
Subject: Re: Linux 2.4.21-pre4


Marcelo,

Having CONFIG_DRM40_I810=y causes following compile error:

i810_dma.c: In function `i810_unmap_buffer':
i810_dma.c:234: too many arguments to function `do_munmap'


Following patch fixes that breakage.

John Kim


--- linux-2.4.21-pre4/drivers/char/drm-4.0/i810_dma.c 2003-01-28 23:30:41.000000000 -0500
+++ linux-2.4.21-pre4-new/drivers/char/drm-4.0/i810_dma.c 2003-01-29 01:14:28.000000000 -0500
@@ -231,7 +231,7 @@
#else
retcode = do_munmap(current->mm,
(unsigned long)buf_priv->virtual,
- (size_t) buf->total, 1);
+ (size_t) buf->total);
#endif
up_write(&current->mm->mmap_sem);
}

2003-01-29 08:01:54

by Denis Vlasenko

[permalink] [raw]
Subject: Re: Linux 2.4.21-pre4

On 29 January 2003 05:44, Marcelo Tosatti wrote:
> So here goes -pre4...
>
> Alan Cox <[email protected]>:
> o allow people to build M686 without PGE kernels
> o more vaio apm blacklist entries
> o mp oops fix
> o MP message improvements
> o remove confusing MP report
> o nmi stack usage
> o fix linux crash on boot with some boarss
> o fix up cx86 docs
> o IPMI driver
> o enable ipmi config
> o fix compile of 4.0 DRM
> o more parisc specific merge bits
> o parisc mux driver (parisc specific)
> o disable taskfile I/O
> o further IDE tape fixes
> o Skip disabled IDE generic controllers
> o Add ide software raid driver for Medley IDE raid
> o add support for Nvidia nForce2 IDE
> o Allow DMA setup on radeon IGP now we think its fixed
> o allow selection of SI raid
> o fix packet padding on 3c501
> o fix packet padding on the 3c505
> o more unusual USB storage devices
> o fix packet padding on the 3c507
> o fix packet padding on the 3c523
> o fix packet padding on the 7990
> o fix packet padding on the 8139too
> o fix 8390 packet padding
> o fix packet padding on at1700
> o fix packet padding on atp
> o fix de600/20 packet padding
> o fix ni5010 packet padding
> o fix ni52 packet padding
> o fix packet padding on ni65
> o fix packet padding on axnet_cs
> o fix padding on sgiseeq
> o fix sk_g16 padding
> o fix sun3_82586 padding
> o fix sun3lance packet padding
> o further dscc4 updates
> o document undocumentend field in SCSI headers
> o fix ad1889 warning - void functions dont return values
> o more unusual USB storage devices
> o ; cut the mount hash table down to a sane size, and fix printk
> o fix casting in pci dma
> o parisc header update
> o fix msdos end markers for compatibility with cameras etc

Alan is unbelievable. 8)
--
vda

2003-01-29 08:33:29

by Alan

[permalink] [raw]
Subject: Re: Linux 2.4.21-pre4

On Wed, 2003-01-29 at 08:03, Denis Vlasenko wrote:
> On 29 January 2003 05:44, Marcelo Tosatti wrote:
> > So here goes -pre4...
> >
> > Alan Cox <[email protected]>:
> > o allow people to build M686 without PGE kernels
> > o parisc header update
> > o fix msdos end markers for compatibility with cameras etc
>
> Alan is unbelievable. 8)

I sent all those to Marcelo. I didn't write them all. That would be
unbelievable indeed.

2003-01-29 12:39:58

by Eyal Lebedinsky

[permalink] [raw]
Subject: Re: Linux 2.4.21-pre4

--- linux/drivers/ieee1394/sbp2.c.orig Thu Dec 19 10:22:33 2002
+++ linux/drivers/ieee1394/sbp2.c Thu Dec 19 10:23:17 2002
@@ -1511,7 +1511,7 @@
* physical dma in hardware). Mostly just here for debugging...
*/
static int sbp2_handle_physdma_write(struct hpsb_host *host, int nodeid, int destid, quadlet_t *data,
- u64 addr, unsigned int length)
+ u64 addr, unsigned int length, u16 flags)
{

/*
@@ -1527,7 +1527,7 @@
* physical dma in hardware). Mostly just here for debugging...
*/
static int sbp2_handle_physdma_read(struct hpsb_host *host, int nodeid, quadlet_t *data,
- u64 addr, unsigned int length)
+ u64 addr, unsigned int length, u16 flags)
{

/*


Attachments:
2.4.21-pre4-char.patch (438.00 B)
2.4.21-pre4-sbp2.patch (830.00 B)
Download all attachments

2003-01-29 12:54:53

by Maciej Soltysiak

[permalink] [raw]
Subject: Re: Linux 2.4.21-pre4

> David S. Miller <[email protected]>:
> o [USB]: rtl8150.c needs linux/init.h
> o [TCP]: Add tcp_low_latency sysctl
Any comments on that? A bit more than is in the sysctl documentation.

2003-01-29 21:43:45

by Thomas Davis

[permalink] [raw]
Subject: Re: Linux 2.4.21-pre4

--- linux-2.4.21-pre2/drivers/sound/ac97_codec.c Tue Dec 24 15:37:53 2002
+++ linux-2.4.20-ac1/drivers/sound/ac97_codec.c Fri Dec 6 00:07:04 2002
@@ -133,6 +133,7 @@
{0x43525931, "Cirrus Logic CS4299 rev A", &crystal_digital_ops},
{0x43525933, "Cirrus Logic CS4299 rev C", &crystal_digital_ops},
{0x43525934, "Cirrus Logic CS4299 rev D", &crystal_digital_ops},
+ {0x44543031, "Forte Media FM801", &null_ops},
{0x45838308, "ESS Allegro ES1988", &null_ops},
{0x49434511, "ICE1232", &null_ops}, /* I hope --jk */
{0x4e534331, "National Semiconductor LM4549", &null_ops},


Attachments:
forte_ac97_codec.diff (589.00 B)

2003-01-30 00:37:58

by John Fremlin

[permalink] [raw]
Subject: sys_sendfile64 not in Linux 2.4.21-pre4


Why isn't sendfile64 included in 2.4.21-pre4? glibc 2.3 already
expects it, so programs with 64-bit off_t will not be able to use
sendfile otherwise. And the patch is IIUC very small . . .

2003-01-30 08:20:07

by Christoph Hellwig

[permalink] [raw]
Subject: Re: sys_sendfile64 not in Linux 2.4.21-pre4

On Thu, Jan 30, 2003 at 12:47:14AM +0000, John Fremlin wrote:
>
> Why isn't sendfile64 included in 2.4.21-pre4? glibc 2.3 already
> expects it, so programs with 64-bit off_t will not be able to use
> sendfile otherwise. And the patch is IIUC very small . . .

I sent patches to Marcelo a few times, but they got silently ignored..

2003-01-30 10:31:07

by Alan

[permalink] [raw]
Subject: Re: sys_sendfile64 not in Linux 2.4.21-pre4

On Thu, 2003-01-30 at 08:29, Christoph Hellwig wrote:
> On Thu, Jan 30, 2003 at 12:47:14AM +0000, John Fremlin wrote:
> >
> > Why isn't sendfile64 included in 2.4.21-pre4? glibc 2.3 already
> > expects it, so programs with 64-bit off_t will not be able to use
> > sendfile otherwise. And the patch is IIUC very small . . .
>
> I sent patches to Marcelo a few times, but they got silently ignored..

Can you forward me a copy ?

2003-01-30 10:39:23

by Alan

[permalink] [raw]
Subject: Re: Linux 2.4.21-pre4

On Wed, 2003-01-29 at 21:53, Thomas Davis wrote:
> This simple one line patch adds the missing ac97 support that the fm801
> driver already uses.

FM801 is a card not a codec

2003-01-30 10:53:21

by Marc-Christian Petersen

[permalink] [raw]
Subject: Re: sys_sendfile64 not in Linux 2.4.21-pre4

On Thursday 30 January 2003 12:33, Alan Cox wrote:

> On Thu, 2003-01-30 at 08:29, Christoph Hellwig wrote:
> > On Thu, Jan 30, 2003 at 12:47:14AM +0000, John Fremlin wrote:
> > > Why isn't sendfile64 included in 2.4.21-pre4? glibc 2.3 already
> > > expects it, so programs with 64-bit off_t will not be able to use
> > > sendfile otherwise. And the patch is IIUC very small . . .
> >
> > I sent patches to Marcelo a few times, but they got silently ignored..
>
> Can you forward me a copy ?
to me too please :)

ciao, Marc

2003-01-30 11:08:26

by Christoph Hellwig

[permalink] [raw]
Subject: Re: sys_sendfile64 not in Linux 2.4.21-pre4

On Thu, Jan 30, 2003 at 12:02:01PM +0100, Marc-Christian Petersen wrote:
> > > > Why isn't sendfile64 included in 2.4.21-pre4? glibc 2.3 already
> > > > expects it, so programs with 64-bit off_t will not be able to use
> > > > sendfile otherwise. And the patch is IIUC very small . . .
> > >
> > > I sent patches to Marcelo a few times, but they got silently ignored..
> >
> > Can you forward me a copy ?
> to me too please :)


--- linux-2.4.18/arch/i386/kernel/entry.S~ Sun Jun 9 13:39:14 2002
+++ linux-2.4.18/arch/i386/kernel/entry.S Sun Jun 9 13:44:45 2002
@@ -645,7 +645,7 @@
.long SYMBOL_NAME(sys_ni_syscall) /* reserved for lremovexattr */
.long SYMBOL_NAME(sys_ni_syscall) /* reserved for fremovexattr */
.long SYMBOL_NAME(sys_tkill)
- .long SYMBOL_NAME(sys_ni_syscall) /* reserved for sendfile64 */
+ .long SYMBOL_NAME(sys_sendfile64)
.long SYMBOL_NAME(sys_ni_syscall) /* 240 reserved for futex */
.long SYMBOL_NAME(sys_ni_syscall) /* reserved for sched_setaffinity */
.long SYMBOL_NAME(sys_ni_syscall) /* reserved for sched_getaffinity */
--- linux-2.4.18/mm/filemap.c~ Sun Jun 9 13:39:21 2002
+++ linux-2.4.18/mm/filemap.c Sun Jun 9 13:48:38 2002
@@ -1889,7 +1889,7 @@
return written;
}

-asmlinkage ssize_t sys_sendfile(int out_fd, int in_fd, off_t *offset, size_t count)
+static ssize_t common_sendfile(int out_fd, int in_fd, loff_t *offset, size_t count)
{
ssize_t retval;
struct file * in_file, * out_file;
@@ -1934,27 +1934,19 @@
retval = 0;
if (count) {
read_descriptor_t desc;
- loff_t pos = 0, *ppos;
-
- retval = -EFAULT;
- ppos = &in_file->f_pos;
- if (offset) {
- if (get_user(pos, offset))
- goto fput_out;
- ppos = &pos;
- }
+
+ if (!offset)
+ offset = &in_file->f_pos;

desc.written = 0;
desc.count = count;
desc.buf = (char *) out_file;
desc.error = 0;
- do_generic_file_read(in_file, ppos, &desc, file_send_actor);
+ do_generic_file_read(in_file, offset, &desc, file_send_actor);

retval = desc.written;
if (!retval)
retval = desc.error;
- if (offset)
- put_user(pos, offset);
}

fput_out:
@@ -1965,6 +1957,42 @@
return retval;
}

+asmlinkage ssize_t sys_sendfile(int out_fd, int in_fd, off_t *offset, size_t count)
+{
+ loff_t pos, *ppos = NULL;
+ ssize_t ret;
+
+ if (offset) {
+ off_t off;
+ if (unlikely(get_user(off, offset)))
+ return -EFAULT;
+ pos = off;
+ ppos = &pos;
+ }
+
+ ret = common_sendfile(out_fd, in_fd, ppos, count);
+ if (offset)
+ put_user((off_t)pos, offset);
+ return ret;
+}
+
+asmlinkage ssize_t sys_sendfile64(int out_fd, int in_fd, loff_t *offset, size_t count)
+{
+ loff_t pos, *ppos = NULL;
+ ssize_t ret;
+
+ if (offset) {
+ if (unlikely(copy_from_user(&pos, offset, sizeof(loff_t))))
+ return -EFAULT;
+ ppos = &pos;
+ }
+
+ ret = common_sendfile(out_fd, in_fd, ppos, count);
+ if (offset)
+ put_user(pos, offset);
+ return ret;
+}
+
static ssize_t do_readahead(struct file *file, unsigned long index, unsigned long nr)
{
struct address_space *mapping = file->f_dentry->d_inode->i_mapping;

2003-01-30 17:00:20

by Thomas Davis

[permalink] [raw]
Subject: Re: Linux 2.4.21-pre4

Alan Cox wrote:
> On Wed, 2003-01-29 at 21:53, Thomas Davis wrote:
>
>>This simple one line patch adds the missing ac97 support that the fm801
>>driver already uses.
>
>
> FM801 is a card not a codec
>

Sorry, this then adds to the ac97 codec list the fm801, which has a ac97
codec on it, and takes it from being "unknown" to "known".

The forte driver uses the ac97codec code; with this, ac97_probe_codec
registers it correctly as Forte Media, and not unknown.

No, it doesn't change the codec_ops - it just gets codec->name correct.
Yea, it is comestic, but some mixers didn't like it having a name of
"Unknown".

Better?

thomas

2003-01-30 17:17:22

by Thomas Davis

[permalink] [raw]
Subject: Re: Linux 2.4.21-pre4

Alan Cox wrote:
> On Thu, 2003-01-30 at 17:09, Thomas Davis wrote:
>
>>>FM801 is a card not a codec
>>>
>>
>>Sorry, this then adds to the ac97 codec list the fm801, which has a ac97
>>codec on it, and takes it from being "unknown" to "known".
>>
>>The forte driver uses the ac97codec code; with this, ac97_probe_codec
>>registers it correctly as Forte Media, and not unknown.
>
>
> FM801 is still the card not the codec. Somewhere on the FM801 is a 48pin AC97 codec,
> it may even vary by card version, much like I have intel i810 audio with a variety
> of codec devices.
>

Yes, I agree on that.. I'm just trying to get the name "Forte Media
FM801" instead of "Unknown" to show up in the ac97 list.

thomas

2003-01-30 17:13:42

by Alan

[permalink] [raw]
Subject: Re: Linux 2.4.21-pre4

On Thu, 2003-01-30 at 17:09, Thomas Davis wrote:
> > FM801 is a card not a codec
> >
>
> Sorry, this then adds to the ac97 codec list the fm801, which has a ac97
> codec on it, and takes it from being "unknown" to "known".
>
> The forte driver uses the ac97codec code; with this, ac97_probe_codec
> registers it correctly as Forte Media, and not unknown.

FM801 is still the card not the codec. Somewhere on the FM801 is a 48pin AC97 codec,
it may even vary by card version, much like I have intel i810 audio with a variety
of codec devices.

2003-01-30 17:24:21

by Alan

[permalink] [raw]
Subject: Re: Linux 2.4.21-pre4

On Thu, 2003-01-30 at 17:26, Thomas Davis wrote:
> > FM801 is still the card not the codec. Somewhere on the FM801 is a 48pin AC97 codec,
> > it may even vary by card version, much like I have intel i810 audio with a variety
> > of codec devices.
> >
>
> Yes, I agree on that.. I'm just trying to get the name "Forte Media
> FM801" instead of "Unknown" to show up in the ac97 list.

Why ? How do you even know the codec is made by forte media ?

2003-01-30 17:44:22

by Thomas Davis

[permalink] [raw]
Subject: Re: Linux 2.4.21-pre4

Alan Cox wrote:

> On Thu, 2003-01-30 at 17:26, Thomas Davis wrote:
>
> >>FM801 is still the card not the codec. Somewhere on the FM801 is a
> 48pin AC97 codec,
> >>it may even vary by card version, much like I have intel i810 audio
> with a variety
> >>of codec devices.
> >>
> >
> >Yes, I agree on that.. I'm just trying to get the name "Forte Media
> >FM801" instead of "Unknown" to show up in the ac97 list.
>
>
> Why ? How do you even know the codec is made by forte media ?
>

because the forte driver does this:

[tdavis@lanshark sound]$ grep ac97 forte.c
#include <linux/ac97_codec.h>
spinlock_t ac97_lock;
struct ac97_codec *ac97;
* forte_ac97_wait:
forte_ac97_wait (struct forte_chip *chip)
* forte_ac97_read:
forte_ac97_read (struct ac97_codec *codec, u8 reg)
spin_lock (&chip->ac97_lock);
if (forte_ac97_wait (chip)) {
printk (KERN_ERR PFX "ac97_read: Serial bus busy\n");
if (forte_ac97_wait (chip)) {
printk (KERN_ERR PFX "ac97_read: Bus busy reading reg
0x%x\n",
printk (KERN_ERR PFX "ac97_read: Invalid data port");
spin_unlock (&chip->ac97_lock);
* forte_ac97_write:
forte_ac97_write (struct ac97_codec *codec, u8 reg, u16 val)
spin_lock (&chip->ac97_lock);
if (forte_ac97_wait (chip)) {
printk (KERN_ERR PFX "ac97_write: Serial bus busy\n");
if (forte_ac97_wait (chip)) {
printk (KERN_ERR PFX "ac97_write: Bus busy after write\n");
spin_unlock (&chip->ac97_lock);
file->private_data = chip->ac97;
struct ac97_codec *codec = (struct ac97_codec *)
file->private_data;
if (!create_proc_read_entry("driver/forte/ac97", 0, 0,
ac97_read_proc, forte->ac97)) {
remove_proc_entry ("driver/forte/ac97", NULL);
struct ac97_codec *codec;
if ((codec = kmalloc (sizeof (struct ac97_codec), GFP_KERNEL))
== NULL)
memset (codec, 0, sizeof (struct ac97_codec));
codec->codec_read = forte_ac97_read;
codec->codec_write = forte_ac97_write;
if (ac97_probe_codec (codec) == 0) {
chip->ac97 = codec;
spin_lock_init (&chip->ac97_lock);
unregister_sound_mixer (chip->ac97->dev_mixer);

ie, it has a ac97 support in the driver, it calls ac97_probe_codec?

Is that enough or not?

2003-01-30 18:31:27

by Alan

[permalink] [raw]
Subject: Re: Linux 2.4.21-pre4

On Thu, 2003-01-30 at 17:53, Thomas Davis wrote:
>
> ie, it has a ac97 support in the driver, it calls ac97_probe_codec?
>
> Is that enough or not?

The codec and the sound card are two seperate things. The FM801
hardware has an AC97 digital interface that talks to a codec chip
of which there are a considerable number. Which one depends on
who made the specific board you have. The ac97 side isnt part
of the FM801 any more than a PC motherboard automatically
has an Intel CPU

2003-01-30 18:37:20

by Thomas Davis

[permalink] [raw]
Subject: Re: Linux 2.4.21-pre4

Alan Cox wrote:

> On Thu, 2003-01-30 at 17:53, Thomas Davis wrote:
>
> >ie, it has a ac97 support in the driver, it calls ac97_probe_codec?
> >
> >Is that enough or not?
>
>
> The codec and the sound card are two seperate things. The FM801
> hardware has an AC97 digital interface that talks to a codec chip
> of which there are a considerable number. Which one depends on
> who made the specific board you have. The ac97 side isnt part
> of the FM801 any more than a PC motherboard automatically
> has an Intel CPU
>

Ok, fine.

How do I get the name in there other than "Unknown"?

It's a single chip card.

Thanks.

thomas

2003-01-30 23:04:10

by Martin K. Petersen

[permalink] [raw]
Subject: Re: Linux 2.4.21-pre4

>>>>> "Thomas" == Thomas Davis <[email protected]> writes:

Thomas,

Alan is right. I have yet to see an FM801 with the AC97 codec
on the chip.

Thomas> How do I get the name in there other than "Unknown"?

Thomas> It's a single chip card.

What kind of card is it? Are you sure there isn't a tiny codec chip
hiding somewhere?

--
Martin K. Petersen http://mkp.net/

2003-01-30 23:21:35

by Thomas Davis

[permalink] [raw]
Subject: Re: Linux 2.4.21-pre4

Martin K. Petersen wrote:

> >>>>>"Thomas" == Thomas Davis writes:
>
>
> Thomas,
>
> Alan is right. I have yet to see an FM801 with the AC97 codec
> on the chip.
>
> Thomas> How do I get the name in there other than "Unknown"?
>
> Thomas> It's a single chip card.
>
> What kind of card is it? Are you sure there isn't a tiny codec chip
> hiding somewhere?
>

We will find out in a few hours - it's at home, not here at work.

thomas

2003-01-31 03:05:17

by Thomas Davis

[permalink] [raw]
Subject: Re: Linux 2.4.21-pre4

--- linux-2.4.21-pre2/drivers/sound/ac97_codec.c Tue Dec 24 15:37:53 2002
+++ linux-2.4.20-ac1/drivers/sound/ac97_codec.c Fri Dec 6 00:07:04 2002
@@ -133,6 +133,7 @@
{0x43525931, "Cirrus Logic CS4299 rev A", &crystal_digital_ops},
{0x43525933, "Cirrus Logic CS4299 rev C", &crystal_digital_ops},
{0x43525934, "Cirrus Logic CS4299 rev D", &crystal_digital_ops},
+ {0x44543031, "Diamond Technology DT0398", &null_ops},
{0x45838308, "ESS Allegro ES1988", &null_ops},
{0x49434511, "ICE1232", &null_ops}, /* I hope --jk */
{0x4e534331, "National Semiconductor LM4549", &null_ops},


Attachments:
forte_ac97_codec (597.00 B)

2003-01-31 03:59:22

by Martin K. Petersen

[permalink] [raw]
Subject: Re: Linux 2.4.21-pre4

>>>>> "Thomas" == Thomas Davis <[email protected]> writes:

>> What kind of card is it? Are you sure there isn't a tiny codec
>> chip hiding somewhere?

Thomas> The card has 3 chips on it

Thomas> 1 - TEA2025 audio stereo amp 2 - DT9011 - ?? 3 - DT0389

Thomas> So, it is ok to make it "Diamond Technology DT0389"?

Your card looks like this, right?

http://www.mkp.net/dt0398.jpg

What does it say on the codec chip? Is that the DT9011?

--
Martin K. Petersen Wild Open Source, Inc.
[email protected] http://www.wildopensource.com/

2003-01-31 04:04:37

by Thomas Davis

[permalink] [raw]
Subject: Re: Linux 2.4.21-pre4

Martin K. Petersen wrote:
>>>>>>"Thomas" == Thomas Davis <[email protected]> writes:
>
>
>>>What kind of card is it? Are you sure there isn't a tiny codec
>>>chip hiding somewhere?
>
>
> Thomas> The card has 3 chips on it
>
> Thomas> 1 - TEA2025 audio stereo amp 2 - DT9011 - ?? 3 - DT0389
>
> Thomas> So, it is ok to make it "Diamond Technology DT0389"?
>
> Your card looks like this, right?
>
> http://www.mkp.net/dt0398.jpg
>
> What does it say on the codec chip? Is that the DT9011?
>

yup, in itty bitty print.

I can find references to the dt0389, but not to the dt9011.

t

2003-01-31 04:21:29

by Martin K. Petersen

[permalink] [raw]
Subject: Re: Linux 2.4.21-pre4

>>>>> "Thomas" == Thomas Davis <[email protected]> writes:

>> What does it say on the codec chip? Is that the DT9011?

Thomas> yup, in itty bitty print.

In that case I'd suggest the following:

--- linux-2.4.21-pre2/drivers/sound/ac97_codec.c Tue Dec 24 15:37:53 2002
+++ linux-2.4.20-ac1/drivers/sound/ac97_codec.c Fri Dec 6 00:07:04 2002
@@ -133,6 +133,7 @@
{0x43525931, "Cirrus Logic CS4299 rev A", &crystal_digital_ops},
{0x43525933, "Cirrus Logic CS4299 rev C", &crystal_digital_ops},
{0x43525934, "Cirrus Logic CS4299 rev D", &crystal_digital_ops},
+ {0x44543031, "Diamond Technologies DT9011", &null_ops},
{0x45838308, "ESS Allegro ES1988", &null_ops},
{0x49434511, "ICE1232", &null_ops}, /* I hope --jk */
{0x4e534331, "National Semiconductor LM4549", &null_ops},

2003-01-31 04:39:33

by Thomas Davis

[permalink] [raw]
Subject: Re: Linux 2.4.21-pre4

The problem I have with that, is no one knows what that is.

I do understand why you want that - in case there's another card that uses it.

The DT0893 at least means something - it's in big print on it.

thomas

Martin K. Petersen wrote:
>>>>>>"Thomas" == Thomas Davis <[email protected]> writes:
>
>
>>>What does it say on the codec chip? Is that the DT9011?
>
>
> Thomas> yup, in itty bitty print.
>
> In that case I'd suggest the following:
>
> --- linux-2.4.21-pre2/drivers/sound/ac97_codec.c Tue Dec 24 15:37:53 2002
> +++ linux-2.4.20-ac1/drivers/sound/ac97_codec.c Fri Dec 6 00:07:04 2002
> @@ -133,6 +133,7 @@
> {0x43525931, "Cirrus Logic CS4299 rev A", &crystal_digital_ops},
> {0x43525933, "Cirrus Logic CS4299 rev C", &crystal_digital_ops},
> {0x43525934, "Cirrus Logic CS4299 rev D", &crystal_digital_ops},
> + {0x44543031, "Diamond Technologies DT9011", &null_ops},
> {0x45838308, "ESS Allegro ES1988", &null_ops},
> {0x49434511, "ICE1232", &null_ops}, /* I hope --jk */
> {0x4e534331, "National Semiconductor LM4549", &null_ops},


2003-01-31 06:08:01

by Thomas Davis

[permalink] [raw]
Subject: Re: Linux 2.4.21-pre4

hmm.. how about - DT9011 doesn't mean crap to any one.. DT0893 is printed in big clear letters on it.

this is what things like kmix (from kde) uses to indicate sound card.

so put both on it.

thomas

Martin K. Petersen wrote:
>>>>>>"Thomas" == Thomas Davis <[email protected]> writes:
>
>
>>>What does it say on the codec chip? Is that the DT9011?
>
>
> Thomas> yup, in itty bitty print.
>
> In that case I'd suggest the following:
>
--- linux-2.4.21-pre2/drivers/sound/ac97_codec.c Tue Dec 24 15:37:53 2002
+++ linux-2.4.20-ac1/drivers/sound/ac97_codec.c Fri Dec 6 00:07:04 2002
@@ -133,6 +133,7 @@
{0x43525931, "Cirrus Logic CS4299 rev A", &crystal_digital_ops},
{0x43525933, "Cirrus Logic CS4299 rev C", &crystal_digital_ops},
{0x43525934, "Cirrus Logic CS4299 rev D", &crystal_digital_ops},
+ {0x44543031, "Diamond Technologies DT0893/DT9011", &null_ops},
{0x45838308, "ESS Allegro ES1988", &null_ops},
{0x49434511, "ICE1232", &null_ops}, /* I hope --jk */
{0x4e534331, "National Semiconductor LM4549", &null_ops},


2003-02-01 23:14:50

by Adrian Bunk

[permalink] [raw]
Subject: Re: Linux 2.4.21-pre4

I get the following compile error in 2.4.21-pre4:

<-- snip -->

...
ld -m elf_i386 -r -o idedriver-raid.o ataraid.o pdcraid.o hptraid.o
silraid.o
silraid.o(.text+0x31c): In function `partition_map_normal':
: multiple definition of `partition_map_normal'
pdcraid.o(.text+0x31c): first defined here
make[4]: *** [idedriver-raid.o] Error 1
make[4]: Leaving directory
`/home/bunk/linux/kernel-2.4/linux-2.4.20-full/drivers/ide/raid'

<-- snip -->

The following patch (stolen from -ac) fixes it:

--- linux.21pre4/drivers/ide/raid/silraid.c 2003-01-29 17:07:45.000000000 +0000
+++ linux.21pre4-ac1/drivers/ide/raid/silraid.c 2003-01-09 19:43:30.000000000 +0000
@@ -157,7 +157,7 @@
}


-unsigned long partition_map_normal(unsigned long block, unsigned long partition_off, unsigned long partition_size, int stride)
+static unsigned long partition_map_normal(unsigned long block, unsigned long partition_off, unsigned long partition_size, int stride)
{
return block + partition_off;
}


cu
Adrian

--

"Is there not promise of rain?" Ling Tan asked suddenly out
of the darkness. There had been need of rain for many days.
"Only a promise," Lao Er said.
Pearl S. Buck - Dragon Seed

2003-02-02 10:56:55

by Adrian Bunk

[permalink] [raw]
Subject: Re: Linux 2.4.21-pre4

On Wed, Jan 29, 2003 at 01:44:49AM -0200, Marcelo Tosatti wrote:

>...
> Summary of changes from v2.4.21-pre3 to v2.4.21-pre4
> ============================================
>...
> Alan Cox <[email protected]>:
>...
> o fix packet padding on the 3c523
>...

This causes the following compile error:

<-- snip -->

...
gcc -D__KERNEL__ -I/home/bunk/linux/kernel-2.4/linux-2.4.20-full/include
-Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing
-fno-common -pipe -mpreferred-stack-boundary=2 -march=k6 -nostdinc
-iwithprefix include -DKBUILD_BASENAME=3c523 -c -o 3c523.o 3c523.c
3c523.c:1128: macro `memset' used with just one arg
3c523.c: In function `elmc_send_packet':
3c523.c:1128: parse error before `)'
3c523.c:1128: structure has no member named `xmit'
3c523.c:1128: parse error before `)'
3c523.c:1128: parse error before `)'
3c523.c:1128: parse error before `)'
3c523.c:1128: warning: left-hand operand of comma expression has no effect
3c523.c:1128: warning: left-hand operand of comma expression has no effect
3c523.c:1128: parse error before `:'
make[3]: *** [3c523.o] Error 1
make[3]: Leaving directory `/home/bunk/linux/kernel-2.4/linux-2.4.20-full/drivers/net'

<-- snip -->


The simple fix (stolen from -ac) is:

--- linux.21pre4/drivers/net/3c523.c 2003-01-29 17:07:45.000000000 +0000
+++ linux.21pre4-ac1/drivers/net/3c523.c 2003-01-09 00:47:04.000000000 +0000
@@ -1125,7 +1125,7 @@
len = (ETH_ZLEN < skb->len) ? skb->len : ETH_ZLEN;

if(len != skb->len)
- memset((char *) p->xmit_cbuffs[p->xmit)count], 0, ETH_ZLEN);
+ memset((char *) p->xmit_cbuffs[p->xmit_count], 0, ETH_ZLEN);
memcpy((char *) p->xmit_cbuffs[p->xmit_count], (char *) (skb->data), skb->len);

#if (NUM_XMIT_BUFFS == 1)



cu
Adrian

--

"Is there not promise of rain?" Ling Tan asked suddenly out
of the darkness. There had been need of rain for many days.
"Only a promise," Lao Er said.
Pearl S. Buck - Dragon Seed

2003-02-02 12:34:29

by Alan

[permalink] [raw]
Subject: Re: Linux 2.4.21-pre4

On Sun, 2003-02-02 at 11:06, Adrian Bunk wrote:
> On Wed, Jan 29, 2003 at 01:44:49AM -0200, Marcelo Tosatti wrote:
>
> >...
> > Summary of changes from v2.4.21-pre3 to v2.4.21-pre4
> > ============================================
> >...
> > Alan Cox <[email protected]>:
> >...
> > o fix packet padding on the 3c523
> >...
>
> This causes the following compile error:

Fix already sent to Marcelo

2003-02-10 15:59:24

by Jörn Engel

[permalink] [raw]
Subject: Re: Linux 2.4.21-pre4

Hi!

I got the following compile error on i386. Config is rather long.
http://wh.fh-wedel.de/~joern/.config

make[1]: Entering directory `/home/joern/i386/linux-2.4.21-pre4/kernel'
make all_targets
make[2]: Entering directory `/home/joern/i386/linux-2.4.21-pre4/kernel'
gcc -D__KERNEL__ -I/home/joern/i386/linux-2.4.21-pre4/include -Wall -Wstrict-pro
totypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common -pipe -mpreferred-st
ack-boundary=2 -march=i686 -nostdinc -iwithprefix include -DKBUILD_BASENAME=sc
hed -fno-omit-frame-pointer -c -o sched.o sched.c
beam_compile -DKBUILD_BASENAME=sched -fno-omit-frame-pointer -c sched.c
In file included from /usr/include/linux/timex.h:152,
from /usr/include/linux/sched.h:14,
from /usr/include/linux/mm.h:4,
from sched.c:23:
/usr/include/asm/timex.h:10:21: asm/msr.h: No such file or directory
In file included from /usr/include/linux/sched.h:14,
from /usr/include/linux/mm.h:4,
from sched.c:23:
/usr/include/linux/timex.h:173: field `time' has incomplete type
In file included from /usr/include/linux/bitops.h:69,
from /usr/include/asm/system.h:7,
from /usr/include/linux/sched.h:16,
from /usr/include/linux/mm.h:4,
from sched.c:23:
/usr/include/asm/bitops.h:333:2: warning: #warning This includefile is not avail
able on all architectures.
/usr/include/asm/bitops.h:334:2: warning: #warning Using kernel headers in users
pace.
In file included from /usr/include/linux/signal.h:4,
from /usr/include/linux/sched.h:25,
from /usr/include/linux/mm.h:4,
from sched.c:23:
/usr/include/asm/signal.h:107: parse error before "sigset_t"
/usr/include/asm/signal.h:110: parse error before '}' token
In file included from /usr/include/linux/timer.h:18,
from /usr/include/linux/sched.h:81,
from /usr/include/linux/mm.h:4,
from sched.c:23:
/usr/include/linux/spinlock.h:131: parse error before '*' token
In file included from /usr/include/linux/sched.h:81,
from /usr/include/linux/mm.h:4,
from sched.c:23:
/usr/include/linux/timer.h:32: field `vec' has incomplete type
/usr/include/linux/timer.h:37: field `vec' has incomplete type
/usr/include/linux/timer.h:63: field `list' has incomplete type
/usr/include/linux/timer.h:121: confused by earlier errors, bailing out
make[2]: *** [sched.o] Error 1
make[2]: Leaving directory `/home/joern/i386/linux-2.4.21-pre4/kernel'
make[1]: *** [first_rule] Error 2
make[1]: Leaving directory `/home/joern/i386/linux-2.4.21-pre4/kernel'
make: *** [_dir_kernel] Error 2


J?rn

--
Optimizations always bust things, because all optimizations are, in
the long haul, a form of cheating, and cheaters eventually get caught.
-- Larry Wall