All of lore.kernel.org
 help / color / mirror / Atom feed
From: Henrique Gobbi <henrique2.gobbi@cyclades.com>
To: davej@codemonkey.org.uk
Cc: torvalds@transmeta.com, linux-kernel@vger.kernel.org
Subject: Re: cyclades region handling updates from 2.4
Date: Mon, 24 Mar 2003 09:55:02 +0000	[thread overview]
Message-ID: <3E7ED5F6.9090301@cyclades.com> (raw)
In-Reply-To: 200303241641.h2OGft35008188@deviant.impure.org.uk

Hello,

What is this patch for ? How extensively did you test it.
This driver is working and I don't wanna it broken. There are too many 
customers counting on it.

Another thing. Why do you want to put Ivan Passos as the maintainer ? I 
talk to him everyday and I know he is not, and he doesn't want to be, 
the maintainer of the driver.

kind regards
Henrique
cyclades.c maintainer


davej@codemonkey.org.uk wrote:
> diff -urpN --exclude-from=/home/davej/.exclude bk-linus/drivers/char/cyclades.c linux-2.5/drivers/char/cyclades.c
> --- bk-linus/drivers/char/cyclades.c	2003-03-08 09:56:57.000000000 +0000
> +++ linux-2.5/drivers/char/cyclades.c	2003-03-17 23:42:15.000000000 +0000
> @@ -12,7 +12,7 @@ static char rcsid[] =
>   *
>   * Initially written by Randolph Bentson <bentson@grieg.seaslug.org>.
>   * Modified and maintained by Marcio Saito <marcio@cyclades.com>.
> - * Currently maintained by Henrique Gobbi <henrique.gobbi@cyclades.com>.
> + * Currently maintained by Ivan Passos <ivan@cyclades.com>.
>   *
>   * For Technical support and installation problems, please send e-mail
>   * to support@cyclades.com.
> @@ -883,7 +883,9 @@ static void cyz_poll(unsigned long);
>  static long cyz_polling_cycle = CZ_DEF_POLL;
>  
>  static int cyz_timeron = 0;
> -static struct timer_list cyz_timerlist = TIMER_INITIALIZER(cyz_poll, 0, 0);
> +static struct timer_list cyz_timerlist = {
> +	.function = cyz_poll
> +};
>  
>  #else /* CONFIG_CYZ_INTR */
>  static void cyz_rx_restart(unsigned long);
> @@ -4944,17 +4946,16 @@ cy_detect_pci(void)
>  
>    struct pci_dev	*pdev = NULL;
>    unsigned char		cyy_rev_id;
> -  unsigned char         cy_pci_irq = 0;
> -  uclong		cy_pci_phys0, cy_pci_phys1, cy_pci_phys2;
> +  unsigned char		cy_pci_irq = 0;
> +  uclong		cy_pci_phys0, cy_pci_phys2;
>    uclong		cy_pci_addr0, cy_pci_addr2;
> -  unsigned short        i,j,cy_pci_nchan, plx_ver;
> -  unsigned short        device_id,dev_index = 0;
> +  unsigned short	i,j,cy_pci_nchan, plx_ver;
> +  unsigned short	device_id,dev_index = 0;
>    uclong		mailbox;
>    uclong		Ze_addr0[NR_CARDS], Ze_addr2[NR_CARDS], ZeIndex = 0;
>    uclong		Ze_phys0[NR_CARDS], Ze_phys2[NR_CARDS];
> -  unsigned char         Ze_irq[NR_CARDS];
> -  struct resource *resource;
> -  unsigned long res_start, res_len;
> +  unsigned char		Ze_irq[NR_CARDS];
> +  struct pci_dev	*Ze_pdev[NR_CARDS];
>  
>          for (i = 0; i < NR_CARDS; i++) {
>                  /* look for a Cyclades card by vendor and device id */
> @@ -4976,7 +4977,6 @@ cy_detect_pci(void)
>                  /* read PCI configuration area */
>  		cy_pci_irq = pdev->irq;
>  		cy_pci_phys0 = pci_resource_start(pdev, 0);
> -		cy_pci_phys1 = pci_resource_start(pdev, 1);
>  		cy_pci_phys2 = pci_resource_start(pdev, 2);
>  		pci_read_config_byte(pdev, PCI_REVISION_ID, &cyy_rev_id);
>  
> @@ -5002,15 +5002,10 @@ cy_detect_pci(void)
>  		/* Although we don't use this I/O region, we should
>  		   request it from the kernel anyway, to avoid problems
>  		   with other drivers accessing it. */
> -		resource = request_region(cy_pci_phys1,
> -					CyPCI_Yctl, "Cyclom-Y");
> -		if (resource == NULL) {
> -			printk(KERN_ERR "cyclades: failed to allocate IO "
> -					"resource at 0x%lx\n", cy_pci_phys1);
> +		if (pci_request_regions(pdev, "Cyclom-Y") != 0) {
> +			printk(KERN_ERR "cyclades: failed to reserve PCI resources\n");
>  			continue;
>  		}
> -		res_start = cy_pci_phys1;
> -		res_len = CyPCI_Yctl;
>  
>  #if defined(__alpha__)
>                  if (device_id  == PCI_DEVICE_ID_CYCLOM_Y_Lo) { /* below 1M? */
> @@ -5081,10 +5076,7 @@ cy_detect_pci(void)
>                  cy_card[j].bus_index = 1;
>                  cy_card[j].first_line = cy_next_channel;
>                  cy_card[j].num_chips = cy_pci_nchan/4;
> -		cy_card[j].resource = resource;
> -		cy_card[j].res_start = res_start;
> -		cy_card[j].res_len = res_len;
> -		resource = NULL;	/* For next card */
> +		cy_card[j].pdev = pdev;
>  	
>                  /* enable interrupts in the PCI interface */
>  		plx_ver = cy_readb(cy_pci_addr2 + CyPLX_VER) & 0x0f;
> @@ -5164,15 +5156,10 @@ cy_detect_pci(void)
>  		/* Although we don't use this I/O region, we should
>  		   request it from the kernel anyway, to avoid problems
>  		   with other drivers accessing it. */
> -		resource = request_region(cy_pci_phys1,
> -				CyPCI_Zctl, "Cyclades-Z");
> -		if (resource == NULL) {
> -			printk(KERN_ERR "cyclades: failed ot allocate IO resource "
> -					"at 0x%lx\n", cy_pci_phys1);
> +		if (pci_request_regions(pdev, "Cyclades-Z") != 0) {
> +			printk(KERN_ERR "cyclades: failed to reserve PCI resources\n");
>  			continue;
>  		}
> -		res_start = cy_pci_phys1;
> -		res_len = CyPCI_Zctl;
>  	
>  		if (mailbox == ZE_V1) {
>  		    cy_pci_addr2 = (ulong)ioremap(cy_pci_phys2, CyPCI_Ze_win);
> @@ -5187,6 +5174,7 @@ cy_detect_pci(void)
>  			Ze_addr0[ZeIndex] = cy_pci_addr0;
>  			Ze_addr2[ZeIndex] = cy_pci_addr2;
>  			Ze_irq[ZeIndex] = cy_pci_irq;
> +			Ze_pdev[ZeIndex] = pdev;
>  			ZeIndex++;
>  		    }
>  		    i--;
> @@ -5271,10 +5259,7 @@ cy_detect_pci(void)
>                  cy_card[j].bus_index = 1;
>                  cy_card[j].first_line = cy_next_channel;
>                  cy_card[j].num_chips = -1;
> -		cy_card[j].resource = resource;
> -		cy_card[j].res_start = res_start;
> -		cy_card[j].res_len = res_len;
> -		resource = NULL;	/* For next card */
> +		cy_card[j].pdev = pdev;
>  
>                  /* print message */
>  #ifdef CONFIG_CYZ_INTR
> @@ -5302,12 +5287,14 @@ cy_detect_pci(void)
>  	    cy_pci_addr0 = Ze_addr0[0];
>  	    cy_pci_addr2 = Ze_addr2[0];
>  	    cy_pci_irq = Ze_irq[0];
> +	    pdev = Ze_pdev[0];
>  	    for (j = 0 ; j < ZeIndex-1 ; j++) {
>  		Ze_phys0[j] = Ze_phys0[j+1];
>  		Ze_phys2[j] = Ze_phys2[j+1];
>  		Ze_addr0[j] = Ze_addr0[j+1];
>  		Ze_addr2[j] = Ze_addr2[j+1];
>  		Ze_irq[j] = Ze_irq[j+1];
> +		Ze_pdev[j] = Ze_pdev[j+1];
>  	    }
>  	    ZeIndex--;
>  		mailbox = (uclong)cy_readl(&((struct RUNTIME_9060 *) 
> @@ -5365,6 +5352,7 @@ cy_detect_pci(void)
>                  cy_card[j].bus_index = 1;
>                  cy_card[j].first_line = cy_next_channel;
>                  cy_card[j].num_chips = -1;
> +		cy_card[j].pdev = pdev;
>  
>                  /* print message */
>  #ifdef CONFIG_CYZ_INTR
> @@ -5797,8 +5785,8 @@ cy_cleanup_module(void)
>  #endif /* CONFIG_CYZ_INTR */
>  	    )
>  		free_irq(cy_card[i].irq, &cy_card[i]);
> -		if (cy_card[i].resource)
> -			release_region(cy_card[i].res_start, cy_card[i].res_len);
> +		if (cy_card[i].pdev)
> +			pci_release_regions(cy_card[i].pdev);
>          }
>      }
>      if (tmp_buf) {
> diff -urpN --exclude-from=/home/davej/.exclude bk-linus/include/linux/cyclades.h linux-2.5/include/linux/cyclades.h
> --- bk-linus/include/linux/cyclades.h	2003-03-08 09:57:57.000000000 +0000
> +++ linux-2.5/include/linux/cyclades.h	2003-03-08 07:24:39.000000000 +0000
> @@ -515,9 +515,7 @@ struct cyclades_card {
>      int nports;		/* Number of ports in the card */
>      int bus_index;	/* address shift - 0 for ISA, 1 for PCI */
>      int	intr_enabled;	/* FW Interrupt flag - 0 disabled, 1 enabled */
> -    struct resource *resource;
> -    unsigned long res_start;
> -	unsigned long res_len;
> +    struct pci_dev *pdev;
>  #ifdef __KERNEL__
>      spinlock_t card_lock;
>  #else
> -
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at  http://www.tux.org/lkml/
> 



-- 
regards
--
Henrique Gobbi
Software Engineer

Cyclades Corporation
41829 Albrae St
Fremont, CA 94538


  reply	other threads:[~2003-03-24 17:46 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2003-03-24 16:41 cyclades region handling updates from 2.4 davej
2003-03-24  9:55 ` Henrique Gobbi [this message]
2003-03-24 18:02   ` Dave Jones
2003-03-24 10:11     ` Henrique Gobbi
2003-03-24 18:28       ` Dave Jones
2003-03-24 18:49         ` Henrique Gobbi
2003-03-24 19:13           ` Dave Jones
2003-03-24 22:37 ` Andrew Morton
2003-03-24 20:42   ` Dave Jones

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=3E7ED5F6.9090301@cyclades.com \
    --to=henrique2.gobbi@cyclades.com \
    --cc=davej@codemonkey.org.uk \
    --cc=henrique.gobbi@cyclades.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=torvalds@transmeta.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.