Skip to content
Snippets Groups Projects
  1. Apr 11, 2013
  2. Mar 28, 2013
  3. Mar 25, 2013
  4. Mar 15, 2013
    • Wang YanQing's avatar
      serial: 8250_pci: Add WCH CH352 quirk to avoid Xscale detection · 8b5c913f
      Wang YanQing authored
      
      The code in 8250.c for detecting ARM/XScale UARTs says:
      
        * Try writing and reading the UART_IER_UUE bit (b6).
        * If it works, this is probably one of the Xscale platform's
        * internal UARTs.
      
      If the above passes, it then goes on to:
      
           * It's an Xscale.
           * We'll leave the UART_IER_UUE bit set to 1 (enabled).
      
      However, the CH352 uses the UART_IER_UUE as the LOWPOWER function,
      so it is readable and writable.  According to the datasheet:
      
          "LOWPOWER:When the bit is 1, close the internal benchmark
           clock of serial port to set into low-power status.
      
      So it essentially gets mis-detected as Xscale, and gets
      powered down in the process.  The device in question where
      this was seen is listed by lspci as:
      
       Serial controller: Device 4348:3253 (rev 10) (prog-if 02 [16550])
      
      Re-using the 353 quirk which just sets flags to fixed and type
      to 16550 is suitable for fixing the 352 as well.
      
      Signed-off-by: default avatarWang YanQing <udknight@gmail.com>
      Signed-off-by: default avatarPaul Gortmaker <paul.gortmaker@windriver.com>
      Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      8b5c913f
  5. Mar 12, 2013
    • Josh Boyer's avatar
      serial: 8250: Keep 8250.<xxxx> module options functional after driver rename · f2b8dfd9
      Josh Boyer authored
      
      With commit 835d844d (8250_pnp: do pnp probe before legacy probe), the
      8250 driver was renamed to 8250_core.  This means any existing usage of
      the 8259.<xxxx> module parameters or as a kernel command line switch is
      now broken, as the 8250_core driver doesn't parse options belonging to
      something called "8250".
      
      To solve this, we redefine the module options in a dummy function using
      a redefined MODULE_PARAM_PREFX when built into the kernel.  In the case
      where we're building as a module, we provide an alias to the old 8250
      name.  The dummy function prevents compiler errors due to global variable
      redefinitions that happen as part of the module_param_ macro expansions.
      
      Signed-off-by: default avatarJosh Boyer <jwboyer@redhat.com>
      Acked-by: default avatarJiri Slaby <jslaby@suse.cz>
      Cc: stable <stable@vger.kernel.org>
      Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      f2b8dfd9
    • Sean Young's avatar
      tty/8250_pnp: serial port detection regression since v3.7 · 77e372a3
      Sean Young authored
      
      The InsydeH2O BIOS (version dated 09/12/2011) has the following in
      its pnp resouces for its serial ports:
      
      $ cat /sys/bus/pnp/devices/00:0b/resources
      state = active
      io disabled
      irq disabled
      
      We do not check if the resources are disabled, and create a bogus
      ttyS* device. Since commit 835d844d (8250_pnp: do pnp probe
      before legacy probe) we get a bogus ttyS0, which prevents the legacy
      probe from detecting it.
      
      Note, the BIOS can also be upgraded, fixing this problem, but for people
      who can't do that, this fix is needed.
      
      Reported-by: default avatarVincent Deffontaines <vincent@gryzor.com>
      Tested-by: default avatarVincent Deffontaines <vincent@gryzor.com>
      Signed-off-by: default avatarSean Young <sean@mess.org>
      Cc: stable@vger.kernel.org
      Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      77e372a3
    • Wang YanQing's avatar
      serial: 8250_pci: add support for another kind of NetMos Technology PCI 9835 Multi-I/O Controller · 8d2f8cd4
      Wang YanQing authored
      
      01:08.0 Communication controller: NetMos Technology PCI 9835 Multi-I/O Controller (rev 01)
      	Subsystem: Device [1000:0012]
      	Control: I/O+ Mem+ BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-
      	Status: Cap- 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
      	Interrupt: pin A routed to IRQ 20
      	Region 0: I/O ports at e050 [size=8]
      	Region 1: I/O ports at e040 [size=8]
      	Region 2: I/O ports at e030 [size=8]
      	Region 3: I/O ports at e020 [size=8]
      	Region 4: I/O ports at e010 [size=8]
      	Region 5: I/O ports at e000 [size=16]
      
      Signed-off-by: default avatarWang YanQing <udknight@gmail.com>
      Cc: stable <stable@vger.kernel.org>
      Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      8d2f8cd4
    • Scott Ashcroft's avatar
      Fix 4 port and add support for 8 port 'Unknown' PCI serial port cards · d13402a4
      Scott Ashcroft authored
      I've managed to find an 8 port version of the card 4 port card which was discussed here:
      
      http://marc.info/?l=linux-serial&m=120760744205314&w=2
      
      
      
      Looking back at that thread there were two issues in the original patch.
      
      1) The I/O ports for the UARTs are within BAR2 not BAR0. This can been seen in the original post.
      2) A serial quirk isn't needed as these cards have no memory in BAR0 which makes pci_plx9050_init just return.
      
      This patch fixes the 4 port support to use BAR2, removes the bogus quirk and adds support for the 8 port card.
      
      $ lspci -vvv -n -s 00:08.0
      00:08.0 0780: 10b5:9050 (rev 01)
      	Subsystem: 10b5:1588
      	Control: I/O+ Mem- BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-
      	Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
      	Interrupt: pin A routed to IRQ 17
      	Region 1: I/O ports at ff00 [size=128]
      	Region 2: I/O ports at fe00 [size=64]
      	Region 3: I/O ports at fd00 [size=8]
      	Capabilities: <access denied>
      	Kernel driver in use: serial
      
      $ dmesg | grep 0000:00:08.0:
      [    0.083320] pci 0000:00:08.0: [10b5:9050] type 0 class 0x000780
      [    0.083355] pci 0000:00:08.0: reg 14: [io  0xff00-0xff7f]
      [    0.083369] pci 0000:00:08.0: reg 18: [io  0xfe00-0xfe3f]
      [    0.083382] pci 0000:00:08.0: reg 1c: [io  0xfd00-0xfd07]
      [    0.083460] pci 0000:00:08.0: PME# supported from D0 D3hot
      [    1.212867] 0000:00:08.0: ttyS4 at I/O 0xfe00 (irq = 17) is a 16550A
      [    1.233073] 0000:00:08.0: ttyS5 at I/O 0xfe08 (irq = 17) is a 16550A
      [    1.253270] 0000:00:08.0: ttyS6 at I/O 0xfe10 (irq = 17) is a 16550A
      [    1.273468] 0000:00:08.0: ttyS7 at I/O 0xfe18 (irq = 17) is a 16550A
      [    1.293666] 0000:00:08.0: ttyS8 at I/O 0xfe20 (irq = 17) is a 16550A
      [    1.313863] 0000:00:08.0: ttyS9 at I/O 0xfe28 (irq = 17) is a 16550A
      [    1.334061] 0000:00:08.0: ttyS10 at I/O 0xfe30 (irq = 17) is a 16550A
      [    1.354258] 0000:00:08.0: ttyS11 at I/O 0xfe38 (irq = 17) is a 16550A
      
      Signed-off-by: default avatarScott Ashcroft <scott.ashcroft@talk21.com>
      Cc: stable <stable@vger.kernel.org>
      Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      d13402a4
    • Ley Foon Tan's avatar
      tty/serial: Add support for Altera serial port · e06c93ca
      Ley Foon Tan authored
      
      Add support for Altera 8250/16550 compatible serial port.
      
      Signed-off-by: default avatarLey Foon Tan <lftan@altera.com>
      Cc: stable <stable@vger.kernel.org>
      Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      e06c93ca
  6. Jan 30, 2013
  7. Jan 20, 2013
  8. Jan 17, 2013
  9. Jan 16, 2013
Loading