<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel/drivers/tty/serial/pxa.c, branch linux-4.1.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.</subtitle>
<id>https://universe.0xinfinity.dev/distro/kernel/atom?h=linux-4.1.y</id>
<link rel='self' href='https://universe.0xinfinity.dev/distro/kernel/atom?h=linux-4.1.y'/>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/'/>
<updated>2015-03-26T21:49:10Z</updated>
<entry>
<title>tty: constify of_device_id array</title>
<updated>2015-03-26T21:49:10Z</updated>
<author>
<name>Fabian Frederick</name>
<email>fabf@skynet.be</email>
</author>
<published>2015-03-16T19:17:11Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=ed0bb2323c9321b91dfa0ea8317fdc4d9592dce4'/>
<id>urn:sha1:ed0bb2323c9321b91dfa0ea8317fdc4d9592dce4</id>
<content type='text'>
of_device_id is always used as const.
(See driver.of_match_table and open firmware functions)

Signed-off-by: Fabian Frederick &lt;fabf@skynet.be&gt;
Acked-by: Peter Korsgaard &lt;peter@korsgaard.com&gt;
Acked-by: Timur Tabi &lt;timur@tabi.org&gt;
Acked-by: Patrice Chotard &lt;patrice.chotard@st.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>Merge tag 'driver-core-3.19-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core</title>
<updated>2014-12-15T00:10:09Z</updated>
<author>
<name>Linus Torvalds</name>
<email>torvalds@linux-foundation.org</email>
</author>
<published>2014-12-15T00:10:09Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=e6b5be2be4e30037eb551e0ed09dd97bd00d85d3'/>
<id>urn:sha1:e6b5be2be4e30037eb551e0ed09dd97bd00d85d3</id>
<content type='text'>
Pull driver core update from Greg KH:
 "Here's the set of driver core patches for 3.19-rc1.

  They are dominated by the removal of the .owner field in platform
  drivers.  They touch a lot of files, but they are "simple" changes,
  just removing a line in a structure.

  Other than that, a few minor driver core and debugfs changes.  There
  are some ath9k patches coming in through this tree that have been
  acked by the wireless maintainers as they relied on the debugfs
  changes.

  Everything has been in linux-next for a while"

* tag 'driver-core-3.19-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core: (324 commits)
  Revert "ath: ath9k: use debugfs_create_devm_seqfile() helper for seq_file entries"
  fs: debugfs: add forward declaration for struct device type
  firmware class: Deletion of an unnecessary check before the function call "vunmap"
  firmware loader: fix hung task warning dump
  devcoredump: provide a one-way disable function
  device: Add dev_&lt;level&gt;_once variants
  ath: ath9k: use debugfs_create_devm_seqfile() helper for seq_file entries
  ath: use seq_file api for ath9k debugfs files
  debugfs: add helper function to create device related seq_file
  drivers/base: cacheinfo: remove noisy error boot message
  Revert "core: platform: add warning if driver has no owner"
  drivers: base: support cpu cache information interface to userspace via sysfs
  drivers: base: add cpu_device_create to support per-cpu devices
  topology: replace custom attribute macros with standard DEVICE_ATTR*
  cpumask: factor out show_cpumap into separate helper function
  driver core: Fix unbalanced device reference in drivers_probe
  driver core: fix race with userland in device_add()
  sysfs/kernfs: make read requests on pre-alloc files use the buffer.
  sysfs/kernfs: allow attributes to request write buffer be pre-allocated.
  fs: sysfs: return EGBIG on write if offset is larger than file size
  ...
</content>
</entry>
<entry>
<title>serial: pxa: hold port.lock when reporting modem line changes</title>
<updated>2014-11-27T03:35:49Z</updated>
<author>
<name>Dmitry Eremin-Solenikov</name>
<email>dbaryshkov@gmail.com</email>
</author>
<published>2014-11-26T09:21:56Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=50d1e7d1077b276e8faa9eebf8b710edf31fdeea'/>
<id>urn:sha1:50d1e7d1077b276e8faa9eebf8b710edf31fdeea</id>
<content type='text'>
Both uart_handle_dcd_change() and uart_handle_cts_change() require a
port lock to be held and will emit a warning when lockdep is enabled.
Held corresponding lock.

This fixes the following warnings:

------------[ cut here ]------------
WARNING: CPU: 0 PID: 0 at drivers/tty/serial/serial_core.c:2760 uart_handle_dcd_change+0xc8/0xf8()
Modules linked in:
CPU: 0 PID: 0 Comm: swapper Not tainted 3.18.0-rc5+ #26
[&lt;c000dff8&gt;] (unwind_backtrace) from [&lt;c000bc70&gt;] (show_stack+0x10/0x14)
[&lt;c000bc70&gt;] (show_stack) from [&lt;c00192ac&gt;] (warn_slowpath_common+0x6c/0x8c)
[&lt;c00192ac&gt;] (warn_slowpath_common) from [&lt;c00192e8&gt;] (warn_slowpath_null+0x1c/0x24)
[&lt;c00192e8&gt;] (warn_slowpath_null) from [&lt;c0182984&gt;] (uart_handle_dcd_change+0xc8/0xf8)
[&lt;c0182984&gt;] (uart_handle_dcd_change) from [&lt;c018625c&gt;] (serial_pxa_irq+0x268/0x3b0)
[&lt;c018625c&gt;] (serial_pxa_irq) from [&lt;c004d0d4&gt;] (handle_irq_event_percpu+0x50/0x16c)
[&lt;c004d0d4&gt;] (handle_irq_event_percpu) from [&lt;c004d22c&gt;] (handle_irq_event+0x3c/0x5c)
[&lt;c004d22c&gt;] (handle_irq_event) from [&lt;c004f7d0&gt;] (handle_level_irq+0x94/0x118)
[&lt;c004f7d0&gt;] (handle_level_irq) from [&lt;c004ca0c&gt;] (generic_handle_irq+0x20/0x30)
[&lt;c004ca0c&gt;] (generic_handle_irq) from [&lt;c004cbe0&gt;] (__handle_domain_irq+0x38/0x70)
[&lt;c004cbe0&gt;] (__handle_domain_irq) from [&lt;c00085c4&gt;] (ichp_handle_irq+0x24/0x34)
[&lt;c00085c4&gt;] (ichp_handle_irq) from [&lt;c000c7e4&gt;] (__irq_svc+0x44/0x54)
Exception stack(0xc07c7f58 to 0xc07c7fa0)
7f40:                                                       00000001 00000001
7f60: 00000000 20000013 c07c6000 00000000 00000000 c07ce0a4 c07d7798 00000000
7f80: c07e8fb8 0000004c 00000000 c07c7fa0 c0044798 c0009f20 20000013 ffffffff
[&lt;c000c7e4&gt;] (__irq_svc) from [&lt;c0009f20&gt;] (arch_cpu_idle+0x28/0x38)
[&lt;c0009f20&gt;] (arch_cpu_idle) from [&lt;c003c974&gt;] (cpu_startup_entry+0x1b8/0x220)
[&lt;c003c974&gt;] (cpu_startup_entry) from [&lt;c0338c54&gt;] (start_kernel+0x39c/0x40c)
---[ end trace 4c1b7ae03f6d9d30 ]---
------------[ cut here ]------------
WARNING: CPU: 0 PID: 0 at drivers/tty/serial/serial_core.c:2791 uart_handle_cts_change+0xa0/0xdc()
Modules linked in:
CPU: 0 PID: 0 Comm: swapper Tainted: G        W      3.18.0-rc5+ #26
[&lt;c000dff8&gt;] (unwind_backtrace) from [&lt;c000bc70&gt;] (show_stack+0x10/0x14)
[&lt;c000bc70&gt;] (show_stack) from [&lt;c00192ac&gt;] (warn_slowpath_common+0x6c/0x8c)
[&lt;c00192ac&gt;] (warn_slowpath_common) from [&lt;c00192e8&gt;] (warn_slowpath_null+0x1c/0x24)
[&lt;c00192e8&gt;] (warn_slowpath_null) from [&lt;c018528c&gt;] (uart_handle_cts_change+0xa0/0xdc)
[&lt;c018528c&gt;] (uart_handle_cts_change) from [&lt;c018624c&gt;] (serial_pxa_irq+0x258/0x3b0)
[&lt;c018624c&gt;] (serial_pxa_irq) from [&lt;c004d0d4&gt;] (handle_irq_event_percpu+0x50/0x16c)
[&lt;c004d0d4&gt;] (handle_irq_event_percpu) from [&lt;c004d22c&gt;] (handle_irq_event+0x3c/0x5c)
[&lt;c004d22c&gt;] (handle_irq_event) from [&lt;c004f7d0&gt;] (handle_level_irq+0x94/0x118)
[&lt;c004f7d0&gt;] (handle_level_irq) from [&lt;c004ca0c&gt;] (generic_handle_irq+0x20/0x30)
[&lt;c004ca0c&gt;] (generic_handle_irq) from [&lt;c004cbe0&gt;] (__handle_domain_irq+0x38/0x70)
[&lt;c004cbe0&gt;] (__handle_domain_irq) from [&lt;c00085c4&gt;] (ichp_handle_irq+0x24/0x34)
[&lt;c00085c4&gt;] (ichp_handle_irq) from [&lt;c000c7e4&gt;] (__irq_svc+0x44/0x54)
Exception stack(0xc07c7f58 to 0xc07c7fa0)
7f40:                                                       00000001 00000001
7f60: 00000000 20000013 c07c6000 00000000 00000000 c07ce0a4 c07d7798 00000000
7f80: c07e8fb8 0000004c 00000000 c07c7fa0 c0044798 c0009f20 20000013 ffffffff
[&lt;c000c7e4&gt;] (__irq_svc) from [&lt;c0009f20&gt;] (arch_cpu_idle+0x28/0x38)
[&lt;c0009f20&gt;] (arch_cpu_idle) from [&lt;c003c974&gt;] (cpu_startup_entry+0x1b8/0x220)
[&lt;c003c974&gt;] (cpu_startup_entry) from [&lt;c0338c54&gt;] (start_kernel+0x39c/0x40c)
---[ end trace 4c1b7ae03f6d9d31 ]---

Signed-off-by: Dmitry Eremin-Solenikov &lt;dbaryshkov@gmail.com&gt;
Acked-by: Robert Jarzmik &lt;robert.jarzmik@free.fr&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>tty: serial: drop owner assignment from platform_drivers</title>
<updated>2014-10-20T14:21:45Z</updated>
<author>
<name>Wolfram Sang</name>
<email>wsa@the-dreams.de</email>
</author>
<published>2014-10-20T14:21:45Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=9144b3cded04a05d4b4e18dc9dcfb5b8ada3f2fc'/>
<id>urn:sha1:9144b3cded04a05d4b4e18dc9dcfb5b8ada3f2fc</id>
<content type='text'>
A platform_driver does not need to set an owner, it will be populated by the
driver core.

Signed-off-by: Wolfram Sang &lt;wsa@the-dreams.de&gt;
</content>
</entry>
<entry>
<title>serial: pxa: fix build with !SERIAL_PXA_CONSOLE</title>
<updated>2014-07-10T22:48:41Z</updated>
<author>
<name>Arnd Bergmann</name>
<email>arnd@arndb.de</email>
</author>
<published>2014-02-18T15:14:20Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=2ee881b74e1fa96bfe0c7d2be11f6de69bc145e9'/>
<id>urn:sha1:2ee881b74e1fa96bfe0c7d2be11f6de69bc145e9</id>
<content type='text'>
When CONFIG_SERIAL_PXA_CONSOLE is disabled, the serial_pxa_get_poll_char
and serial_pxa_put_poll_char functions are not defined, and we can't
reference them.

Signed-off-by: Arnd Bergmann &lt;arnd@arndb.de&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>serial: Fix IGNBRK handling</title>
<updated>2014-06-19T20:04:52Z</updated>
<author>
<name>Peter Hurley</name>
<email>peter@hurleysoftware.com</email>
</author>
<published>2014-06-16T12:10:41Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=ef8b9ddcb45fa3b1e11acd72be2398001e807d14'/>
<id>urn:sha1:ef8b9ddcb45fa3b1e11acd72be2398001e807d14</id>
<content type='text'>
If IGNBRK is set without either BRKINT or PARMRK set, some uart
drivers send a 0x00 byte for BREAK without the TTYBREAK flag to the
line discipline, when it should send either nothing or the TTYBREAK flag
set. This happens because the read_status_mask masks out the BI
condition, which uart_insert_char() then interprets as a normal 0x00 byte.

SUS v3 is clear regarding the meaning of IGNBRK; Section 11.2.2, General
Terminal Interface - Input Modes, states:
  "If IGNBRK is set, a break condition detected on input shall be ignored;
   that is, not put on the input queue and therefore not read by any
   process."

Fix read_status_mask to include the BI bit if IGNBRK is set; the
lsr status retains the BI bit if a BREAK is recv'd, which is
subsequently ignored in uart_insert_char() when masked with the
ignore_status_mask.

Affected drivers:
8250 - all
serial_txx9
mfd
amba-pl010
amba-pl011
atmel_serial
bfin_uart
dz
ip22zilog
max310x
mxs-auart
netx-serial
pnx8xxx_uart
pxa
sb1250-duart
sccnxp
serial_ks8695
sirfsoc_uart
st-asc
vr41xx_siu
zs
sunzilog
fsl_lpuart
sunsab
ucc_uart
bcm63xx_uart
sunsu
efm32-uart
pmac_zilog
mpsc
msm_serial
m32r_sio

Unaffected drivers:
omap-serial
rp2
sa1100
imx
icom

Annotated for fixes:
altera_uart
mcf

Drivers without break detection:
21285
xilinx-uartps
altera_jtaguart
apbuart
arc-uart
clps711x
max3100
uartlite
msm_serial_hs
nwpserial
lantiq
vt8500_serial

Unknown:
samsung
mpc52xx_uart
bfin_sport_uart
cpm_uart/core

Fixes: Bugzilla #71651, '8250_core.c incorrectly handles IGNBRK flag'
Reported-by: Ivan &lt;athlon_@mail.ru&gt;
Signed-off-by: Peter Hurley &lt;peter@hurleysoftware.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>serial_core: Commonalize crlf when working w/ a non open console port</title>
<updated>2014-04-24T23:13:01Z</updated>
<author>
<name>Doug Anderson</name>
<email>dianders@chromium.org</email>
</author>
<published>2014-04-21T17:06:43Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=c7d44a02ac606c2bebf90751deebec2321379d6d'/>
<id>urn:sha1:c7d44a02ac606c2bebf90751deebec2321379d6d</id>
<content type='text'>
In (efe2f29 kgdboc,kdb: Allow kdb to work on a non open console port)
support was added to directly use the "write_char" functions when
doing kdb over a non-open console port.  This is great, but it ends up
bypassing the normal code in uart_console_write() that adds a carriage
return before any newlines.

There appears to have been a trend to add this support directly in
some console driver's poll_put_char() functions.  This had a few side
effects, including:
- In this case we were doing LFCR, not CRLF.  This was fixed in
  uart_console_write() back in (d358788 [SERIAL] kernel console should
  send CRLF not LFCR)
- Not all serial drivers had the LFCR code in their poll_put_char()
  functions.  In my case I was running serial/samsung.c which lacked
  it.

I've moved the handling to uart_poll_put_char() to fix the above
problems.  Now when I use kdb (and don't point console= to the same
UART) I no longer get:

[0]kdb&gt;
       [0]kdb&gt;
              [0]kdb&gt;

Signed-off-by: Doug Anderson &lt;dianders@chromium.org&gt;
Reviewed-by: Alan Cox &lt;alan@linux.intel.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>serial: pxa: Staticize local symbols</title>
<updated>2013-08-12T18:10:16Z</updated>
<author>
<name>Jingoo Han</name>
<email>jg1.han@samsung.com</email>
</author>
<published>2013-08-08T08:39:51Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=6c62cc0db7d9f459c7453adc88a30ab6a626f15c'/>
<id>urn:sha1:6c62cc0db7d9f459c7453adc88a30ab6a626f15c</id>
<content type='text'>
These local symbols are used only in this file.
Fix the following sparse warnings:

drivers/tty/serial/pxa.c:793:17: warning: symbol 'serial_pxa_pops' was not declared. Should it be static?
drivers/tty/serial/pxa.c:971:12: warning: symbol 'serial_pxa_init' was not declared. Should it be static?
drivers/tty/serial/pxa.c:986:13: warning: symbol 'serial_pxa_exit' was not declared. Should it be static?

Signed-off-by: Jingoo Han &lt;jg1.han@samsung.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>tty: serial: pxa: remove old cruft</title>
<updated>2013-08-12T18:10:16Z</updated>
<author>
<name>Daniel Mack</name>
<email>zonque@gmail.com</email>
</author>
<published>2013-08-07T15:33:55Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=331b37340af0ce96b6d6701b21b9902c85a8e2c0'/>
<id>urn:sha1:331b37340af0ce96b6d6701b21b9902c85a8e2c0</id>
<content type='text'>
This #if-0'd block wouldn't compile, so let's dispose it.

Signed-off-by: Daniel Mack &lt;zonque@gmail.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>serial: remove unnecessary platform_set_drvdata()</title>
<updated>2013-07-26T22:39:36Z</updated>
<author>
<name>Jingoo Han</name>
<email>jg1.han@samsung.com</email>
</author>
<published>2013-06-25T01:08:49Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=43b829b3c1aa8d4f748a8e68724df476d242365a'/>
<id>urn:sha1:43b829b3c1aa8d4f748a8e68724df476d242365a</id>
<content type='text'>
The driver core clears the driver data to NULL after device_release
or on probe failure, since commit 0998d0631001288a5974afc0b2a5f568bcdecb4d
(device-core: Ensure drvdata = NULL when no driver is bound).
Thus, it is not needed to manually clear the device driver data to NULL.

Signed-off-by: Jingoo Han &lt;jg1.han@samsung.com&gt;
Acked-by: Barry Song &lt;baohua.song@csr.com&gt;
Acked-by: Tony Prisk &lt;linux@prisktech.co.nz&gt;
Acked-by: Shawn Guo &lt;shawn.guo@linaro.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
</feed>
