Commit graph

1,188,286 commits

Author SHA1 Message Date
Kory Maincent
5381dc7853 clk: spear: Fix SSP clock definition on SPEAr600
There is no SPEAr600 device named "ssp-pl022.x". Instead, the description
of the SSP (Synchronous Serial Port) was recently added to the Device Tree,
and the device name is "xxx.spi", so we should associate the SSP gateable
clock to these device names.

Signed-off-by: Kory Maincent <kory.maincent@bootlin.com>
Acked-by: Viresh Kumar <viresh.kumar@linaro.org>
Link: https://lore.kernel.org/r/20221115135814.214388-3-kory.maincent@bootlin.com
Signed-off-by: Stephen Boyd <sboyd@kernel.org>
2022-11-22 18:03:52 -08:00
Kory Maincent
9a856bee52 clk: spear: Fix CLCD clock definition on SPEAr600
There is no SPEAr600 device named "clcd". Instead, the description of the
CLCD (color liquid crystal display controller) name is "fc200000.clcd", so
we should associate the CLCD gateable clock to this device name.

Signed-off-by: Kory Maincent <kory.maincent@bootlin.com>
Acked-by: Viresh Kumar <viresh.kumar@linaro.org>
Link: https://lore.kernel.org/r/20221115135814.214388-2-kory.maincent@bootlin.com
Signed-off-by: Stephen Boyd <sboyd@kernel.org>
2022-11-22 18:03:52 -08:00
Christophe JAILLET
12897adc8e clk: Remove a useless include
<linux/rational.h> is not needed for these drivers. Remove the
corresponding #include.

Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
Link: https://lore.kernel.org/r/12dd5cb49efa7714f8e0389e4c7b3bc829e8a90e.1668289299.git.christophe.jaillet@wanadoo.fr
Acked-by: Heiko Stuebner <heiko@sntech.de>
Acked-by: Jerome Brunet <jbrunet@baylibre.com>
Reviewed-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
Signed-off-by: Stephen Boyd <sboyd@kernel.org>
2022-11-22 17:52:07 -08:00
Eray Orçunus
9f4211bf7f HID: add mapping for camera access keys
HUTRR72 added 3 new usage codes for keys that are supposed to enable,
disable and toggle camera access. These are useful, considering many
laptops today have key(s) for toggling access to camera.

This patch adds new key definitions for KEY_CAMERA_ACCESS_ENABLE,
KEY_CAMERA_ACCESS_DISABLE and KEY_CAMERA_ACCESS_TOGGLE. Additionally
hid-debug is adjusted to recognize this new usage codes as well.

Signed-off-by: Eray Orçunus <erayorcunus@gmail.com>
Acked-by: Jiri Kosina <jkosina@suse.cz>
Link: https://lore.kernel.org/r/20221029120311.11152-3-erayorcunus@gmail.com
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
2022-11-22 17:50:36 -08:00
Dave Chinner
9c7babf94a xfs,iomap: move delalloc punching to iomap
Because that's what Christoph wants for this error handling path
only XFS uses.

It requires a new iomap export for handling errors over delalloc
ranges. This is basically the XFS code as is stands, but even though
Christoph wants this as iomap funcitonality, we still have 
to call it from the filesystem specific ->iomap_end callback, and
call into the iomap code with yet another filesystem specific
callback to punch the delalloc extent within the defined ranges.

Signed-off-by: Dave Chinner <dchinner@redhat.com>
Reviewed-by: Darrick J. Wong <djwong@kernel.org>
2022-11-23 12:44:38 +11:00
Dave Chinner
b71f889c18 xfs: use byte ranges for write cleanup ranges
xfs_buffered_write_iomap_end() currently converts the byte ranges
passed to it to filesystem blocks to pass them to the bmap code to
punch out delalloc blocks, but then has to convert filesytem
blocks back to byte ranges for page cache truncate.

We're about to make the page cache truncate go away and replace it
with a page cache walk, so having to convert everything to/from/to
filesystem blocks is messy and error-prone. It is much easier to
pass around byte ranges and convert to page indexes and/or
filesystem blocks only where those units are needed.

In preparation for the page cache walk being added, add a helper
that converts byte ranges to filesystem blocks and calls
xfs_bmap_punch_delalloc_range() and convert
xfs_buffered_write_iomap_end() to calculate limits in byte ranges.

Signed-off-by: Dave Chinner <dchinner@redhat.com>
Reviewed-by: Darrick J. Wong <djwong@kernel.org>
2022-11-23 12:40:12 +11:00
Dave Chinner
198dd8aede xfs: punching delalloc extents on write failure is racy
xfs_buffered_write_iomap_end() has a comment about the safety of
punching delalloc extents based holding the IOLOCK_EXCL. This
comment is wrong, and punching delalloc extents is not race free.

When we punch out a delalloc extent after a write failure in
xfs_buffered_write_iomap_end(), we punch out the page cache with
truncate_pagecache_range() before we punch out the delalloc extents.
At this point, we only hold the IOLOCK_EXCL, so there is nothing
stopping mmap() write faults racing with this cleanup operation,
reinstantiating a folio over the range we are about to punch and
hence requiring the delalloc extent to be kept.

If this race condition is hit, we can end up with a dirty page in
the page cache that has no delalloc extent or space reservation
backing it. This leads to bad things happening at writeback time.

To avoid this race condition, we need the page cache truncation to
be atomic w.r.t. the extent manipulation. We can do this by holding
the mapping->invalidate_lock exclusively across this operation -
this will prevent new pages from being inserted into the page cache
whilst we are removing the pages and the backing extent and space
reservation.

