<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/drivers/media/cec/core, branch linux-5.12.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-5.12.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-5.12.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2021-01-12T17:20:01Z</updated>
<entry>
<title>media: cec: fix trivial style warnings</title>
<updated>2021-01-12T17:20:01Z</updated>
<author>
<name>Nigel Christian</name>
</author>
<published>2020-12-18T06:31:17Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=dbfa04ec61b7e68259efcdef39b1c637bfedf264'/>
<id>urn:sha1:dbfa04ec61b7e68259efcdef39b1c637bfedf264</id>
<content type='text'>
Comment has 'then' repeated twice. Let's clean it up.
Use unsigned int to maintain naming consistency.

Signed-off-by: Nigel Christian &lt;nigel.l.christian@gmail.com&gt;
Signed-off-by: Hans Verkuil &lt;hverkuil-cisco@xs4all.nl&gt;
Signed-off-by: Mauro Carvalho Chehab &lt;mchehab+huawei@kernel.org&gt;
</content>
</entry>
<entry>
<title>media: cec: add EPOLLPRI in poll() when dev is unregistered</title>
<updated>2021-01-04T12:16:48Z</updated>
<author>
<name>Hans Verkuil</name>
</author>
<published>2020-12-01T12:44:46Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=4f20b7beca5a183139b22ed4fdfc161396452426'/>
<id>urn:sha1:4f20b7beca5a183139b22ed4fdfc161396452426</id>
<content type='text'>
If the CEC device was unregistered, then add EPOLLPRI to
the poll() mask. Otherwise a select() that only waits for
exceptions will not wake up. A select() that waits for
read and/or write events *will* wake up on an EPOLLERR, but
not (for some reason) if it just waits for exceptions.

Strangly the epoll functionality will wakeup on EPOLLERR if
you just wait for an exception, so in this respect select()
and epoll differ.

In the end it doesn't really matter, what matters is that
polling file handles are woken up on device unregistration.

Signed-off-by: Hans Verkuil &lt;hverkuil-cisco@xs4all.nl&gt;
Signed-off-by: Mauro Carvalho Chehab &lt;mchehab+huawei@kernel.org&gt;
</content>
</entry>
<entry>
<title>media: cec-core: first mark device unregistered, then wake up fhs</title>
<updated>2020-11-16T09:31:09Z</updated>
<author>
<name>Hans Verkuil</name>
</author>
<published>2020-10-09T09:16:16Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=e91c255733d9bbb4978a372f44fb5ed689ccdbd1'/>
<id>urn:sha1:e91c255733d9bbb4978a372f44fb5ed689ccdbd1</id>
<content type='text'>
If a CEC device node is unregistered, then it should be marked as
unregistered before waking up any filehandles that are waiting for
an event.

This ensures that there is no race condition where an application can
call CEC_DQEVENT and have the ioctl return 0 instead of ENODEV.

Signed-off-by: Hans Verkuil &lt;hverkuil-cisco@xs4all.nl&gt;
Signed-off-by: Mauro Carvalho Chehab &lt;mchehab+huawei@kernel.org&gt;
</content>
</entry>
<entry>
<title>Merge tag 'v5.9-rc7' into patchwork</title>
<updated>2020-10-04T10:19:12Z</updated>
<author>
<name>Mauro Carvalho Chehab</name>
</author>
<published>2020-10-04T10:19:12Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=463c43fcd97e493d8a17242f4f000c86fe642ed6'/>
<id>urn:sha1:463c43fcd97e493d8a17242f4f000c86fe642ed6</id>
<content type='text'>
Linux 5.9-rc7

* tag 'v5.9-rc7': (683 commits)
  Linux 5.9-rc7
  mm/thp: Split huge pmds/puds if they're pinned when fork()
  mm: Do early cow for pinned pages during fork() for ptes
  mm/fork: Pass new vma pointer into copy_page_range()
  mm: Introduce mm_struct.has_pinned
  mm: validate pmd after splitting
  mm: don't rely on system state to detect hot-plug operations
  mm: replace memmap_context by meminit_context
  arch/x86/lib/usercopy_64.c: fix __copy_user_flushcache() cache writeback
  lib/memregion.c: include memregion.h
  lib/string.c: implement stpcpy
  mm/migrate: correct thp migration stats
  mm/gup: fix gup_fast with dynamic page table folding
  mm: memcontrol: fix missing suffix of workingset_restore
  mm, THP, swap: fix allocating cluster for swapfile by mistake
  mm: slab: fix potential double free in ___cache_free
  Documentation/llvm: Fix clang target examples
  io_uring: ensure async buffered read-retry is setup properly
  KVM: SVM: Add a dedicated INVD intercept routine
  io_uring: don't unconditionally set plug-&gt;nowait = true
  ...
</content>
</entry>
<entry>
<title>media: cec-adap.c: add 'unregistered' checks</title>
<updated>2020-09-26T08:25:13Z</updated>
<author>
<name>Hans Verkuil</name>
</author>
<published>2020-09-08T10:26:11Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=2d307380efec79ef7e1bd91ad4886fc02e2df26a'/>
<id>urn:sha1:2d307380efec79ef7e1bd91ad4886fc02e2df26a</id>
<content type='text'>
Make the code a bit more robust by checking if the adapter has
been unregistered at the start of cec_transmit_msg_fh() and
cec_received_msg_ts(). If it is unregistered, then just return.

Signed-off-by: Hans Verkuil &lt;hverkuil-cisco@xs4all.nl&gt;
Signed-off-by: Mauro Carvalho Chehab &lt;mchehab+huawei@kernel.org&gt;
</content>
</entry>
<entry>
<title>media: cec-core.c: stop kthread_config before kthread</title>
<updated>2020-09-26T08:24:47Z</updated>
<author>
<name>Hans Verkuil</name>
</author>
<published>2020-09-08T10:26:10Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=5254187cfaf22facc42415ad45c16db53ffd0c87'/>
<id>urn:sha1:5254187cfaf22facc42415ad45c16db53ffd0c87</id>
<content type='text'>
The kthread_config relies on the main kthread (message processing
loop) to be present, so stop kthread_config before kthread.

It's unlikely to be a problem (and I've never seen any issues), but
if nothing else it makes sense to stop the threads in this order.

Signed-off-by: Hans Verkuil &lt;hverkuil-cisco@xs4all.nl&gt;
Signed-off-by: Mauro Carvalho Chehab &lt;mchehab+huawei@kernel.org&gt;
</content>
</entry>
<entry>
<title>media: cec-adap.c: don't use flush_scheduled_work()</title>
<updated>2020-09-10T12:05:10Z</updated>
<author>
<name>Hans Verkuil</name>
</author>
<published>2020-09-08T10:02:53Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=288eceb0858323d66bff03cf386630a797b248ad'/>
<id>urn:sha1:288eceb0858323d66bff03cf386630a797b248ad</id>
<content type='text'>
For some inexplicable reason I decided to call flush_scheduled_work()
instead of cancel_delayed_work_sync(). The problem with that is that
flush_scheduled_work() waits for *all* queued scheduled work to be
completed instead of just the work itself.

This can cause a deadlock if a CEC driver also schedules work that
takes the same lock. See the comments for flush_scheduled_work() in
linux/workqueue.h.

This is exactly what has been observed a few times.

This patch simply replaces flush_scheduled_work() by
cancel_delayed_work_sync().

Signed-off-by: Hans Verkuil &lt;hverkuil-cisco@xs4all.nl&gt;
Cc: &lt;stable@vger.kernel.org&gt;      # for v5.8 and up
Signed-off-by: Mauro Carvalho Chehab &lt;mchehab+huawei@kernel.org&gt;
</content>
</entry>
<entry>
<title>media: rc: harmonize infrared durations to microseconds</title>
<updated>2020-09-03T14:18:55Z</updated>
<author>
<name>Sean Young</name>
</author>
<published>2020-08-23T17:23:05Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=528222d853f9283110f0118dd71d9f0ad686d586'/>
<id>urn:sha1:528222d853f9283110f0118dd71d9f0ad686d586</id>
<content type='text'>
rc-core kapi uses nanoseconds for infrared durations for receiving, and
microseconds for sending. The uapi already uses microseconds for both,
so this patch does not change the uapi.

Infrared durations do not need nanosecond resolution. IR protocols do not
have durations shorter than about 100 microseconds. Some IR hardware offers
250 microseconds resolution, which is sufficient for most protocols.
Better hardware has 50 microsecond resolution and is enough for every
protocol I am aware off.

Unify on microseconds everywhere. This simplifies the code since less
conversion between microseconds and nanoseconds needs to be done.

This affects:
 - rx_resolution member of struct rc_dev
 - timeout member of struct rc_dev
 - duration member in struct ir_raw_event

Cc: "Bruno Prémont" &lt;bonbons@linux-vserver.org&gt;
Cc: Hans Verkuil &lt;hverkuil-cisco@xs4all.nl&gt;
Cc: Maxim Levitsky &lt;maximlevitsky@gmail.com&gt;
Cc: Patrick Lerda &lt;patrick9876@free.fr&gt;
Cc: Kevin Hilman &lt;khilman@baylibre.com&gt;
Cc: Neil Armstrong &lt;narmstrong@baylibre.com&gt;
Cc: Jerome Brunet &lt;jbrunet@baylibre.com&gt;
Cc: Martin Blumenstingl &lt;martin.blumenstingl@googlemail.com&gt;
Cc: Sean Wang &lt;sean.wang@mediatek.com&gt;
Cc: Matthias Brugger &lt;matthias.bgg@gmail.com&gt;
Cc: Patrice Chotard &lt;patrice.chotard@st.com&gt;
Cc: Maxime Ripard &lt;mripard@kernel.org&gt;
Cc: Chen-Yu Tsai &lt;wens@csie.org&gt;
Cc: "David Härdeman" &lt;david@hardeman.nu&gt;
Cc: Benjamin Valentin &lt;benpicco@googlemail.com&gt;
Cc: Antti Palosaari &lt;crope@iki.fi&gt;
Signed-off-by: Sean Young &lt;sean@mess.org&gt;
Signed-off-by: Mauro Carvalho Chehab &lt;mchehab+huawei@kernel.org&gt;
</content>
</entry>
<entry>
<title>media: cec: no need to check return value of debugfs_create functions</title>
<updated>2020-09-01T12:13:26Z</updated>
<author>
<name>Greg Kroah-Hartman</name>
</author>
<published>2020-08-18T13:36:02Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=5d0d7b9009feb3b411814b9c1b7dddabbb10a5fb'/>
<id>urn:sha1:5d0d7b9009feb3b411814b9c1b7dddabbb10a5fb</id>
<content type='text'>
When calling debugfs functions, there is no need to ever check the
return value.  The function can work or not, but the code logic should
never do something different based on this.

Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
Signed-off-by: Hans Verkuil &lt;hverkuil-cisco@xs4all.nl&gt;
Signed-off-by: Mauro Carvalho Chehab &lt;mchehab+huawei@kernel.org&gt;
</content>
</entry>
<entry>
<title>media: Use fallthrough pseudo-keyword</title>
<updated>2020-08-29T06:35:27Z</updated>
<author>
<name>Gustavo A. R. Silva</name>
</author>
<published>2020-07-24T22:10:14Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=1771e9fb67e2d6df29acb0ee8349c3833a212754'/>
<id>urn:sha1:1771e9fb67e2d6df29acb0ee8349c3833a212754</id>
<content type='text'>
Replace the existing /* fall through */ comments and its variants with
the new pseudo-keyword macro fallthrough[1]. Also, remove unnecessary
fall-through markings when it is the case.

[1] https://www.kernel.org/doc/html/v5.7/process/deprecated.html?highlight=fallthrough#implicit-switch-case-fall-through

Signed-off-by: Gustavo A. R. Silva &lt;gustavoars@kernel.org&gt;
Acked-by: Sakari Ailus &lt;sakari.ailus@linux.intel.com&gt;
Signed-off-by: Hans Verkuil &lt;hverkuil-cisco@xs4all.nl&gt;
Signed-off-by: Mauro Carvalho Chehab &lt;mchehab+huawei@kernel.org&gt;
</content>
</entry>
</feed>
