Re: Pericom PCIe Serial board Support (12d8:7952/4/8) - Chip PI7C9X7952/4/8

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 10/15/2013 08:28 PM, Greg KH wrote:
On Tue, Oct 15, 2013 at 07:20:18PM +0200, Angelo Butti wrote:
I'm really sorry for my mistake.

No worries, but your email client turned all tabs into spaces, and made
the patch imposible to apply :(

Also, maybe that there is a simple way to change the clock without
rewrite the standard serial setup procedure, but I cannot find it ....
Below the correct one:

--- linux-3.10.11-200.fc19.i686/drivers/tty/serial/8250/8250_pci.c.orig
2013-09-16 20:13:52.918548000 +0300
+++ linux-3.10.11-200.fc19.i686/drivers/tty/serial/8250/8250_pci.c
2013-10-15 16:20:18.566685996 +0300
@@ -1308,6 +1308,29 @@ static int pci_default_setup(struct seri
   return setup_port(priv, port, bar, offset, board->reg_shift);
  }

+static int pci_pericom_setup(struct serial_private *priv,
+  const struct pciserial_board *board,
+  struct uart_8250_port *port, int idx)

See?

Also, we need a "Signed-off-by:" line as per the instructions in the
Documentation/SubmittingPatches file (take a look at it for what that
means.)

Care to try again?

thanks,

greg k-h


Ok, I change the email client .... I hope ....

Signed-off-by: Angelo Butti <buttiangelo@xxxxxxxxx>

Regards,
Angelo


--- linux-3.10.11-200.fc19.i686/drivers/tty/serial/8250/8250_pci.c.orig 2013-09-16 20:13:52.918548000 +0300 +++ linux-3.10.11-200.fc19.i686/drivers/tty/serial/8250/8250_pci.c 2013-10-15 16:20:18.566685996 +0300
@@ -1308,6 +1308,29 @@ static int pci_default_setup(struct seri
 	return setup_port(priv, port, bar, offset, board->reg_shift);
 }

+static int pci_pericom_setup(struct serial_private *priv,
+		  const struct pciserial_board *board,
+		  struct uart_8250_port *port, int idx)
+{
+	unsigned int bar, offset = board->first_offset, maxnr;
+
+	bar = FL_GET_BASE(board->flags);
+	if (board->flags & FL_BASE_BARS)
+		bar += idx;
+	else
+		offset += idx * board->uart_offset;
+
+	maxnr = (pci_resource_len(priv->dev, bar) - board->first_offset) >>
+		(board->reg_shift + 3);
+
+	if (board->flags & FL_REGION_SZ_CAP && idx >= maxnr)
+		return 1;
+
+	port->port.uartclk = 14745600;
+
+	return setup_port(priv, port, bar, offset, board->reg_shift);
+}
+
 static int
 ce4100_serial_setup(struct serial_private *priv,
 		  const struct pciserial_board *board,
@@ -1825,6 +1848,31 @@ static struct pci_serial_quirk pci_seria
 		.exit		= pci_plx9050_exit,
 	},
 	/*
+	 * Pericom
+	 */
+	{
+		.vendor		= 0x12d8,
+		.device		= 0x7952,
+		.subvendor	= PCI_ANY_ID,
+		.subdevice	= PCI_ANY_ID,
+		.setup		= pci_pericom_setup,
+	},		
+	{
+		.vendor		= 0x12d8,
+		.device		= 0x7954,
+		.subvendor	= PCI_ANY_ID,
+		.subdevice	= PCI_ANY_ID,
+		.setup		= pci_pericom_setup,
+	},		
+	{
+		.vendor		= 0x12d8,
+		.device		= 0x7958,
+		.subvendor	= PCI_ANY_ID,
+		.subdevice	= PCI_ANY_ID,
+		.setup		= pci_pericom_setup,
+	},		
+
+	/*
 	 * PLX
 	 */
 	{

--
To unsubscribe from this list: send the line "unsubscribe linux-serial" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Kernel Newbies]     [Security]     [Netfilter]     [Bugtraq]     [Linux PPP]     [Linux FS]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Video 4 Linux]     [Linmodem]     [Device Mapper]     [Linux Kernel for ARM]

  Powered by Linux