Taking the mapping->invalidate_lock exclusively in the buffered
write IO path is safe - it naturally nests inside the IOLOCK (see
truncate and fallocate paths). iomap_zero_range() can be called from
under the mapping->invalidate_lock (from the truncate path via
either xfs_zero_eof() or xfs_truncate_page(), but iomap_zero_iter()
will not instantiate new delalloc pages (because it skips holes) and
hence will not ever need to punch out delalloc extents on failure.

Fix the locking issue, and clean up the code logic a little to avoid
unnecessary work if we didn't allocate the delalloc extent or wrote
the entire region we allocated.

Signed-off-by: Dave Chinner <dchinner@redhat.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Darrick J. Wong <djwong@kernel.org>
2022-11-23 12:40:11 +11:00
Dario Binacchi
53949843d3 clk: ti: fix typo in ti_clk_retry_init() code comment
Replace "not" with "node".

Signed-off-by: Dario Binacchi <dario.binacchi@amarulasolutions.com>
Link: https://lore.kernel.org/r/20221106155625.3476564-1-dario.binacchi@amarulasolutions.com
Signed-off-by: Stephen Boyd <sboyd@kernel.org>
2022-11-22 17:04:20 -08:00
Dario Binacchi
6e49aacaaf clk: ti: dra7-atl: don't allocate `parent_names' variable
The `parent_names' variable was freed also in case of kzalloc() error.
Instead of modifying the code to perform a proper memory release, I
decided to fix the bug by not allocating memory.
Since only one parent name is referenced, it is not necessary to
allocate this variable at runtime and therefore you can avoid calling
the kzalloc() function. This simplifies the code (even calls to kfree
can be removed) and improves the performance of the routine.

Signed-off-by: Dario Binacchi <dario.binacchi@amarulasolutions.com>
Reported-by: kernel test robot <lkp@intel.com>
Link: https://lore.kernel.org/r/20221113181147.1626585-2-dario.binacchi@amarulasolutions.com
Tested-by: Tony Lindgren <tony@atomide.com>
Reviewed-by: Tony Lindgren <tony@atomide.com>
Signed-off-by: Stephen Boyd <sboyd@kernel.org>
2022-11-22 17:02:03 -08:00
Dario Binacchi
3400d546a7 clk: ti: change ti_clk_register[_omap_hw]() API
The ti_clk_register() and ti_clk_register_omap_hw() functions are always
called with the parameter of type "struct device" set to NULL, since the
functions from which they are called always have a parameter of type
"struct device_node". Replacing "struct device" type parameter with
"struct device_node" will allow you to register a TI clock to the common
clock framework by taking advantage of the facilities provided by the
"struct device_node" type. Further, adding the "of_" prefix to the name
of these functions explicitly binds them to the "struct device_node"
type.

The patch has been tested on a Beaglebone board.

Signed-off-by: Dario Binacchi <dario.binacchi@amarulasolutions.com>
Tested-by: Tony Lindgren <tony@atomide.com>
Reviewed-by: Tony Lindgren <tony@atomide.com>
Link: https://lore.kernel.org/r/20221113181147.1626585-1-dario.binacchi@amarulasolutions.com
Signed-off-by: Stephen Boyd <sboyd@kernel.org>
2022-11-22 17:01:47 -08:00
Stephen Boyd
9f8e30559b - fixed header guard for V3S clocks
- add IR module clock for f1c100s
 -----BEGIN PGP SIGNATURE-----
 
 iHUEABYIAB0WIQSPRixG1tysKC2PKM10Ba7+DO8kkwUCY3foDQAKCRB0Ba7+DO8k
 k33pAP49Xzurw0VIc7mkSdFJnO2TtAD6I5v11fc7fUSH3kNqaAD/WKAHYt+CPOTF
 3v3pE/muTgTlPQGtDtIgckqCrbBmawc=
 =m964
 -----END PGP SIGNATURE-----

Merge tag 'sunxi-clk-for-6.2-1' of https://git.kernel.org/pub/scm/linux/kernel/git/sunxi/linux into clk-allwinner

Pull Allwinner clk driver updates from Jernej Skrabec:

 - Fixed header guard for V3S clocks
 - Add IR module clock for f1c100s

* tag 'sunxi-clk-for-6.2-1' of https://git.kernel.org/pub/scm/linux/kernel/git/sunxi/linux:
  clk: sunxi-ng: f1c100s: Add IR mod clock
  clk: sunxi-ng: v3s: Correct the header guard of ccu-sun8i-v3s.h
2022-11-22 16:51:29 -08:00
Stephen Boyd
01e6bf9921 clk: renesas: Updates for v6.2 (take two)
- Correct the parent clocks for the (High Speed) Serial Communication
     Interfaces with FIFO ((H)SCIF) modules and the mixed-up Ethernet
     Switch clocks on R-Car S4-8,
   - Add timer (TMU, CMT) and Cortex-A76 CPU core (Z0) clocks on R-Car
     V4H.
 -----BEGIN PGP SIGNATURE-----
 
 iHUEABYIAB0WIQQ9qaHoIs/1I4cXmEiKwlD9ZEnxcAUCY3ddHAAKCRCKwlD9ZEnx
 cMjVAQCbTfsJ2WR7Isnyi/e4PX49ZnNUogy3cN2InCnp/RmT5wEArdisCjpFGTy0
 awdhDMoHNoeRZNJ0brH0hS2ZCUjQDg0=
 =AGN5
 -----END PGP SIGNATURE-----

Merge tag 'renesas-clk-for-v6.2-tag2' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-drivers into clk-renesas

Pull more Renesas clk driver updates from Geert Uytterhoeven:

 - Correct the parent clocks for the (High Speed) Serial Communication
   Interfaces with FIFO ((H)SCIF) modules and the mixed-up Ethernet
   Switch clocks on R-Car S4-8
 - Add timer (TMU, CMT) and Cortex-A76 CPU core (Z0) clocks on R-Car
   V4H

* tag 'renesas-clk-for-v6.2-tag2' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-drivers:
  clk: renesas: r8a779f0: Fix Ethernet Switch clocks
  clk: renesas: r8a779g0: Add Z0 clock support
  clk: renesas: r8a779g0: Add CMT clocks
  clk: renesas: r8a779g0: Add TMU and SASYNCRT clocks
  clk: renesas: r8a779f0: Fix SCIF parent clocks
  clk: renesas: r8a779f0: Fix HSCIF parent clocks
2022-11-22 16:47:59 -08:00
Stephen Boyd
4e85952f26 Microchip clock fixes for 6.1
It contains fixes for AT91 SoCs as follows:
 - fix the clock ID for USB device port on RM9200 SoCs; along with it the
   device tree references to this clocks were fixed in this patch to ease the
   backporting and to avoid USB driver probe failure.
 -----BEGIN PGP SIGNATURE-----
 
 iHUEABYIAB0WIQTsZ8eserC1pmhwqDmejrg/N2X7/QUCY3eAPAAKCRCejrg/N2X7
 /V1SAP9Rea8/sqyEUYCI9t8EdG70hSHNGCV2tC+0FvozGe7tnQD9Ew+04JCBnGfk
 YejYowKjiVdXiAIyEyt7UgxRAX6cVQ4=
 =24dW
 -----END PGP SIGNATURE-----

Merge tag 'clk-microchip-fixes-6.1' of https://git.kernel.org/pub/scm/linux/kernel/git/at91/linux into clk-fixes

Pull Microchip clk driver fixes from Claudiu Beznea:

 - fix the clock ID for USB device port on AT91 RM9200 SoCs; along with it the
   device tree references to this clocks were fixed in this patch to ease the
   backporting and to avoid USB driver probe failure.

* tag 'clk-microchip-fixes-6.1' of https://git.kernel.org/pub/scm/linux/kernel/git/at91/linux:
  ARM: at91: rm9200: fix usb device clock id
2022-11-22 16:43:18 -08:00
Stephen Boyd
0d51d0db9f Samsung SoC clock drivers changes for 6.1
1. Fix calling of_device_get_match_data() on wrong device (parent's) in
    Exynos clock out driver.
 2. Correct clock name in bindings of ExynosAutov9 clocks.
 3. Correct parents of div4 clock on Exynos7885.
 -----BEGIN PGP SIGNATURE-----
 
 iQJEBAABCgAuFiEE3dJiKD0RGyM7briowTdm5oaLg9cFAmN0rG4QHGtyemtAa2Vy
 bmVsLm9yZwAKCRDBN2bmhouD18jRD/9Jy7jURI21QFZ2XBtUvC3VYiYkgNEmEf01
 /hM8Nlt5LNpbXzwmHqIMq7BtaoX2ub5STufmMrJ/PyM58K3+8gnBK0xrKebJ6mS0
 6IzqMfqinYKvF067Hbf5Gq7O0U6yBPiqWdOKpIQwhDq4Z8PXueDAxBuex/MJThlt
 wuePxpyrZLsi5qpGNxp4pjhKEg2UeamcctbMKcqM4aaoNoNfbblcbwtR1vfFev5F
 Rs7KI2hbQ9Qr1vb8Q37FceCXtPxHDHkEV9vC4bejc1Gr+6m3EwkQSanliLUWi1f1
 E69SzPGNcenMuX2IETHmmck3SZpfpNm+eVkRM/czOJo4FM8GzoK+6DbCdMX1R4/g
 bkb3c3u1OiAtxLgya+4Zgwz3OcApvafiSZ0PgnMhbVbIKJR7nAM6nF00Hnwhfp9E
 qZE1+vgVjDXDpJxrKdEf4CTIYRgNaZ8PwyJaOeYW2JxB4oJm87M291zD34yCbASR
 Le0pR/YG8Cu/rMj3xuB9u8cA3vcAjG2nTePaw4sAbNwQWpBV/Gwuqz3xqWGwQFGH
 7UOLT0PSELKkkK+c1MM30v0xyPpqnvixFFjEF3QtBbzv4+4k8zHHp/UF8CUBTMuV
 RQ/a9TJOC9S97xkPV4R4aOGdk4sGW3TRUPXuWlzr3XWjqvUolA1CBjSgGvoaemE6
 v7h3P8Ssrw==
 =ObqP
 -----END PGP SIGNATURE-----

Merge tag 'samsung-clk-6.2' of https://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux into clk-fixes

Pull Samsung SoC clk driver fixes from Krzysztof Kozlowski:

 - Fix calling of_device_get_match_data() on wrong device (parent's) in
   Exynos clock out driver
 - Correct clock name in bindings of ExynosAutov9 clocks
 - Correct parents of div4 clock on Exynos7885

* tag 'samsung-clk-6.2' of https://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux:
  clk: samsung: Revert "clk: samsung: exynos-clkout: Use of_device_get_match_data()"
  dt-bindings: clock: exynosautov9: fix reference to CMU_FSYS1
  clk: samsung: exynos7885: Correct "div4" clock parents
2022-11-22 16:35:46 -08:00
Stephen Boyd
d0b1c69288 Amlogic clock updates for v6.1
* Adds 2 PLL driver fixups
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEE9OFZrhjz9W1fG7cb5vwPHDfy2oUFAmNqfpQACgkQ5vwPHDfy
 2oW+KQ/+OoQmRVw+sQRevfeVNtPe0IVWe2qHySUUesC7l0KnpK1Y0bgPFZeUTeHo
 enD0EBHTczItxtYrsRUwBIiOicS16rMKCyEqm8av14wLpgd1IO3kS/LpXXNNRVh1
 Ebces++ESMGkARJhUUkO7e0dGMxzA0tRIZmuZL+FH0jYwv6u3eLMnoNU7js5fTcq
 tISlPSCCgdukbEg114yEWt+wt/fF8/7ty7sMZi4WOsKPwLfjCgKGkhHK4TB5gBEQ
 Mrg+F48e/WY69g5n4XZ8CoK/WRsSzEY4KMPh2lZyrNN5LA8GxjWA49bfUmSFCePV
 tdNRLoKEoeugobDJBrvNIE2xTcwmQ2DLxZWaj7wZZjQU1S0sPBI8cP0ThoI0hDTD
 U87wKYatJi+/aTnCTooArh62RKRCwhdsuMBqJdBS6LcgbtylWfMPHbRyzBxVlo0i
 tcKhrLCS3a01f+nJ4dkJfEBbXe/GuzF/nc0pn15ensSFAl7eOfSAqKLtLzqwm6Ln
 vEixfrApuNGy9Z0fgbLBtuhzYxoxaVdbHTxmEZ1SRmvFBh8XdnO+n2t3wyteKtPT
 n71HdpOECnYBhiuqw38PYIIdwUo3511arWA2sjz1qE1dre9xfNCf1luPvohY3C5J
 BPliratUgst2LNAuJqt7V92dVVAVM+k8nxb7i+gvoRj96Q5ojp4=
 =kOo0
 -----END PGP SIGNATURE-----

Merge tag 'clk-meson-v6.2-1' of https://github.com/BayLibre/clk-meson into clk-amlogic

Pull Amlogic clk driver updates from Jerome Brunet:

 - Add 2 PLL driver fixups

* tag 'clk-meson-v6.2-1' of https://github.com/BayLibre/clk-meson:
  clk: meson: pll: add pcie lock retry workaround
  clk: meson: pll: adjust timeout in meson_clk_pll_wait_lock()
2022-11-22 16:25:08 -08:00
Dan Carpenter
ad51705978 drm/msm/hdmi: remove unnecessary NULL check
This code was recently refactored in commit and now the "hdmi" pointer
can't be NULL.  Checking for NULL leads to a Smatch warning:

    drivers/gpu/drm/msm/hdmi/hdmi.c:141 msm_hdmi_init()
    warn: variable dereferenced before check 'hdmi' (see line 119)

Fixes: 69a88d8633 ("drm/msm/hdmi: move resource allocation to probe function")
Signed-off-by: Dan Carpenter <error27@gmail.com>
Reviewed-by: Abhinav Kumar <quic_abhinavk@quicinc.com>
Patchwork: https://patchwork.freedesktop.org/patch/512163/
Link: https://lore.kernel.org/r/Y3eCqQ2pm1uQnktV@kadam
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
2022-11-23 01:39:03 +02:00
Bryan O'Donoghue
c54155622c dt-bindings: msm: dsi-controller-main: Drop redundant phy-names
Adding in msm8939 which is based msm8916 dtsi I stumbled across a binding
check complaining about the phy name for msm8916 which we were reusing for
msm8939.

The currently inconsistent upstream dtsi naming of "dsi" and "dsi-phy" is
not captured in the yaml for this driver.

The driver however doesn't care about the name of DSI phy, hence the yaml
check is redundant.

Both Krzysztof and Rob suggested we could drop the phy-names entirely if it
really isn't a dependency.

So, drop the inconsistent and unnecessary phy-names field from the yaml.

Signed-off-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org>
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
2022-11-23 01:37:47 +02:00
Yang Yingliang
60d865bd5a of: property: decrement node refcount in of_fwnode_get_reference_args()
In of_fwnode_get_reference_args(), the refcount of of_args.np has
been incremented in the case of successful return from
of_parse_phandle_with_args() or of_parse_phandle_with_fixed_args().

Decrement the refcount if of_args is not returned to the caller of
of_fwnode_get_reference_args().

Fixes: 3e3119d308 ("device property: Introduce fwnode_property_get_reference_args")
Signed-off-by: Yang Yingliang <yangyingliang@huawei.com>
Reviewed-by: Sakari Ailus <sakari.ailus@linux.intel.com>
Reviewed-by: Frank Rowand <frowand.list@gmail.com>
Link: https://lore.kernel.org/r/20221121023209.3909759-1-yangyingliang@huawei.com
Signed-off-by: Rob Herring <robh@kernel.org>
2022-11-22 17:22:52 -06:00
Dave Airlie
3d335a523b GVT Changes:
- gvt-next stuff mostly with refactor for the new MDEV interface.
 
 i915 Changes:
 - PSR fixes and improvements (Jouni)
 - DP DSC fixes (Vinod, Jouni)
 - More general display cleanups (Jani)
 - More display collor management cleanup targetting degamma (Ville)
 - remove circ_buf.h includes (Jiri)
 - wait power off delay at driver remove to optimize probe (Jani)
 - More audio cleanup targeting the ELD precompute readout (Ville)
 - Enable DC power states on all eDP ports (Imre)
 - RPL-P stepping info (Matt Atwood)
 - MTL enabling patches (RK)
 - Removal of DG2 force_probe (Matt)
 -----BEGIN PGP SIGNATURE-----
 
 iQEzBAABCAAdFiEEbSBwaO7dZQkcLOKj+mJfZA7rE8oFAmN3+28ACgkQ+mJfZA7r
 E8rGZQf9HiTNW1yM1/YGq7ezD6/XN2sbCaH/iVNd0+FHxz4HHaTJaEVQ1xEBTdIb
 poMQiWl64ig3t2LuDrRGwlsVmFYV3vK5byt758sMpLb/M3cWbbB2swsW4YTbORM6
 qcatv9eYyuoiylwj6fVLFPMXpwNTyCdbngbLZt+tTcl1oxaZYp0PVXBkzlKFP02U
 KL4p+Dv4OHSjP38beIzUaHz3IJJAik/ttsxa1JhhC8F9UUJs7kuo6GXMY1OzRNpc
 jKj3+F0OtDRA2xaw7YpbLI8yt+pWzerqFsnZDAvvx8Js7SQLkyNtjkuHusp8OP77
 x99MlyOfbSfBnkbdm4Rhm7IIPTiUnw==
 =SHn9
 -----END PGP SIGNATURE-----

Merge tag 'drm-intel-next-2022-11-18' of git://anongit.freedesktop.org/drm/drm-intel into drm-next

GVT Changes:
- gvt-next stuff mostly with refactor for the new MDEV interface.

i915 Changes:
- PSR fixes and improvements (Jouni)
- DP DSC fixes (Vinod, Jouni)
- More general display cleanups (Jani)
- More display collor management cleanup targetting degamma (Ville)
- remove circ_buf.h includes (Jiri)
- wait power off delay at driver remove to optimize probe (Jani)
- More audio cleanup targeting the ELD precompute readout (Ville)
- Enable DC power states on all eDP ports (Imre)
- RPL-P stepping info (Matt Atwood)
- MTL enabling patches (RK)
- Removal of DG2 force_probe (Matt)

Signed-off-by: Dave Airlie <airlied@redhat.com>

From: Rodrigo Vivi <rodrigo.vivi@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/Y3f71obyEkImXoUF@intel.com
2022-11-23 09:15:44 +10:00
Daniel Bristot de Oliveira
022632f6c4 tracing/osnoise: Fix duration type
The duration type is a 64 long value, not an int. This was
causing some long noise to report wrong values.

Change the duration to a 64 bits value.

Link: https://lkml.kernel.org/r/a93d8a8378c7973e9c609de05826533c9e977939.1668692096.git.bristot@kernel.org

Cc: stable@vger.kernel.org
Cc: Daniel Bristot de Oliveira <bristot@kernel.org>
Cc: Steven Rostedt <rostedt@goodmis.org>
Cc: Masami Hiramatsu <mhiramat@kernel.org>
Cc: Jonathan Corbet <corbet@lwn.net>
Fixes: bce29ac9ce ("trace: Add osnoise tracer")
Signed-off-by: Daniel Bristot de Oliveira <bristot@kernel.org>
Acked-by: Masami Hiramatsu (Google) <mhiramat@kernel.org>
Signed-off-by: Steven Rostedt (Google) <rostedt@goodmis.org>
2022-11-22 18:12:01 -05:00
Xiu Jianfeng
ccc6e59007 tracing/user_events: Fix memory leak in user_event_create()
Before current_user_event_group(), it has allocated memory and save it
in @name, this should freed before return error.

Link: https://lkml.kernel.org/r/20221115014445.158419-1-xiujianfeng@huawei.com

Fixes: e5d271812e ("tracing/user_events: Move pages/locks into groups to prepare for namespaces")
Signed-off-by: Xiu Jianfeng <xiujianfeng@huawei.com>
Acked-by: Masami Hiramatsu (Google) <mhiramat@kernel.org>
Acked-by: Beau Belgrave <beaub@linux.microsoft.com>
Signed-off-by: Steven Rostedt (Google) <rostedt@goodmis.org>
2022-11-22 18:09:50 -05:00
Christoph Hellwig
22c17e279a blk-mq: fix queue reference leak on blk_mq_alloc_disk_for_queue failure
Drop the request queue reference just acquired when __alloc_disk_node
failed.

Fixes: 6f8191fdf4 ("block: simplify disk shutdown")
Reported-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Damien Le Moal <damien.lemoal@opensource.wdc.com>
Link: https://lore.kernel.org/r/20221122072753.426077-1-hch@lst.de
Signed-off-by: Jens Axboe <axboe@kernel.dk>
2022-11-22 15:58:08 -07:00
Alexei Starovoitov
8a2162a922 Merge branch 'Support storing struct cgroup * objects as kptrs'
David Vernet says:

====================

In [0], we added support for storing struct task_struct * objects as
kptrs. This patch set extends this effort to also include storing struct
cgroup * object as kptrs.

As with tasks, there are many possible use cases for storing cgroups in
maps. During tracing, for example, it could be useful to query cgroup
statistics such as PSI averages, or tracking which tasks are migrating
to and from the cgroup.

[0]: https://lore.kernel.org/all/20221120051004.3605026-1-void@manifault.com/
====================

Acked-by: Tejun Heo <tj@kernel.org>
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
2022-11-22 14:46:54 -08:00
David Vernet
227a89cf50 selftests/bpf: Add selftests for bpf_cgroup_ancestor() kfunc
bpf_cgroup_ancestor() allows BPF programs to access the ancestor of a
struct cgroup *. This patch adds selftests that validate its expected
behavior.

Signed-off-by: David Vernet <void@manifault.com>
Link: https://lore.kernel.org/r/20221122055458.173143-5-void@manifault.com
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
2022-11-22 14:45:41 -08:00
David Vernet
5ca7867078 bpf: Add bpf_cgroup_ancestor() kfunc
struct cgroup * objects have a variably sized struct cgroup *ancestors[]
field which stores pointers to their ancestor cgroups. If using a cgroup
as a kptr, it can be useful to access these ancestors, but doing so
requires variable offset accesses for PTR_TO_BTF_ID, which is currently
unsupported.

This is a very useful field to access for cgroup kptrs, as programs may
wish to walk their ancestor cgroups when determining e.g. their
proportional cpu.weight. So as to enable this functionality with cgroup
kptrs before var_off is supported for PTR_TO_BTF_ID, this patch adds a
bpf_cgroup_ancestor() kfunc which accesses the cgroup node on behalf of
the caller, and acquires a reference on it. Once var_off is supported
for PTR_TO_BTF_ID, and fields inside a struct can be marked as trusted
so they retain the PTR_TRUSTED modifier when walked, this can be
removed.

Signed-off-by: David Vernet <void@manifault.com>
Link: https://lore.kernel.org/r/20221122055458.173143-4-void@manifault.com
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
2022-11-22 14:45:41 -08:00
David Vernet
f583ddf15e selftests/bpf: Add cgroup kfunc / kptr selftests
This patch adds a selftest suite to validate the cgroup kfuncs that were
added in the prior patch.

Signed-off-by: David Vernet <void@manifault.com>
Link: https://lore.kernel.org/r/20221122055458.173143-3-void@manifault.com
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
2022-11-22 14:45:41 -08:00
David Vernet
fda01efc61 bpf: Enable cgroups to be used as kptrs
Now that tasks can be used as kfuncs, and the PTR_TRUSTED flag is
available for us to easily add basic acquire / get / release kfuncs, we
can do the same for cgroups. This patch set adds the following kfuncs
which enable using cgroups as kptrs:

struct cgroup *bpf_cgroup_acquire(struct cgroup *cgrp);
struct cgroup *bpf_cgroup_kptr_get(struct cgroup **cgrpp);
void bpf_cgroup_release(struct cgroup *cgrp);

A follow-on patch will add a selftest suite which validates these
kfuncs.

Signed-off-by: David Vernet <void@manifault.com>
Link: https://lore.kernel.org/r/20221122055458.173143-2-void@manifault.com
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
2022-11-22 14:45:41 -08:00
Roberto Sassu
572302af12 reiserfs: Add missing calls to reiserfs_security_free()
Commit 57fe60df62 ("reiserfs: add atomic addition of selinux attributes
during inode creation") defined reiserfs_security_free() to free the name
and value of a security xattr allocated by the active LSM through
security_old_inode_init_security(). However, this function is not called
in the reiserfs code.

Thus, add a call to reiserfs_security_free() whenever
reiserfs_security_init() is called, and initialize value to NULL, to avoid
to call kfree() on an uninitialized pointer.

Finally, remove the kfree() for the xattr name, as it is not allocated
anymore.

Fixes: 57fe60df62 ("reiserfs: add atomic addition of selinux attributes during inode creation")
Cc: stable@vger.kernel.org
Cc: Jeff Mahoney <jeffm@suse.com>
Cc: Tetsuo Handa <penguin-kernel@I-love.SAKURA.ne.jp>
Reported-by: Mimi Zohar <zohar@linux.ibm.com>
Reported-by: Tetsuo Handa <penguin-kernel@I-love.SAKURA.ne.jp>
Signed-off-by: Roberto Sassu <roberto.sassu@huawei.com>
Reviewed-by: Mimi Zohar <zohar@linux.ibm.com>
Signed-off-by: Paul Moore <paul@paul-moore.com>
2022-11-22 17:43:31 -05:00
Pierre Gondois
848343c0b4 arm64: dts: rockchip: update cache properties for rk3308 and rk3328
The DeviceTree Specification v0.3 specifies that the cache node
'compatible' and 'cache-level' properties are 'required'. Cf.
s3.8 Multi-level and Shared Cache Nodes
The 'cache-unified' property should be present if one of the
properties for unified cache is present ('cache-size', ...).

Update the Device Trees accordingly.

Signed-off-by: Pierre Gondois <pierre.gondois@arm.com>
Link: https://lore.kernel.org/r/20221107155825.1644604-20-pierre.gondois@arm.com
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2022-11-22 23:28:44 +01:00
Andrew Powers-Holmes
afbaed737f arm64: dts: rockchip: Add SOQuartz Model A baseboard
This patch adds the device tree for the "Model A" baseboard for
the SOQuartz CM4 SoM, which is not to be confused with the
Quartz64 Model A, which is the same form factor and SoC, but is
not a CM4 carrier board.

The board features a PCIe 2 x1 slot, USB 2 host ports, CSI/DSI
connectors, an eDP FFC connector, gigabit ethernet, HDMI, and a
12V DC barrel jack. Also present is a microSD card slot, 40-pin
GPIO, and a power and reset button.

Signed-off-by: Andrew Powers-Holmes <aholmes@omnom.net>
[rebase, misc fixes, reword]
Signed-off-by: Nicolas Frattaroli <frattaroli.nicolas@gmail.com>
Link: https://lore.kernel.org/r/20221116115337.541601-5-frattaroli.nicolas@gmail.com
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2022-11-22 23:22:49 +01:00
Nicolas Frattaroli
7441d8c437 dt-bindings: arm: rockchip: Add SOQuartz Model A
The SOQuartz Model A base board is a carrier board for the CM4
form factor, designed around the PINE64 SOQuartz CM4 SoM.

The board sports "Model A" dimensions like the Quartz64 Model A,
but is not to be confused with that.

As for I/O, it features USB 2 ports, Gigabit Ethernet, a PCIe 2
x1 slot, HDMI, a 40-pin GPIO header, CSI/DSI connectors, an eDP
flat-flex cable connector, a 12V DC barrel jack for power input
and power/reset buttons as well as a microSD card slot.

Signed-off-by: Nicolas Frattaroli <frattaroli.nicolas@gmail.com>
Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Link: https://lore.kernel.org/r/20221116115337.541601-4-frattaroli.nicolas@gmail.com
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2022-11-22 23:22:40 +01:00
Andrew Powers-Holmes
a5c826ecde arm64: dts: rockchip: Add SOQuartz blade board
This adds a device tree for the PINE64 SOQuartz blade baseboard,
a 1U rack mountable baseboard for the CM4 form factor with PoE
support designed for the SOQuartz CM4 System-on-Module.

The board takes power from either PoE or a 5V DC input, and allows
for mounting an M.2 SSD.

The board also features one USB 2.0 host port, one HDMI output,
a 3.5mm jack for UART, and the aforementioned gigabit networking
port.

Signed-off-by: Andrew Powers-Holmes <aholmes@omnom.net>
[rebase, squash, reword, misc fixes]
Signed-off-by: Nicolas Frattaroli <frattaroli.nicolas@gmail.com>
Link: https://lore.kernel.org/r/20221116115337.541601-3-frattaroli.nicolas@gmail.com
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2022-11-22 23:22:40 +01:00
Nicolas Frattaroli
8c84c2e51f dt-bindings: arm: rockchip: Add SOQuartz Blade
Add a compatible for the SOQuartz Blade base board to the rockchip
platforms binding.

The SOQuartz Blade is a PoE-capable carrier board for the CM4 SoM
form factor, designed around the SOQuartz CM4 System-on-Module.

The board features the usual connectivity (GPIO, USB, HDMI,
Ethernet) and an M.2 slot for SSDs. It may also be powered from
a 5V barrel jack input, and has a 3.5mm jack for UART debug
output.

Signed-off-by: Nicolas Frattaroli <frattaroli.nicolas@gmail.com>
Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Link: https://lore.kernel.org/r/20221116115337.541601-2-frattaroli.nicolas@gmail.com
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2022-11-22 23:22:39 +01:00
Jean Delvare
5f964b0246 Input: stmpe-ts - drop obsolete dependency on COMPILE_TEST
Since commit 0166dc11be ("of: make CONFIG_OF user selectable"), it
is possible to test-build any driver which depends on OF on any
architecture by explicitly selecting OF. Therefore depending on
COMPILE_TEST as an alternative is no longer needed.

It is actually better to always build such drivers with OF enabled,
so that the test builds are closer to how each driver will actually be
built on its intended target. Building them without OF may not test
much as the compiler will optimize out potentially large parts of the
code. In the worst case, this could even pop false positive warnings.
Dropping COMPILE_TEST here improves the quality of our testing and
avoids wasting time on non-existent issues.

Signed-off-by: Jean Delvare <jdelvare@suse.de>
Link: https://lore.kernel.org/r/20221121145203.1efb0c08@endymion.delvare
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
2022-11-22 14:20:28 -08:00
Maya Matuszczyk
4e2347dbd6 arm64: dts: rockchip: Add Anbernic RG351M
This device is a clone of Odroid Go Advance, with added PWM motor, internal
gamepad connected on USB instead of just having it be on GPIO + ADC, and
missing battery shunt resistor.
Due to missing shunt resistor and lack of a workaround in rk817_charger
driver rk817_charger is not enabled in dts.

There's also an LED on GPIO 77(I *guess* PB5 on &gpio2),
that is controlled in a weird way:

- It is set to red by setting output value to 1
- Set to green by setting output value to 0
- Set to yellow by setting gpio direction to input

I have no idea how to describe that in DTS, without adding a custom
driver, for now it's just left out.

Signed-off-by: Maya Matuszczyk <maccraft123mc@gmail.com>
Link: https://lore.kernel.org/r/20221117215954.4114202-6-maccraft123mc@gmail.com
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2022-11-22 23:20:06 +01:00
Maya Matuszczyk
2f217d71aa arm64: dts: rockchip: Add Odroid Go Super
This device is another revision of Odroid Go Advance, with added two
volume buttons, a second analog stick and a bigger screen that isn't yet
supported in the mainline kernel.

Signed-off-by: Maya Matuszczyk <maccraft123mc@gmail.com>
Link: https://lore.kernel.org/r/20221117215954.4114202-5-maccraft123mc@gmail.com
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2022-11-22 23:20:05 +01:00
Maya Matuszczyk
abba44b3e7 arm64: dts: rockchip: Add Odroid Go Advance Black Edition
This device is a minor revision of the origin Odroid Go Advance, with
added two more buttons and a WiFi card

Signed-off-by: Maya Matuszczyk <maccraft123mc@gmail.com>
Link: https://lore.kernel.org/r/20221117215954.4114202-4-maccraft123mc@gmail.com
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2022-11-22 23:20:05 +01:00
Maya Matuszczyk
76eeb9b665 dt-bindings: arm: rockchip: Add more RK3326 devices
This patch adds Anbernic RG351M, Odroid Go Advance Black Edition and
Odroid Go Super into dt bindings.

Signed-off-by: Maya Matuszczyk <maccraft123mc@gmail.com>
Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Link: https://lore.kernel.org/r/20221117215954.4114202-3-maccraft123mc@gmail.com
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2022-11-22 23:20:05 +01:00
Maya Matuszczyk
04ea3e3038 arm64: dts: rockchip: Move most of Odroid Go Advance DTS into a DTSI
To support more devices that are clones of this device or minor
revisions without duplication move most of go2's dts into a dtsi file.

Signed-off-by: Maya Matuszczyk <maccraft123mc@gmail.com>
Link: https://lore.kernel.org/r/20221117215954.4114202-2-maccraft123mc@gmail.com
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2022-11-22 23:20:05 +01:00
Linus Walleij
ff5a19909b
bus: ixp4xx: Don't touch bit 7 on IXP42x
We face some regressions on a few IXP42x systems when
accessing flash, the following unrelated error prints
appear from the PCI driver:

ixp4xx-pci c0000000.pci: PCI: abort_handler addr = 0xff9ffb5f,
	   isr = 0x0, status = 0x22a0
ixp4xx-pci c0000000.pci: imprecise abort
(...)

It turns out that while bit 7 is masked "reserved" it is
not unused, so masking it off as zero is dangerous, and
breaks flash access on some systems such as the NSLU2.
Be more careful and avoid masking off any of the reserved
bits 7, 8, 9 or 30. Only keep masking EXP_WORD (bit 2)
on IXP43x which is necessary in some setups.

Fixes: 1c953bda90 ("bus: ixp4xx: Add a driver for IXP4xx expansion bus")
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Cc: stable@vger.kernel.org
Link: https://lore.kernel.org/r/20221122134411.2030372-1-linus.walleij@linaro.org
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2022-11-22 23:12:18 +01:00
Arnd Bergmann
8ccf49d7fb Fix check warnings all over the place.
mt7986:
 - Add crypto, I2C and SPI nodes
 
 mt6795:
 - Add clock nodes
 - Add DMA support for UARTs
 - Add MMC nodes
 - Add basic support for Sonyx Xperia M5
 
 mt8195:
 - Add video enconder node
 - Add PCIe support
 - Fine tune capacity-dmips-mhz
 - Add support for internal and external display port
 -----BEGIN PGP SIGNATURE-----
 
 iQJLBAABCAA1FiEEUdvKHhzqrUYPB/u8L21+TfbCqH4FAmN7we4XHG1hdHRoaWFz
 LmJnZ0BnbWFpbC5jb20ACgkQL21+TfbCqH6kZhAAp2Jq3a/YWgUKSLIEVHLTXdQ7
 BlG43pxPhL45+HF7upwzCQmMcURltnLFcfwX/8Wwa54l3cwO/nnRkIZunZ1+IMJt
 cyxz9drDWI7jWFRSV/jSWdkUh4jllrWLJtfSXQng1by0ojht5d+PMnmWJbRbMUnc
 9fAwF8hOeTqAY6/Wfem/Zpbtzd0riBgV2bPLPSbDR2Lan9pm8uvvZ5ajFHTXiI+W
 WWzdglNKG69P1TSv2vSeUBRocaNMAQZrBnVJ0y7paKjR1FvDWDFeG4oVETn/nLmJ
 ELfWuWZckdx07vF7cJ3y55DtDJ67KXqCtrjiuy5iHHElOnzf1pKCPRKEEWw1Kzu2
 yobRIQh4zCHm+NtzbKuP3TdPU+WMJrecwmWNEL1KJRsVDqNjPSslWwjzttA6+OBZ
 rG+A/BOM579c7571RyuRqzgXgTiOcySera+n5dwyTSSmfgzYfhgmwicXNoU47luK
 8PVkxSHH3VAN/zzQKX4R8yWsV6zpPRvntEwuMnnilLzPZ26bOXpm+PoTAqvmU5fC
 1ycYfeQ8L0Md80TGbEDPrpLKV163oUTu3lOBcmYa28GOl+UQmUN9PCZxhJ+piy8H
 k2Z4YYugYiBRmDb50DTJfb3s/2RUptNL6qp2GiAfVxgR0HJmRv9BWB+03Sj6w9/F
 dkLhHZTmKlSigWMEJyM=
 =pZ8i
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmN9SM4ACgkQmmx57+YA
 GNmJzg//WybRSpRys9eLXUpu+iN0w5b1JyxYa8eoidMLWf6tmhr+POifRG/P4rbB
 3WyRIdlOr8PZx5CUJNqlTLGqDAt/Y6KhhkzuSAUh9GRnvYhBVGrGMhkshf1+nn1S
 cfukJVbErDwWLey2xcVTmGzbuSNDrLRRSsnwrNqfy7ZXoiBrPPYV6OnOsPlTcScQ
 wwziUNw5ets5Mew+uWuX+WsGHLhb0U2UdY4bxfEOm1fI5L+1KK8gvIVVI73adoR2
 qZnuPCGkB2clFLzhoYi7YZ7GYWkm+R+74hpEOIkKb7+El+3wldNk3Vxj3tArW650
 NK0MzgdXU5f61fw/kdTsEK+AuTr/owkLoBN2wzpAaBh5O6Gp/RcBUhkDEIsPWGRg
 WHR0BIrHAY6g6lu+ikrrQc7eQ4TO3hMSXrXaZcc97YV8ukjDq624KlKUzJueIrrM
 4Dp2YRuXkOOEe4AGnuPVgwyIy4RhNyDNqnJBhbSOvJZfVMGpyzWqF+iwyyqHnKbY
 N2quio/AejQyyxT2qMwKXd81cSphx5QagN+KqDFf6HsI8l8VSf35iwXhcKdJEQfN
 u4Db6ZByr/BNVSxrib8eMTay1MaxuDhau1QcFdi1/JXGc5vtLQTIgpto8dxurgMj
 CrXrZlUu4yZ2MGJK0+5yAV4qzHMourZ7nOPmUZnXoJB2d6SnhQ8=
 =sw9W
 -----END PGP SIGNATURE-----

Merge tag 'v6.1-next-dts64' of https://git.kernel.org/pub/scm/linux/kernel/git/matthias.bgg/linux into soc/dt

Fix check warnings all over the place.

mt7986:
- Add crypto, I2C and SPI nodes

mt6795:
- Add clock nodes
- Add DMA support for UARTs
- Add MMC nodes
- Add basic support for Sonyx Xperia M5

mt8195:
- Add video enconder node
- Add PCIe support
- Fine tune capacity-dmips-mhz
- Add support for internal and external display port

* tag 'v6.1-next-dts64' of https://git.kernel.org/pub/scm/linux/kernel/git/matthias.bgg/linux: (35 commits)
  arm64: dts: mt7986: add spi related device nodes
  arm64: dts: mt7986: move wed_pcie node
  arm64: dts: mediatek: Add support for MT6795 Sony Xperia M5 smartphone
  dt-bindings: arm: mediatek: Add compatible for MT6795 Sony Xperia M5
  arm64: dts: mediatek: mt6795: Add support for eMMC/SD/SDIO controllers
  arm64: dts: mediatek: mt6795: Add support for APDMA and wire up UART DMAs
  arm64: dts: mediatek: mt6795: Replace UART dummy clocks with pericfg
  arm64: dts: mediatek: mt6795: Add topckgen, infra, peri clocks/resets
  arm64: dts: mediatek: cherry: Add edptx and dptx support
  arm64: dts: mediatek: cherry: Add dp-intf ports
  arm64: dts: mt8195: Add edptx and dptx nodes
  arm64: dts: mt8195: Add dp-intf nodes
  arm64: dts: mediatek: mt6797: Fix 26M oscillator unit name
  arm64: dts: mediatek: pumpkin-common: Fix devicetree warnings
  arm64: dts: mt2712-evb: Fix usb vbus regulators unit names
  arm64: dts: mt2712-evb: Fix vproc fixed regulators unit names
  arm64: dts: mt2712e: Fix unit address for pinctrl node
  arm64: dts: mt2712e: Fix unit_address_vs_reg warning for oscillators
  arm64: dts: mt6779: Fix devicetree build warnings
  arm64: dts: mt7896a: Fix unit_address_vs_reg warning for oscillator
  ...

Link: https://lore.kernel.org/r/8933d687-71f0-e9ad-a7c6-2e5a8993463d@gmail.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2022-11-22 23:10:22 +01:00
Anand Moon
79aa02ddc6 arm64: dts: rockchip: Add support of regulator for ethernet node on Rock 3A SBC
Add regulator support for ethernet node

Fix following warning.
[    7.365199] rk_gmac-dwmac fe010000.ethernet: no regulator found

Signed-off-by: Anand Moon <linux.amoon@gmail.com>
Acked-by: Michael Riesch <michael.riesch@wolfvision.net>
Tested-by: Michael Riesch <michael.riesch@wolfvision.net>
Link: https://lore.kernel.org/r/20221116200150.4657-4-linux.amoon@gmail.com
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2022-11-22 23:09:25 +01:00
Anand Moon
ef9f4b4a50 arm64: dts: rockchip: Add support of external clock to ethernet node on Rock 3A SBC
Add support of external clock gmac1_clkin which is used as input clock
to ethernet node.

Signed-off-by: Anand Moon <linux.amoon@gmail.com>
Reviewed-by: Michael Riesch <michael.riesch@wolfvision.net>
Tested-by: Michael Riesch <michael.riesch@wolfvision.net>
Link: https://lore.kernel.org/r/20221116200150.4657-3-linux.amoon@gmail.com
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2022-11-22 23:09:25 +01:00
Vignesh Raghavendra
c11b537e41 soc: ti: k3-socinfo: Add AM62Ax JTAG ID
Add JTAG ID entry to help identify AM62Ax SoC in kernel.

Signed-off-by: Vignesh Raghavendra <vigneshr@ti.com>
Reviewed-by: Bryan Brattlof <bb@ti.com>
Signed-off-by: Nishanth Menon <nm@ti.com>
Link: https://lore.kernel.org/r/20221119152447.241166-1-vigneshr@ti.com
2022-11-22 16:08:34 -06:00
Arnd Bergmann
0294678861 arm64: tegra: Device tree changes for v6.2-rc1
This contains many new additions, primarily for Tegra234, as well as a
 slew of cleanups for issues flagged by the DT validation tools.
 -----BEGIN PGP SIGNATURE-----
 
 iQJHBAABCAAxFiEEiOrDCAFJzPfAjcif3SOs138+s6EFAmN7rpkTHHRyZWRpbmdA
 bnZpZGlhLmNvbQAKCRDdI6zXfz6zoTT4EACggtfdoSghLUBBVuu6iFdiRuDEmEV/
 BLGy80NXes+PTH4UHOopFF3vawtyiaUsN584SkkhQfjvrETLvGSFQHEyXIV+zf/h
 GUiRKwli615kVZdTzNjY0Dc7tb3whOdSzb3fXlLstOR7UGhlx0qOy2E9mChtT/+n
 Fr57ioUO6cVy241mN1mtf1E0he6ndpMRKW5vHKn4TqjcksRMr8KFncEjHcnHLds1
 0i9pQhHqHLg3P1m7gVK/IZd5F8O5zE6PfIhzJi/8PirxHcp/SuAojAPSZWUN+SaG
 wgT5V5tN63PKvNVf5cm39KaXWKHTiPhbxMySC084a3s+ISPuOMXhgsjKBdRzGqok
 BwFTnMO7q8JcLq3uGA20RqhBHJDAlBLDllDeuz2BMhdqINVS70A3BtgkgUxNyxal
 E2eacQ/NRjf/d9awFnyLZ+OR9kYjtKiSpc3ojVbxcUEJhs1LFZ0wyL+Pl3hZ/9uy
 wDxQQMug5hBs7aXV7L9WD/9NmuS9EEd549r3JDRmpdpFA57fDvquh7jiERzuF+O8
 Ft6ivK9BhiHbxkPUbbHb+nyiQSG4V837z5mHExka1IBHruA5l7RCe4njLLIMuCBl
 amI8uOvFoVLz8/MmxKXUIwUuw5sAYmbLMPLqu6DL3vpw7G+3oh9NYFgVax/JMTCL
 7jrLlSxiUDgIaw==
 =O3Ij
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmN9RvMACgkQmmx57+YA
 GNkv6g/+IiRZTFZ+GPs0vRHISTlcHFJxUOoOGbimABmAEdW/ohQFyRQnY9eeytEi
 1bmKxzY9z0EwMrs4I8BTDSLI+Pm8ru1up0xUP6/FjU2PXBJa7Wh2jPL20sLnCVut
 gWFs9AOoYpDK0wKv+Dvdjb4llIStp88ZL872a8XbI5zKXVV1qT7ZrZWSyyg4OAE+
 Nm56SK/mTyCLkQh0cbENvDUfXd5/06JJRifyCcz6bVqp3IDN3r4ICaSwc26D3fqZ
 EuCKkc81KxBeN+ey3abq1BZ0jYB0cOAZfV5oLQ2eRIQuYxKt81+TpliS3n8oGgHN
 gI8HL/f9nkNEoVK12v3WgtQNd8oB43QsTCTto+F3atUV4yT0wtX+HgRPbiKJAmyI
 I8YeuMkr5cA1npFWNDVQlSXLsh6MRguAFZdlPcMA8Jq1/1MRg8sDgOiD3xjhStrx
 MwUiw4/++pOWj6wJlogsrjvNv3eJoKFW2hP6hN45ZBiOkHnvSXsud5yvuj6meHmq
 8HjGbHQ91Nmeu91gugMd5tdJcpvgkAGQBJqWycwWO90fQ1mUiNPtW8HxeyAsDYyI
 az439eDZf+Wn5GEIq4ZAR9b5LmL/LBceOawtNYuW9/+GA55C5ms+K/DkTmO4RfxE
 ySQi6e0TtWad3h/b4hSKwg0UhrwXvY4hr9FNzNhOi9qLLUe/KwU=
 =Ptk7
 -----END PGP SIGNATURE-----

Merge tag 'tegra-for-6.2-arm64-dt-v2' of git://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux into soc/dt

arm64: tegra: Device tree changes for v6.2-rc1

This contains many new additions, primarily for Tegra234, as well as a
slew of cleanups for issues flagged by the DT validation tools.

* tag 'tegra-for-6.2-arm64-dt-v2' of git://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux: (30 commits)
  arm64: tegra: Remove unneeded clock-names for Tegra132 PWM
  arm64: tegra: Fix up compatible string for SDMMC1 on Tegra234
  arm64: tegra: Remove unused reset-names for QSPI
  arm64: tegra: Fixup pinmux node names
  arm64: tegra: Remove reset-names for QSPI
  arm64: tegra: Use correct compatible string for Tegra234 HDA
  arm64: tegra: Use correct compatible string for Tegra194 HDA
  arm64: tegra: Use vbus-gpios property
  arm64: tegra: Restructure Tegra210 PMC pinmux nodes
  arm64: tegra: Update cache properties
  arm64: tegra: Remove 'enable-active-low'
  arm64: tegra: Add dma-channel-mask in GPCDMA node
  arm64: tegra: Fix non-prefetchable aperture of PCIe C3 controller
  arm64: tegra: Add missing compatible string to Ethernet USB device
  arm64: tegra: Separate AON pinmux from main pinmux on Tegra194
  arm64: tegra: Add ECAM aperture info for all the PCIe controllers
  arm64: tegra: Remove clock-names from PWM nodes
  arm64: tegra: Enable GTE nodes
  arm64: tegra: Update console for Jetson Xavier and Orin
  arm64: tegra: Enable PWM users on Jetson AGX Orin
  ...

Link: https://lore.kernel.org/r/20221121171239.2041835-7-thierry.reding@gmail.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2022-11-22 23:02:27 +01:00
Arnd Bergmann
83cbe78a9c dt-bindings: Changes for v6.2-rc1
New memory client IDs and IOMMU stream IDs, as well as new compatible
 strings are introduced to support more hardware on Tegra234. Some device
 tree bindings are converted to json-schema to allow formal validation.
 -----BEGIN PGP SIGNATURE-----
 
 iQJHBAABCAAxFiEEiOrDCAFJzPfAjcif3SOs138+s6EFAmN7rm8THHRyZWRpbmdA
 bnZpZGlhLmNvbQAKCRDdI6zXfz6zobCvD/9AsZG67rQQjJwhouvUChcCezSyLvO7
 l1v0u6L4mRd4+aavhV8yjhi0KEBKPDPXmfvcaXEXfQ5Atpcb37KHRdEskHFGo2+K
 W47a/rdlN2wTacH/cGtzZ4S+phWEZSW27sGbZR7GWrVs2Au/O3Aug8IXFN2b6Flh
 1Z6Y+rQ1wNCrUMLmPoLkb/8l579udiJDwFQOQ4KhvzKaLXTj5WTDXyOLAxB52TYT
 almlmVhGwoDyzPWfMOVuFN5e4d3f4DLNJDI82frQrCdv3j3Tb+J3O9vZX3a4HcMv
 awXz2SIHnOCYDSGEQvI+Dphx1gkUMBaIwQ7bmzAprlissrDczvg1uEZ8uQ5XrLcM
 zi2q0rd/Z8Z6AzL4J8MNFkz/JmZqgbuGuCtRmB7dMYuFjkjhCe7ALMJYLBrJfwPB
 B+KNE4Ib/xvUmzjbhzPapssuuNd9CuTcVRdMGxZB30WSUzmrTQW/kV5m447dJOoL
 WvQbNc3RKqsMzpi7SK0zD7kCtrNk48/rNexxVxhnskNcdNOiNhBbaeYi6d894b1E
 dWoVpTBXOQbSjjlVTeQcU7HZGM/53WooGWToAb19uanaqee5bAJuiH/Lyq4YzNof
 DSfo+jSWLPP78ScfA3OtSyR3BA1oub1el3JqnNS4x09pI2ykctsRa35mWSBoGFNO
 ZWG4Fy0A+GlP3w==
 =Eawq
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmN9RpoACgkQmmx57+YA
 GNm9TA//VYQpWDs5HD22hi3koKiEX781cgIm6WAshMMb22S5XpXT4n1pJJdWyucY
 jt6mBSaMOWOAFHmhAzwTkAdYEUeT+J15sJbBj66PhgICCLfaE0HrnFXg9Vn8Js69
 evNCK5n+hzgeUrXPU20kuIzQ5Qc5OgZHiXflA3waYaOhdG4Tavd3wErAdz3QBQ3H
 I/UB8YirRFfVovw8cAh18fJgRsEtPIEX9qmG+tu8zKe1t7eyyijtehPv5faegE1t
 A7iiAdSZvRHua5gQs4ukdDupJQVLf/KSDx7nHW22JzU5T69j8hc442hpIMN+n79N
 KD15LBKZGdg1pjaoQWMIhEXAuxd50/pPAj+rskYgBQcuf7JuKpi026oqPz39/jkE
 rQFfsOl9oZmJ4lv4hvTXqOitW7TMoYpkTmMm2d9mpG1RonKynuLPTuSuvYOBs38f
 kV7g7x7JubLDw/rZ1pe6Thkd8lCDbqjOGJw3ppXsELUM9mpuPuIUkCSGBSSc+kcM
 gNENyVmioGDS2gVKkkhjlqHKjQb/0ixyz1gmhyWy5TSZ/Y/qW1hyaGfBqHsKvOwV
 2juitJtRxQOasR2/PP3U1Cjg+NmfTcuoBN6nhbdgf9ZDT58RM6bcpVOv1onY9hNX
 /G1V3HmhIdfix6fTDtgf7fZu4pziXpJ7cSkx3i4UyW98yPxuIQA=
 =OUO0
 -----END PGP SIGNATURE-----

Merge tag 'tegra-for-6.2-dt-bindings-v2' of git://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux into soc/dt

dt-bindings: Changes for v6.2-rc1

New memory client IDs and IOMMU stream IDs, as well as new compatible
strings are introduced to support more hardware on Tegra234. Some device
tree bindings are converted to json-schema to allow formal validation.

* tag 'tegra-for-6.2-dt-bindings-v2' of git://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux:
  dt-bindings: usb: tegra-xusb: Convert to json-schema
  dt-bindings: pwm: tegra: Convert to json-schema
  dt-bindings: pinctrl: tegra194: Separate instances
  dt-bindings: pinctrl: tegra: Convert to json-schema
  dt-bindings: PCI: tegra234: Add ECAM support
  dt-bindings: pwm: tegra: Document Tegra234 PWM
  dt-bindings: Add bindings for Tegra234 NVDEC
  dt-bindings: tegra: Update headers for Tegra234
  dt-bindings: Add headers for NVDEC on Tegra234

Link: https://lore.kernel.org/r/20221121171239.2041835-4-thierry.reding@gmail.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2022-11-22 23:00:58 +01:00
Arnd Bergmann
867531d95c SoCFPGA dts updates for v6.2
- Use the "clk-phase-sd-hs" property for SDMMC
 - Remove the "clk-phase" fom the sdmmc_clk that is no longer used
 - Clean dtschema for mmc node
 - Increase NAND partition for Arria10
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEoHhMeiyk5VmwVMwNGZQEC4GjKPQFAmN7o1wACgkQGZQEC4Gj
 KPQCIQ//QIHQ7/6HFv9IgMvQ8lspR98S39QzbRjauIeDFmkEhLeguSktxYmW13LK
 YIQOauVeXB9lxffKsOYV4jswFihJgjMjnfRYfsMsw57/ymUp+Gh+alO9ZI0FOTYm
 rnqVl1PVJoAKe7Zq/wEqjKE8sdUomoumAUEC5iEl3DJF77fhHF98yMPhgFkj4THh
 7iUnmLL6anziI87PhaSR5UJM2L4e3mS17bZvYN5oOcRGhIsY0LKDRMioDttgXEge
 92TIzk8niMqcpwO1ueMCy/gUwNeWTCcWNuKswUH3B+N2ll5dwqNTISX5+pEKnCix
 dmelj6g0Oy/kIMzv8HawT2ce8Zqg4CH9aJTK8Z9xhm+FFxhO/G5SFR7lzk46F1T+
 Vp9vu9hsXT+B90vsE/Zl8tKhYbCmx+RjcXce44yEN+BZvjZT1JHqmfkCtGmIBL5W
 vgWqCPP3DZr1/TivKzzUQoFXlMqMoLIdyGFE/uVJdszHcb/ZOVfCeFxRekTe0Dpm
 NgLSlNvpGaJlmzAZj511d/BlC/btHt3v5PqqIbBScgPOIPiMBNvix8AqBHT0vKKo
 BS9PhiOIDPn946UZ09MNj0cyRXPCcBum3jnxohSQnouPILK3M3lCCMstSpVtLOF3
 pFSv2LwL8gvJTL8AgYoZ/E2SujYb2CEyeUiD7YVuk+/QjyMNo/U=
 =PU2+
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmN9RmYACgkQmmx57+YA
 GNkVYxAAuGxMNJnRj1797W13XGInnFxyfH5ZdQXY39gMhCmIi2C3kzgstqoDfwZ/
 nNpFYFYCqUEl3LnKfj7kRqHoJ66DMHIZVCXBjnDu1LgD7vLbP+mWD2IVBWPPphER
 NwDhADKmxgMp0oJGPYkC4LOP2eQzBI2jkuT8apPNHLIefHY+uGLL3QXHzccvIYI9
 R9sBUErZ75pNkALQg6hhMEwgP848+fZOhnWFob4X06dcEMuDu2UB7t4rCJc7XrGE
 kNrSGj4r15R/F/MnBmy2iEtqh19jadla8i74yiHECfVKpcGipzxxlNKnz57v8fyV
 P+SfP2riTUoiWe/Ebu1eGF4TF9IhnPse9ZhrozWLGma2pNI6FNGuuw34BL3ztuAE
 9oTKL4Jjsi9yLR79NgLv9Rjlu9OYYCWPZlBHZgY7xSA6Ahl+ZADjT3VUhK5r0zMJ
 Y4V/3n69/cbCyXYZYvTHWyC5m7LbbTYbFP3fPhTrGilwhU67TkA5ppnS0TQosr7B
 9Ty5ejH0iRYZBXvhuK7M6YypdKshV+sYtUWCZk7WghMHDD9haXGRyzRF4+sriXOS
 vqhQiOH3l8erHzQEu/S74CxUaauIrfVlG0cnfoySQ0h5l9GZrGmgbvDRuNj6UF9M
 vrddcNs5LL1+cuHkkByFCyJ0Uu0nKQW7itu1aNpOk0/FR8oeZMg=
 =h/fj
 -----END PGP SIGNATURE-----

Merge tag 'socfpga_dts_updates_for_v6.2' of git://git.kernel.org/pub/scm/linux/kernel/git/dinguyen/linux into soc/dt

SoCFPGA dts updates for v6.2
- Use the "clk-phase-sd-hs" property for SDMMC
- Remove the "clk-phase" fom the sdmmc_clk that is no longer used
- Clean dtschema for mmc node
- Increase NAND partition for Arria10

* tag 'socfpga_dts_updates_for_v6.2' of git://git.kernel.org/pub/scm/linux/kernel/git/dinguyen/linux:
  arm64: dts: socfpga: Add clk-phase-sd-hs property to the sdmmc node
  arm: dts: socfpga: Add clk-phase-sd-hs property to the sdmmc node
  arm: dts: socfpga: remove "clk-phase" in sdmmc_clk
  arm: dts: socfpga: align mmc node names with dtschema
  ARM: dts: socfpga: arria10: Increase NAND boot partition size

Link: https://lore.kernel.org/r/20221121163259.341974-1-dinguyen@kernel.org
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2022-11-22 23:00:06 +01:00
Svyatoslav Feldsherov
4e3c51f4e8 fs: do not update freeing inode i_io_list
After commit cbfecb927f ("fs: record I_DIRTY_TIME even if inode
already has I_DIRTY_INODE") writeback_single_inode can push inode with
I_DIRTY_TIME set to b_dirty_time list. In case of freeing inode with
I_DIRTY_TIME set this can happen after deletion of inode from i_io_list
at evict. Stack trace is following.

evict
fat_evict_inode
fat_truncate_blocks
fat_flush_inodes
writeback_inode
sync_inode_metadata(inode, sync=0)
writeback_single_inode(inode, wbc) <- wbc->sync_mode == WB_SYNC_NONE

This will lead to use after free in flusher thread.

Similar issue can be triggered if writeback_single_inode in the
stack trace update inode->i_io_list. Add explicit check to avoid it.

Fixes: cbfecb927f ("fs: record I_DIRTY_TIME even if inode already has I_DIRTY_INODE")
Reported-by: syzbot+6ba92bd00d5093f7e371@syzkaller.appspotmail.com
Reviewed-by: Jan Kara <jack@suse.cz>
Signed-off-by: Svyatoslav Feldsherov <feldsherov@google.com>
Link: https://lore.kernel.org/r/20221115202001.324188-1-feldsherov@google.com
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
2022-11-22 17:00:00 -05:00
Raul E Rangel
f16fb37dad Input: raydium_ts_i2c - don't set wake_capable and wake_irq
The i2c-core will now handle setting the wake_irq and wake capability
for DT and ACPI systems.

Signed-off-by: Raul E Rangel <rrangel@chromium.org>
Link: https://lore.kernel.org/r/20220929093200.v6.13.Ia0b24ab02c22125c5fd686cc25872bd26c27ac23@changeid
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
2022-11-22 13:59:29 -08:00
Raul E Rangel
44a87dd73b Input: elants_i2c - don't set wake_capable and wake_irq
The i2c-core will now handle setting the wake_irq and wake capability
for DT and ACPI systems.

Signed-off-by: Raul E Rangel <rrangel@chromium.org>
Link: https://lore.kernel.org/r/20220929093200.v6.12.I031ffbe411e1bae20bf16a1876da5baf444c7928@changeid
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
2022-11-22 13:59:27 -08:00