* [PATCH 2.5.8-pre1] pcnet_cs compile fixes
@ 2002-04-04 13:54 Stelian Pop
2002-04-04 19:36 ` Jeff Garzik
0 siblings, 1 reply; 2+ messages in thread
From: Stelian Pop @ 2002-04-04 13:54 UTC (permalink / raw)
To: Linux Kernel Mailing List; +Cc: jgarzik, p_gortmaker
This patch makes pcnet_cs compile again (removal of dev->rmem_start
and dev->rmem_end).
It compiles and works for me as intended, but maybe there is a cleaner
fix by someone who understands better the netdevice internals...
===== drivers/net/pcmcia/pcnet_cs.c 1.7 vs edited =====
--- 1.7/drivers/net/pcmcia/pcnet_cs.c Tue Feb 5 08:55:16 2002
+++ edited/drivers/net/pcmcia/pcnet_cs.c Thu Apr 4 11:27:47 2002
@@ -1460,7 +1460,8 @@
struct e8390_pkt_hdr *hdr,
int ring_page)
{
- void *xfer_start = (void *)(dev->rmem_start + (ring_page << 8)
+ void *xfer_start = (void *)(dev->mem_start + (TX_PAGES<<8)
+ + (ring_page << 8)
- (ei_status.rx_start_page << 8));
copyin((void *)hdr, xfer_start, sizeof(struct e8390_pkt_hdr));
@@ -1473,17 +1474,18 @@
static void shmem_block_input(struct net_device *dev, int count,
struct sk_buff *skb, int ring_offset)
{
- void *xfer_start = (void *)(dev->rmem_start + ring_offset
+ void *xfer_start = (void *)(dev->mem_start + (TX_PAGES<<8)
+ + ring_offset
- (ei_status.rx_start_page << 8));
char *buf = skb->data;
- if (xfer_start + count > (void *)dev->rmem_end) {
+ if (xfer_start + count > (void *)dev->mem_end) {
/* We must wrap the input move. */
- int semi_count = (void*)dev->rmem_end - xfer_start;
+ int semi_count = (void*)dev->mem_end - xfer_start;
copyin(buf, xfer_start, semi_count);
buf += semi_count;
ring_offset = ei_status.rx_start_page << 8;
- xfer_start = (void *)dev->rmem_start;
+ xfer_start = (void *)dev->mem_start + (TX_PAGES<<8);
count -= semi_count;
}
copyin(buf, xfer_start, count);
@@ -1548,8 +1550,7 @@
}
dev->mem_start = (u_long)info->base + offset;
- dev->rmem_start = dev->mem_start + (TX_PAGES<<8);
- dev->mem_end = dev->rmem_end = (u_long)info->base + req.Size;
+ dev->mem_end = (u_long)info->base + req.Size;
ei_status.tx_start_page = start_pg;
ei_status.rx_start_page = start_pg + TX_PAGES;
--
Stelian Pop <stelian.pop@fr.alcove.com>
Alcove - http://www.alcove.com
^ permalink raw reply [flat|nested] 2+ messages in thread* Re: [PATCH 2.5.8-pre1] pcnet_cs compile fixes
2002-04-04 13:54 [PATCH 2.5.8-pre1] pcnet_cs compile fixes Stelian Pop
@ 2002-04-04 19:36 ` Jeff Garzik
0 siblings, 0 replies; 2+ messages in thread
From: Jeff Garzik @ 2002-04-04 19:36 UTC (permalink / raw)
To: Stelian Pop; +Cc: Linux Kernel Mailing List, p_gortmaker
Stelian Pop wrote:
> This patch makes pcnet_cs compile again (removal of dev->rmem_start
> and dev->rmem_end).
>
> It compiles and works for me as intended, but maybe there is a cleaner
> fix by someone who understands better the netdevice internals...
>
>
> ===== drivers/net/pcmcia/pcnet_cs.c 1.7 vs edited =====
> --- 1.7/drivers/net/pcmcia/pcnet_cs.c Tue Feb 5 08:55:16 2002
> +++ edited/drivers/net/pcmcia/pcnet_cs.c Thu Apr 4 11:27:47 2002
> @@ -1460,7 +1460,8 @@
> struct e8390_pkt_hdr *hdr,
> int ring_page)
> {
> - void *xfer_start = (void *)(dev->rmem_start + (ring_page << 8)
> + void *xfer_start = (void *)(dev->mem_start + (TX_PAGES<<8)
> + + (ring_page << 8)
> - (ei_status.rx_start_page << 8));
the earlier poster was more correct: don't remove rmem_start, replacing
it with ei_status.rmem_{start,end}
Anyway, this patch is long completed already, and sent to Linus already.
Jeff
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2002-04-04 19:37 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2002-04-04 13:54 [PATCH 2.5.8-pre1] pcnet_cs compile fixes Stelian Pop
2002-04-04 19:36 ` Jeff Garzik
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox