Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit b7b8a44f authored by Linus Torvalds's avatar Linus Torvalds
Browse files
Pull char/misc driver fixes from Greg KH:
 "Here are a number of small driver fixes for 5.2-rc6

  Nothing major, just fixes for reported issues:
   - soundwire fixes
   - thunderbolt fixes
   - MAINTAINERS update for fpga maintainer change
   - binder bugfix
   - habanalabs 64bit pointer fix
   - documentation updates

  All of these have been in linux-next with no reported issues"

* tag 'char-misc-5.2-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc:
  habanalabs: use u64_to_user_ptr() for reading user pointers
  doc: fix documentation about UIO_MEM_LOGICAL using
  MAINTAINERS / Documentation: Thorsten Scherer is the successor of Gavin Schenk
  docs: fb: Add TER16x32 to the available font names
  MAINTAINERS: fpga: hand off maintainership to Moritz
  thunderbolt: Implement CIO reset correctly for Titan Ridge
  binder: fix possible UAF when freeing buffer
  thunderbolt: Make sure device runtime resume completes before taking domain lock
  soundwire: intel: set dai min and max channels correctly
  soundwire: stream: fix bad unlock balance
  soundwire: stream: fix out of boundary access on port properties
parents cf242421 6f828c55
Loading
Loading
Loading
Loading
+11 −11
Original line number Original line Diff line number Diff line
What:		/sys/bus/siox/devices/siox-X/active
What:		/sys/bus/siox/devices/siox-X/active
KernelVersion:	4.16
KernelVersion:	4.16
Contact:	Gavin Schenk <g.schenk@eckelmann.de>, Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Contact:	Thorsten Scherer <t.scherer@eckelmann.de>, Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Description:
Description:
		On reading represents the current state of the bus. If it
		On reading represents the current state of the bus. If it
		contains a "0" the bus is stopped and connected devices are
		contains a "0" the bus is stopped and connected devices are
@@ -12,7 +12,7 @@ Description:


What:		/sys/bus/siox/devices/siox-X/device_add
What:		/sys/bus/siox/devices/siox-X/device_add
KernelVersion:	4.16
KernelVersion:	4.16
Contact:	Gavin Schenk <g.schenk@eckelmann.de>, Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Contact:	Thorsten Scherer <t.scherer@eckelmann.de>, Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Description:
Description:
		Write-only file. Write
		Write-only file. Write


@@ -27,13 +27,13 @@ Description:


What:		/sys/bus/siox/devices/siox-X/device_remove
What:		/sys/bus/siox/devices/siox-X/device_remove
KernelVersion:	4.16
KernelVersion:	4.16
Contact:	Gavin Schenk <g.schenk@eckelmann.de>, Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Contact:	Thorsten Scherer <t.scherer@eckelmann.de>, Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Description:
Description:
		Write-only file. A single write removes the last device in the siox chain.
		Write-only file. A single write removes the last device in the siox chain.


What:		/sys/bus/siox/devices/siox-X/poll_interval_ns
What:		/sys/bus/siox/devices/siox-X/poll_interval_ns
KernelVersion:	4.16
KernelVersion:	4.16
Contact:	Gavin Schenk <g.schenk@eckelmann.de>, Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Contact:	Thorsten Scherer <t.scherer@eckelmann.de>, Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Description:
Description:
		Defines the interval between two poll cycles in nano seconds.
		Defines the interval between two poll cycles in nano seconds.
		Note this is rounded to jiffies on writing. On reading the current value
		Note this is rounded to jiffies on writing. On reading the current value
@@ -41,33 +41,33 @@ Description:


What:		/sys/bus/siox/devices/siox-X-Y/connected
What:		/sys/bus/siox/devices/siox-X-Y/connected
KernelVersion:	4.16
KernelVersion:	4.16
Contact:	Gavin Schenk <g.schenk@eckelmann.de>, Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Contact:	Thorsten Scherer <t.scherer@eckelmann.de>, Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Description:
Description:
		Read-only value. "0" means the Yth device on siox bus X isn't "connected" i.e.
		Read-only value. "0" means the Yth device on siox bus X isn't "connected" i.e.
		communication with it is not ensured. "1" signals a working connection.
		communication with it is not ensured. "1" signals a working connection.


What:		/sys/bus/siox/devices/siox-X-Y/inbytes
What:		/sys/bus/siox/devices/siox-X-Y/inbytes
KernelVersion:	4.16
KernelVersion:	4.16
Contact:	Gavin Schenk <g.schenk@eckelmann.de>, Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Contact:	Thorsten Scherer <t.scherer@eckelmann.de>, Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Description:
Description:
		Read-only value reporting the inbytes value provided to siox-X/device_add
		Read-only value reporting the inbytes value provided to siox-X/device_add


What:		/sys/bus/siox/devices/siox-X-Y/status_errors
What:		/sys/bus/siox/devices/siox-X-Y/status_errors
KernelVersion:	4.16
KernelVersion:	4.16
Contact:	Gavin Schenk <g.schenk@eckelmann.de>, Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Contact:	Thorsten Scherer <t.scherer@eckelmann.de>, Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Description:
Description:
		Counts the number of time intervals when the read status byte doesn't yield the
		Counts the number of time intervals when the read status byte doesn't yield the
		expected value.
		expected value.


What:		/sys/bus/siox/devices/siox-X-Y/type
What:		/sys/bus/siox/devices/siox-X-Y/type
KernelVersion:	4.16
KernelVersion:	4.16
Contact:	Gavin Schenk <g.schenk@eckelmann.de>, Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Contact:	Thorsten Scherer <t.scherer@eckelmann.de>, Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Description:
Description:
		Read-only value reporting the type value provided to siox-X/device_add.
		Read-only value reporting the type value provided to siox-X/device_add.


What:		/sys/bus/siox/devices/siox-X-Y/watchdog
What:		/sys/bus/siox/devices/siox-X-Y/watchdog
KernelVersion:	4.16
KernelVersion:	4.16
Contact:	Gavin Schenk <g.schenk@eckelmann.de>, Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Contact:	Thorsten Scherer <t.scherer@eckelmann.de>, Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Description:
Description:
		Read-only value reporting if the watchdog of the siox device is
		Read-only value reporting if the watchdog of the siox device is
		active. "0" means the watchdog is not active and the device is expected to
		active. "0" means the watchdog is not active and the device is expected to
@@ -75,13 +75,13 @@ Description:


What:		/sys/bus/siox/devices/siox-X-Y/watchdog_errors
What:		/sys/bus/siox/devices/siox-X-Y/watchdog_errors
KernelVersion:	4.16
KernelVersion:	4.16
Contact:	Gavin Schenk <g.schenk@eckelmann.de>, Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Contact:	Thorsten Scherer <t.scherer@eckelmann.de>, Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Description:
Description:
		Read-only value reporting the number to time intervals when the
		Read-only value reporting the number to time intervals when the
		watchdog was active.
		watchdog was active.


What:		/sys/bus/siox/devices/siox-X-Y/outbytes
What:		/sys/bus/siox/devices/siox-X-Y/outbytes
KernelVersion:	4.16
KernelVersion:	4.16
Contact:	Gavin Schenk <g.schenk@eckelmann.de>, Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Contact:	Thorsten Scherer <t.scherer@eckelmann.de>, Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Description:
Description:
		Read-only value reporting the outbytes value provided to siox-X/device_add.
		Read-only value reporting the outbytes value provided to siox-X/device_add.
+2 −2
Original line number Original line Diff line number Diff line
@@ -276,8 +276,8 @@ fields of ``struct uio_mem``:
-  ``int memtype``: Required if the mapping is used. Set this to
-  ``int memtype``: Required if the mapping is used. Set this to
   ``UIO_MEM_PHYS`` if you you have physical memory on your card to be
   ``UIO_MEM_PHYS`` if you you have physical memory on your card to be
   mapped. Use ``UIO_MEM_LOGICAL`` for logical memory (e.g. allocated
   mapped. Use ``UIO_MEM_LOGICAL`` for logical memory (e.g. allocated
   with :c:func:`kmalloc()`). There's also ``UIO_MEM_VIRTUAL`` for
   with :c:func:`__get_free_pages()` but not kmalloc()). There's also
   virtual memory.
   ``UIO_MEM_VIRTUAL`` for virtual memory.


-  ``phys_addr_t addr``: Required if the mapping is used. Fill in the
-  ``phys_addr_t addr``: Required if the mapping is used. Fill in the
   address of your memory block. This address is the one that appears in
   address of your memory block. This address is the one that appears in
+1 −1
Original line number Original line Diff line number Diff line
@@ -79,7 +79,7 @@ C. Boot options


        Select the initial font to use. The value 'name' can be any of the
        Select the initial font to use. The value 'name' can be any of the
        compiled-in fonts: 10x18, 6x10, 7x14, Acorn8x8, MINI4x6,
        compiled-in fonts: 10x18, 6x10, 7x14, Acorn8x8, MINI4x6,
        PEARL8x8, ProFont6x11, SUN12x22, SUN8x16, VGA8x16, VGA8x8.
        PEARL8x8, ProFont6x11, SUN12x22, SUN8x16, TER16x32, VGA8x16, VGA8x8.


	Note, not all drivers can handle font with widths not divisible by 8,
	Note, not all drivers can handle font with widths not divisible by 8,
        such as vga16fb.
        such as vga16fb.
+1 −2
Original line number Original line Diff line number Diff line
@@ -6234,7 +6234,6 @@ F: include/linux/ipmi-fru.h
K:	fmc_d.*register
K:	fmc_d.*register


FPGA MANAGER FRAMEWORK
FPGA MANAGER FRAMEWORK
M:	Alan Tull <atull@kernel.org>
M:	Moritz Fischer <mdf@kernel.org>
M:	Moritz Fischer <mdf@kernel.org>
L:	linux-fpga@vger.kernel.org
L:	linux-fpga@vger.kernel.org
S:	Maintained
S:	Maintained
@@ -14404,7 +14403,7 @@ F: lib/test_siphash.c
F:	include/linux/siphash.h
F:	include/linux/siphash.h


SIOX
SIOX
M:	Gavin Schenk <g.schenk@eckelmann.de>
M:	Thorsten Scherer <t.scherer@eckelmann.de>
M:	Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
M:	Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
R:	Pengutronix Kernel Team <kernel@pengutronix.de>
R:	Pengutronix Kernel Team <kernel@pengutronix.de>
S:	Supported
S:	Supported
+14 −2
Original line number Original line Diff line number Diff line
@@ -1941,8 +1941,18 @@ static void binder_free_txn_fixups(struct binder_transaction *t)


static void binder_free_transaction(struct binder_transaction *t)
static void binder_free_transaction(struct binder_transaction *t)
{
{
	struct binder_proc *target_proc = t->to_proc;

	if (target_proc) {
		binder_inner_proc_lock(target_proc);
		if (t->buffer)
		if (t->buffer)
			t->buffer->transaction = NULL;
			t->buffer->transaction = NULL;
		binder_inner_proc_unlock(target_proc);
	}
	/*
	 * If the transaction has no target_proc, then
	 * t->buffer->transaction has already been cleared.
	 */
	binder_free_txn_fixups(t);
	binder_free_txn_fixups(t);
	kfree(t);
	kfree(t);
	binder_stats_deleted(BINDER_STAT_TRANSACTION);
	binder_stats_deleted(BINDER_STAT_TRANSACTION);
@@ -3551,10 +3561,12 @@ static void binder_transaction(struct binder_proc *proc,
static void
static void
binder_free_buf(struct binder_proc *proc, struct binder_buffer *buffer)
binder_free_buf(struct binder_proc *proc, struct binder_buffer *buffer)
{
{
	binder_inner_proc_lock(proc);
	if (buffer->transaction) {
	if (buffer->transaction) {
		buffer->transaction->buffer = NULL;
		buffer->transaction->buffer = NULL;
		buffer->transaction = NULL;
		buffer->transaction = NULL;
	}
	}
	binder_inner_proc_unlock(proc);
	if (buffer->async_transaction && buffer->target_node) {
	if (buffer->async_transaction && buffer->target_node) {
		struct binder_node *buf_node;
		struct binder_node *buf_node;
		struct binder_work *w;
		struct binder_work *w;
Loading