Commit graph

1,189,500 commits

Author SHA1 Message Date
Orlando Chamberlain
f863fac1b1 platform/x86: apple-gmux: add debugfs interface
Allow reading and writing gmux ports from userspace.

For example:

echo 4 > /sys/kernel/debug/apple_gmux/selected_port
cat /sys/kernel/debug/apple_gmux/selected_port_data | xxd -p

Will show the gmux version information (00000005 in this case)

Reviewed-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Orlando Chamberlain <orlandoch.dev@gmail.com>
Link: https://lore.kernel.org/r/20230303112842.3094-5-orlandoch.dev@gmail.com
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
2023-03-16 11:02:00 +01:00
Orlando Chamberlain
0c18184de9 platform/x86: apple-gmux: support MMIO gmux on T2 Macs
In some newer dual gpu MacBooks, the T2 Coprocessor functions as the
gmux, and the Intel side can interract with this new gmux type through
MMIO. Add support for these gmux controllers to the apple-gmux driver.

We start using the GMSP(0) acpi method on these gmux's when clearing
interrupts, as this prevents a flood of status=0 interrupts that can't
be cleared. It's unknown if this helps or hinders older gmux types, so
it isn't enabled for those.

Interestingly, the ACPI table only allocates 8 bytes for GMUX, but we
actually need 16, and as such we request 16 with request_mem_region.

Reading and writing from ports:
    16 bytes from 0xfe0b0200 are used. 0x0 to 0x4 are where data
    to read appears, and where data to write goes. Writing to 0xe
    sets the gmux port being accessed, and writing to 0xf sends commands.

    These commands are 0x40 & data_length for write, and data_length for
    read, where data_length is 1, 2 or 4. Once byte base+0xf is 0, the
    command is done.

Issues:
    As with other retina models, we can't switch DDC lines so
    switching at runtime doesn't work if the inactive gpu driver
    already disabled eDP due to it not being connected when that
    driver loaded.

    Additionally, turning on the dgpu back on on the MacBookPro16,1 does
    not work.

Reviewed-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Orlando Chamberlain <orlandoch.dev@gmail.com>
Link: https://lore.kernel.org/r/20230303112842.3094-4-orlandoch.dev@gmail.com
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
2023-03-16 11:02:00 +01:00
Orlando Chamberlain
96ec2d9868 platform/x86: apple-gmux: refactor gmux types
Add apple_gmux_config struct containing operations and data specific to
each mux type.

This is in preparation for adding a third, MMIO based, gmux type.

Reviewed-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Orlando Chamberlain <orlandoch.dev@gmail.com>
Link: https://lore.kernel.org/r/20230303112842.3094-3-orlandoch.dev@gmail.com
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
2023-03-16 11:02:00 +01:00
Orlando Chamberlain
90caf1dfe9 platform/x86: apple-gmux: use first bit to check switch state
On T2 Macs with MMIO gmux, when GMUX_PORT_SWITCH_DISPLAY is read, it can
have values of 2, 3, 4, and 5. Odd values correspond to the discrete gpu,
and even values correspond to the integrated gpu. The current logic is
that only 2 corresponds to IGD, but this doesn't work for T2 Macs.
Instead, check the first bit to determine the connected gpu.

As T2 Macs with gmux only can switch the internal display, it is
untested if this change (or a similar change) would be applicable
to GMUX_PORT_SWITCH_DDC and GMUX_PORT_SWITCH_EXTERNAL.

Reviewed-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Orlando Chamberlain <orlandoch.dev@gmail.com>
Link: https://lore.kernel.org/r/20230303112842.3094-2-orlandoch.dev@gmail.com
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
2023-03-16 11:02:00 +01:00
Greg Kroah-Hartman
f551592f72 interconnect fixes for v6.3-rc
This contains a bunch of fixes with the highlight being fixes for a race
 condition that could sometimes occur during the interconnect provider
 driver registration. There are also fixes for memory overallocation and
 a memory leak.
 
 - interconnect: qcom: osm-l3: fix icc_onecell_data allocation
 - interconnect: qcom: sm8450: switch to qcom_icc_rpmh_* function
 - interconnect: qcom: sm8550: switch to qcom_icc_rpmh_* function
 - interconnect: qcom: qcm2290: Fix MASTER_SNOC_BIMC_NRT
 - interconnect: fix mem leak when freeing nodes
 - interconnect: fix icc_provider_del() error handling
 - interconnect: fix provider registration API
 - interconnect: imx: fix registration race
 - interconnect: qcom: osm-l3: fix registration race
 - interconnect: qcom: rpm: fix probe child-node error handling
 - interconnect: qcom: rpm: fix registration race
 - interconnect: qcom: rpmh: fix probe child-node error handling
 - interconnect: qcom: rpmh: fix registration race
 - interconnect: qcom: msm8974: fix registration race
 - interconnect: exynos: fix node leak in probe PM QoS error path
 - interconnect: exynos: fix registration race
 - interconnect: exynos: drop redundant link destroy
 - memory: tegra: fix interconnect registration race
 - memory: tegra124-emc: fix interconnect registration race
 - memory: tegra20-emc: fix interconnect registration race
 - memory: tegra30-emc: fix interconnect registration race
 
 Signed-off-by: Georgi Djakov <djakov@kernel.org>
 -----BEGIN PGP SIGNATURE-----
 
 iQIcBAABAgAGBQJkEgJxAAoJEIDQzArG2BZjL3IP/3Jcvaxd7MRvclsuhhI7WaA/
 wh2J9yBzJaIe/dp9vd1Q1z6qfao3cdA2ClSqvTzytafYjlHAqEj5gNXiSNNEJLvD
 pDh7OSA7Woc27qDc5viNC5h+vZEMiX2Iajt3/zrH5XDKxix+TNYn2yjSqZ3bG7PT
 6AmWX+xZgU0LJ7Zc+BREC5wbFieKhT5aWJFxj5PiDtznl9NmVvmfEr5Ynx8hjZJS
 M2QoWZ5oZz+OpctSQzkfY/tJ5SFftGOyks4Xtxlu1AewsQj73xuDEGb6nGplL2Vi
 ityKsuPjhgWXZVpogx+csoa9MGqPCClXV+Yx2lsCrv0lv7WRy0UP+Brhs0Qwhe2O
 QlXE6oK6iSQJPwAFRldrRXA6IKsRUaYvonpIe1UJwZDtgwOHGr9sMYSMcmJRBD6O
 Camw27fHDMBdEJQrwhhSaUTMK2PIGQmRzE4SU59L/fTOD9SU9LrHxY+Ge0xu/2cd
 HVdBqplz7YJJyfGW69xtp9vxvlR/3tegsf6B8B5A/6Tk/HD5EzUGCiKPthVcdB9n
 oyuxDLvN5QQQbXKreOHorI3Lhqiyywr5Co9pDeWA+YBNgxeggS/0BVBBcUzzFQsD
 Y2NN6c+jKGgKXJjKdIQoV1ACJcOrf2JRhuVMz5QBC/JV5MBVMK0hHRZUMqh63Z4N
 Zwl3KcUbcyrV5Qi2K7WS
 =weFz
 -----END PGP SIGNATURE-----

Merge tag 'icc-6.3-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/djakov/icc into char-misc-linus

Georgi writes:

interconnect fixes for v6.3-rc

This contains a bunch of fixes with the highlight being fixes for a race
condition that could sometimes occur during the interconnect provider
driver registration. There are also fixes for memory overallocation and
a memory leak.

- interconnect: qcom: osm-l3: fix icc_onecell_data allocation
- interconnect: qcom: sm8450: switch to qcom_icc_rpmh_* function
- interconnect: qcom: sm8550: switch to qcom_icc_rpmh_* function
- interconnect: qcom: qcm2290: Fix MASTER_SNOC_BIMC_NRT
- interconnect: fix mem leak when freeing nodes
- interconnect: fix icc_provider_del() error handling
- interconnect: fix provider registration API
- interconnect: imx: fix registration race
- interconnect: qcom: osm-l3: fix registration race
- interconnect: qcom: rpm: fix probe child-node error handling
- interconnect: qcom: rpm: fix registration race
- interconnect: qcom: rpmh: fix probe child-node error handling
- interconnect: qcom: rpmh: fix registration race
- interconnect: qcom: msm8974: fix registration race
- interconnect: exynos: fix node leak in probe PM QoS error path
- interconnect: exynos: fix registration race
- interconnect: exynos: drop redundant link destroy
- memory: tegra: fix interconnect registration race
- memory: tegra124-emc: fix interconnect registration race
- memory: tegra20-emc: fix interconnect registration race
- memory: tegra30-emc: fix interconnect registration race

Signed-off-by: Georgi Djakov <djakov@kernel.org>

* tag 'icc-6.3-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/djakov/icc: (21 commits)
  memory: tegra30-emc: fix interconnect registration race
  memory: tegra20-emc: fix interconnect registration race
  memory: tegra124-emc: fix interconnect registration race
  memory: tegra: fix interconnect registration race
  interconnect: exynos: drop redundant link destroy
  interconnect: exynos: fix registration race
  interconnect: exynos: fix node leak in probe PM QoS error path
  interconnect: qcom: msm8974: fix registration race
  interconnect: qcom: rpmh: fix registration race
  interconnect: qcom: rpmh: fix probe child-node error handling
  interconnect: qcom: rpm: fix registration race
  interconnect: qcom: rpm: fix probe child-node error handling
  interconnect: qcom: osm-l3: fix registration race
  interconnect: imx: fix registration race
  interconnect: fix provider registration API
  interconnect: fix icc_provider_del() error handling
  interconnect: fix mem leak when freeing nodes
  interconnect: qcom: qcm2290: Fix MASTER_SNOC_BIMC_NRT
  interconnect: qcom: sm8550: switch to qcom_icc_rpmh_* function
  interconnect: qcom: sm8450: switch to qcom_icc_rpmh_* function
  ...
2023-03-16 10:55:42 +01:00
Nirmoy Das
83842357c4 drm/i915/gt: Update engine_init_common documentation
Change the function doc to reflect updated name.

v2: un-kerneldoc the comment(Matt).
    :s/engines_init_common/engine_init_common(Andi)

Cc: Andi Shyti <andi.shyti@linux.intel.com>
Cc: Matt Roper <matthew.d.roper@intel.com>
Signed-off-by: Nirmoy Das <nirmoy.das@intel.com>
Reviewed-by: Andi Shyti <andi.shyti@linux.intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20230310101024.4700-1-nirmoy.das@intel.com
2023-03-16 10:54:01 +01:00
Sumitra Sharma
f20eed8bf6 Staging: qlge: Fix indentation in conditional statement
Add tabs/spaces in conditional statements in to fix the
indentation.

Signed-off-by: Sumitra Sharma <sumitraartsy@gmail.com>
Reviewed-by: Dan Carpenter <error27@gmail.com>
Link: https://lore.kernel.org/r/20230314121152.GA38979@sumitra.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-03-16 09:44:31 +01:00
Michael Straube
73633855a6 staging: rtl8192u: dm_shadow_init() is not used
The function dm_shadow_init() is not used anywhere, remove it.

Signed-off-by: Michael Straube <straube.linux@gmail.com>
Link: https://lore.kernel.org/r/20230312073247.9822-3-straube.linux@gmail.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-03-16 09:44:05 +01:00
Michael Straube
00b2c0918b staging: rtl8192u: rtl8192_SetRFPowerState() is not used
The function rtl8192_SetRFPowerState() is not used anywhere, remove it.

Signed-off-by: Michael Straube <straube.linux@gmail.com>
Link: https://lore.kernel.org/r/20230312073247.9822-2-straube.linux@gmail.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-03-16 09:44:05 +01:00
Archana
238f55be3e staging: wlan-ng: small cleanup in plugimage()
It's cleaner to set "j = -1;" before the if block and remove the else
statement.

Signed-off-by: Archana <craechal@gmail.com>
Reviewed-by: Dan Carpenter <error27@gmail.com>
Link: https://lore.kernel.org/r/20230311121253.10225-2-craechal@gmail.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-03-16 09:43:51 +01:00
Archana
95a4919ab7 staging: wlan-ng: small cleanup in writeimage()
It is cleaner to use "goto free_result;" as is being followed
in rest of the implementation of writeimage function, and
remove unnecessary kfree statements.

Signed-off-by: Archana <craechal@gmail.com>
Reviewed-by: Dan Carpenter <error27@gmail.com>
Link: https://lore.kernel.org/r/20230311121253.10225-1-craechal@gmail.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-03-16 09:43:42 +01:00
Menna Mahmoud
56d098b7ff staging: vme_user: remove unnecessary blank lines
Remove unnecessary blank lines before a close brace
as reported by checkpatch script

"CHECK: Blank lines aren't necessary before a close brace '}'"

Signed-off-by: Menna Mahmoud <eng.mennamahmoud.mm@gmail.com>
Link: https://lore.kernel.org/r/c8fedfeca9a56dba26846a5bed56642cc694bcbe.1678899549.git.eng.mennamahmoud.mm@gmail.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-03-16 09:41:20 +01:00
Menna Mahmoud
a59319660b staging: vme_user: add space around operators
Add a space before and after the operator, for readability.

Reported by checkpatch script:

" CHECK: spaces preferred around that '+', '<<' and '>>' ".

Signed-off-by: Menna Mahmoud <eng.mennamahmoud.mm@gmail.com>
Link: https://lore.kernel.org/r/57006c151d4d95550b987143a6650f8b3594ddea.1678899549.git.eng.mennamahmoud.mm@gmail.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-03-16 09:41:20 +01:00
Michael Straube
26269cbc7f staging: rtl8723bs: rtw_get_raw_rssi_info() is not used
The function rtw_get_raw_rssi_info() is not used anywhere, remove it.

Signed-off-by: Michael Straube <straube.linux@gmail.com>
Reviewed-by: Hans de Goede <hdegoede@redhat.com>
Link: https://lore.kernel.org/r/20230310083449.23775-6-straube.linux@gmail.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-03-16 09:40:09 +01:00
Michael Straube
1558280ca9 staging: rtl8723bs: linked_info_dump() is not used
The function linked_info_dump() is not used anywhere, remove it.

Signed-off-by: Michael Straube <straube.linux@gmail.com>
Reviewed-by: Hans de Goede <hdegoede@redhat.com>
Link: https://lore.kernel.org/r/20230310083449.23775-5-straube.linux@gmail.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-03-16 09:40:09 +01:00
Michael Straube
f89a163f1f staging: rtl8723bs: isAllSpaceOrTab() is not used
The function isAllSpaceOrTab() is not used anywhere, remove it.

Signed-off-by: Michael Straube <straube.linux@gmail.com>
Reviewed-by: Hans de Goede <hdegoede@redhat.com>
Link: https://lore.kernel.org/r/20230310083449.23775-4-straube.linux@gmail.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-03-16 09:40:09 +01:00
Michael Straube
e65df7f096 staging: rtl8723bs: ParseQualifiedString() is not used
The function ParseQualifiedString() is not used anywhere, remove it.

Signed-off-by: Michael Straube <straube.linux@gmail.com>
Reviewed-by: Hans de Goede <hdegoede@redhat.com>
Link: https://lore.kernel.org/r/20230310083449.23775-3-straube.linux@gmail.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-03-16 09:40:09 +01:00
Michael Straube
78c0fb1ad6 staging: rtl8723bs: MapCharToHexDigit() is not used
The function MapCharToHexDigit() is not used anywhere, remove it.

Signed-off-by: Michael Straube <straube.linux@gmail.com>
Reviewed-by: Hans de Goede <hdegoede@redhat.com>
Link: https://lore.kernel.org/r/20230310083449.23775-2-straube.linux@gmail.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-03-16 09:40:09 +01:00
Philipp Hortmann
94f7d4a464 staging: rtl8192e: Join constants Rtl819XPHY_REG_.. with ..PciEPHY_REG_..
Join constants Rtl819XPHY_REG_1T2RArray with Rtl8192PciEPHY_REG_1T2RArray
to RTL8192E_PHY_REG_1T2R_ARR to improve readability.

Signed-off-by: Philipp Hortmann <philipp.g.hortmann@gmail.com>
Link: https://lore.kernel.org/r/2816a10a8a534014c58e0092b78443e01a67930a.1678814935.git.philipp.g.hortmann@gmail.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-03-16 09:37:19 +01:00
Philipp Hortmann
dc756b9354 staging: rtl8192e: Join constants Rtl819XAGCTAB_.. with ..PciEAGCTAB..
Join constants Rtl819XAGCTAB_Array with Rtl8192PciEAGCTAB_Array to
RTL8192E_AGCTAB_ARR to improve readability.

Signed-off-by: Philipp Hortmann <philipp.g.hortmann@gmail.com>
Link: https://lore.kernel.org/r/c7ca930adb5f72daa61b15b02001d09c4a1f8f46.1678814935.git.philipp.g.hortmann@gmail.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-03-16 09:37:19 +01:00
Philipp Hortmann
22fc1bb475 staging: rtl8192e: Join constants Rtl819XRadioB_.. with ..RadioB_..
Join constants Rtl819XRadioB_Array with Rtl8192PciERadioB_Array to
RTL8192E_RADIO_B_ARR to improve readability. Fix spaces around '+' to
improve coding style.

Signed-off-by: Philipp Hortmann <philipp.g.hortmann@gmail.com>
Link: https://lore.kernel.org/r/59af481400d5f7633bcaf7fcd95b7e5f0093fd3f.1678814935.git.philipp.g.hortmann@gmail.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-03-16 09:37:19 +01:00
Philipp Hortmann
abb3551a4a staging: rtl8192e: Join constants Rtl819XRadioA_.. with ..RadioA_..
Join constants Rtl819XRadioA_Array with Rtl8192PciERadioA_Array to
RTL8192E_RADIO_A_ARR to improve readability. Fix spaces around '+' to
improve coding style.

Signed-off-by: Philipp Hortmann <philipp.g.hortmann@gmail.com>
Link: https://lore.kernel.org/r/0ce85e55fd9ddd5459590d756a951809b6a1b9ee.1678814935.git.philipp.g.hortmann@gmail.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-03-16 09:37:19 +01:00
Philipp Hortmann
bfe890e592 staging: rtl8192e: Join constants Rtl819XMACPHY_.. with Rtl8192PciE..
Join constants Rtl819XMACPHY_Array with Rtl8192PciEMACPHY_Array to
RTL8192E_MACPHY_ARR to improve readability.

Signed-off-by: Philipp Hortmann <philipp.g.hortmann@gmail.com>
Link: https://lore.kernel.org/r/6e5609e6b31892671d203c9da1a947bd42b70c37.1678814935.git.philipp.g.hortmann@gmail.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-03-16 09:37:19 +01:00
Philipp Hortmann
8524654306 staging: rtl8192e: Join constants Rtl819XMACPHY_..PG with Rtl8192PciE..
Join constants Rtl819XMACPHY_Array_PG with Rtl8192PciEMACPHY_Array_PG to
RTL8192E_MACPHY_ARR_PG to improve readability.

Signed-off-by: Philipp Hortmann <philipp.g.hortmann@gmail.com>
Link: https://lore.kernel.org/r/c8effbad931c1f7bcdee7245bf16bd2e85c03679.1678814935.git.philipp.g.hortmann@gmail.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-03-16 09:37:19 +01:00
Philipp Hortmann
abeb432189 staging: rtl8192e: Join constants PHY_REG_1T2RArray.. with ..LengthPciE
Join constants PHY_REG_1T2RArrayLength with PHY_REG_1T2RArrayLengthPciE to
RTL8192E_PHY_REG_1T2R_ARR_LEN to improve readability.

Signed-off-by: Philipp Hortmann <philipp.g.hortmann@gmail.com>
Link: https://lore.kernel.org/r/0e24d00350bd2c6d17558ea6b6667209e15073d2.1678814935.git.philipp.g.hortmann@gmail.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-03-16 09:37:18 +01:00
Philipp Hortmann
b89dd56751 staging: rtl8192e: Join constants MACPHY_Array_PGLength with ..LengthPciE
Join constants MACPHY_Array_PGLength with MACPHY_Array_PGLengthPciE to
RTL8192E_MACPHY_ARR_PG_LEN to improve readability.

Signed-off-by: Philipp Hortmann <philipp.g.hortmann@gmail.com>
Link: https://lore.kernel.org/r/6d86257ddf3fecbf2bb104f1eeedbf09a56e0861.1678814935.git.philipp.g.hortmann@gmail.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-03-16 09:37:18 +01:00
Philipp Hortmann
ae9cb21964 staging: rtl8192e: Join constants RadioB_ArrayLength with ..LengthPciE
Join constants RadioB_ArrayLength with RadioB_ArrayLengthPciE to
RTL8192E_RADIO_B_ARR_LEN to improve readability.

Signed-off-by: Philipp Hortmann <philipp.g.hortmann@gmail.com>
Link: https://lore.kernel.org/r/1f48c0691eb4627be81fc39d08762617a6c58a08.1678814935.git.philipp.g.hortmann@gmail.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-03-16 09:37:18 +01:00
Philipp Hortmann
8f214347a7 staging: rtl8192e: Join constants RadioA_ArrayLength with ..LengthPciE
Join constants RadioA_ArrayLength with RadioA_ArrayLengthPciE to
RTL8192E_RADIO_A_ARR_LEN to improve readability.

Signed-off-by: Philipp Hortmann <philipp.g.hortmann@gmail.com>
Link: https://lore.kernel.org/r/a03372c15cf1489b964d48d667f39c6e231fa190.1678814935.git.philipp.g.hortmann@gmail.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-03-16 09:37:18 +01:00
Philipp Hortmann
27d218e343 staging: rtl8192e: Join constants MACPHY_ArrayLength with ..LengthPciE
Join constants MACPHY_ArrayLength with MACPHY_ArrayLengthPciE to
RTL8192E_MACPHY_ARR_LEN to improve readability.

Signed-off-by: Philipp Hortmann <philipp.g.hortmann@gmail.com>
Link: https://lore.kernel.org/r/881ce5739e4237ea9a31029acaa535422d41fa5f.1678814935.git.philipp.g.hortmann@gmail.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-03-16 09:37:18 +01:00
Philipp Hortmann
3dcf9a25d8 staging: rtl8192e: Join constants AGCTAB_ArrayLength with ..LengthPciE
Join constants AGCTAB_ArrayLength with AGCTAB_ArrayLengthPciE to
RTL8192E_AGCTAB_ARR_LEN to improve readability.

Signed-off-by: Philipp Hortmann <philipp.g.hortmann@gmail.com>
Link: https://lore.kernel.org/r/98a7553403ef95609fbcb84e4cc653628b96c56c.1678814935.git.philipp.g.hortmann@gmail.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-03-16 09:37:18 +01:00
Philipp Hortmann
f933c226ce staging: rtl8192e: Remove function rtl92e_is_legal_rf_path
Remove function rtl92e_is_legal_rf_path that will always return 1. Reason
is that the eRFPath is always 0 for RF90_PATH_A or 1 for RF90_PATH_B but
never 2 or 3. In most usage cases this is easy to see but for the
following functions that use rtl92e_is_legal_rf_path it is more
difficult:
rtl92e_set_rf_reg and rtl92e_get_rf_reg are used in:
rtl92e_set_bandwidth (eRFPath only for 0 and 1)
rtl92e_config_rf (eRFPath only for 0 and 1)
_rtl92e_phy_switch_channel_step (eRFPath only for 0 and 1)
_rtl92e_dm_check_tx_power_tracking_thermal (eRFPath only for 0)
rtl92e_check_bb_and_rf is used in:
rtl92e_config_rf (eRFPath only for 0 and 1)
_rtl92e_bb_config_para_file (eRFPath only for 0)
rtl92e_config_rf_path is used in:
rtl92e_config_rf (eRFPath only for 0 and 1)
Remove dead code.

Signed-off-by: Philipp Hortmann <philipp.g.hortmann@gmail.com>
Link: https://lore.kernel.org/r/b801f1f9ff3c58aedab4e3e07b2ec0a816fdf5d9.1678740713.git.philipp.g.hortmann@gmail.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-03-16 09:37:11 +01:00
Philipp Hortmann
7c4b9278d4 staging: rtl8192e: Replace RF90_PATH_C in test expression of for loop
Replace RF90_PATH_C in test expression of the for loop with the variable
that is commonly used. This avoids false hits when searching for usage of
RF90_PATH_C and therefore improves readability.

Signed-off-by: Philipp Hortmann <philipp.g.hortmann@gmail.com>
Link: https://lore.kernel.org/r/f9af7a3d3e608206a4aa4ba2bd377b9201111b3f.1678740713.git.philipp.g.hortmann@gmail.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-03-16 09:37:11 +01:00
Philipp Hortmann
3e83b45cb6 staging: rtl8192e: Remove unused RF90_PATH_C and ..D for rfHSSIPara2
Remove unused priv->phy_reg_def[RF90_PATH_C].rfHSSIPara2 and
priv->phy_reg_def[RF90_PATH_D].rfHSSIPara2.
rfHSSIPara2 is used in rtl92e_set_bb_reg which is used in:
rtl92e_config_rf (eRFPath only for 0 and 1)
_rtl92e_phy_rf_read which is used in:
rtl92e_set_rf_reg and rtl92e_get_rf_reg are used in:
rtl92e_set_bandwidth (eRFPath only for 0 and 1)
rtl92e_config_rf (eRFPath only for 0 and 1)
_rtl92e_phy_switch_channel_step (eRFPath only for 0 and 1)
_rtl92e_dm_check_tx_power_tracking_thermal (eRFPath only for 0)
rtl92e_check_bb_and_rf is used in:
rtl92e_config_rf (eRFPath only for 0 and 1)
_rtl92e_bb_config_para_file (eRFPath only for 0)
rtl92e_config_rf_path is used in:
rtl92e_config_rf (eRFPath only for 0 and 1)
Remove dead code and constants.

Signed-off-by: Philipp Hortmann <philipp.g.hortmann@gmail.com>
Reviewed-by: Dan Carpenter <error27@gmail.com>
Link: https://lore.kernel.org/r/186f3e59e736de6fd2111e835cdb4b633ca41bbc.1678569965.git.philipp.g.hortmann@gmail.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-03-16 09:37:01 +01:00
Philipp Hortmann
9d5e2ea45b staging: rtl8192e: Remove unused RF90_PATH_C and ..D for rfLSSIReadBack
Remove unused priv->phy_reg_def[RF90_PATH_C].rfLSSIReadBack and
priv->phy_reg_def[RF90_PATH_D].rfLSSIReadBack.
rfLSSIReadBack is used in:
_rtl92e_phy_rf_read which is used in:
rtl92e_set_rf_reg and rtl92e_get_rf_reg are used in:
rtl92e_set_bandwidth (eRFPath only for 0 and 1)
rtl92e_config_rf (eRFPath only for 0 and 1)
_rtl92e_phy_switch_channel_step (eRFPath only for 0 and 1)
_rtl92e_dm_check_tx_power_tracking_thermal (eRFPath only for 0)
rtl92e_check_bb_and_rf is used in:
rtl92e_config_rf (eRFPath only for 0 and 1)
_rtl92e_bb_config_para_file (eRFPath only for 0)
rtl92e_config_rf_path is used in:
rtl92e_config_rf (eRFPath only for 0 and 1)
Remove dead code and constants.

Signed-off-by: Philipp Hortmann <philipp.g.hortmann@gmail.com>
Reviewed-by: Dan Carpenter <error27@gmail.com>
Link: https://lore.kernel.org/r/622777b394a896b6db08eb7faeb455e5cbeae93f.1678569965.git.philipp.g.hortmann@gmail.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-03-16 09:37:01 +01:00
Philipp Hortmann
5a828b61b8 staging: rtl8192e: Remove unused variable rfTxIQImbalance and rfTxAFE
Remove unused variable rfTxIQImbalance and rfTxAFE because they are just
once set and not used. Remove unused constants.

Signed-off-by: Philipp Hortmann <philipp.g.hortmann@gmail.com>
Reviewed-by: Dan Carpenter <error27@gmail.com>
Link: https://lore.kernel.org/r/62453061bcf1858c23ba57bf1f279999b37b4cc3.1678569965.git.philipp.g.hortmann@gmail.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-03-16 09:37:01 +01:00
Philipp Hortmann
6362c2acfc staging: rtl8192e: Remove unused variable rfRxIQImbalance and rfRxAFE
Remove unused variable rfRxIQImbalance and rfRxAFE because they are just
once set and not used. Remove unused constants with commenting line.

Signed-off-by: Philipp Hortmann <philipp.g.hortmann@gmail.com>
Reviewed-by: Dan Carpenter <error27@gmail.com>
Link: https://lore.kernel.org/r/1d578fc962c938e76bc0df529a3c24bba7abe049.1678569965.git.philipp.g.hortmann@gmail.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-03-16 09:37:01 +01:00
Philipp Hortmann
76535902f6 staging: rtl8192e: Remove unused variable rfAGCControl1 and rfAGCControl2
Remove unused variable rfAGCControl1 and rfAGCControl2 because they are
just once set and not used. Remove unused constants as well.

Signed-off-by: Philipp Hortmann <philipp.g.hortmann@gmail.com>
Reviewed-by: Dan Carpenter <error27@gmail.com>
Link: https://lore.kernel.org/r/0f191930597517cf88eb6effd4c20a46c99571ad.1678569965.git.philipp.g.hortmann@gmail.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-03-16 09:37:01 +01:00
Philipp Hortmann
37acdfa8be staging: rtl8192e: Remove unused variable rfHSSIPara1 and rfSwitchControl
Remove unused variable rfHSSIPara1 and rfSwitchControl because they are
just once set and not used. Remove unused constants as well.

Signed-off-by: Philipp Hortmann <philipp.g.hortmann@gmail.com>
Reviewed-by: Dan Carpenter <error27@gmail.com>
Link: https://lore.kernel.org/r/5f13420ce5598d447aaad0fe43b807467e0a15bb.1678569965.git.philipp.g.hortmann@gmail.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-03-16 09:37:01 +01:00
Philipp Hortmann
7358afd5be staging: rtl8192e: Remove unused variable rfLSSI_Select and rfTxGainStage
Remove unused variable rfLSSI_Select and rfTxGainStage because they are
just once set and not used. Remove unused constants as well.

Signed-off-by: Philipp Hortmann <philipp.g.hortmann@gmail.com>
Reviewed-by: Dan Carpenter <error27@gmail.com>
Link: https://lore.kernel.org/r/48f05998f4d2fe2df88ff14860cc8615dd72734d.1678569965.git.philipp.g.hortmann@gmail.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-03-16 09:37:00 +01:00
Philipp Hortmann
9272ddf969 staging: rtl8192e: Remove unused RF90_PATH_C and ..D for rf3wireOffset
Remove unused priv->phy_reg_def[RF90_PATH_C].rf3wireOffset and
priv->phy_reg_def[RF90_PATH_D].rf3wireOffset.
rf3wireOffset is used in _rtl92e_phy_rf_read and _rtl92e_phy_rf_write
which are used in:
rtl92e_set_rf_reg and rtl92e_get_rf_reg are used in:
rtl92e_set_bandwidth (eRFPath only for 0 and 1)
rtl92e_config_rf (eRFPath only for 0 and 1)
_rtl92e_phy_switch_channel_step (eRFPath only for 0 and 1)
_rtl92e_dm_check_tx_power_tracking_thermal (eRFPath only for 0)
rtl92e_check_bb_and_rf is used in:
rtl92e_config_rf (eRFPath only for 0 and 1)
_rtl92e_bb_config_para_file (eRFPath only for 0)
rtl92e_config_rf_path is used in:
rtl92e_config_rf (eRFPath only for 0 and 1)
Remove dead code and constants.

Signed-off-by: Philipp Hortmann <philipp.g.hortmann@gmail.com>
Reviewed-by: Dan Carpenter <error27@gmail.com>
Link: https://lore.kernel.org/r/180723eee77f70ffda1f8f0656c2f256f005c4ef.1678569965.git.philipp.g.hortmann@gmail.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-03-16 09:37:00 +01:00
Philipp Hortmann
0b8f11cdcb staging: rtl8192e: Remove unused RF90_PATH_C and ..D for rfintfo and ..fe
Remove unused priv->phy_reg_def[RF90_PATH_C].rfintfo and
priv->phy_reg_def[RF90_PATH_D].rfintfo and
remove unused priv->phy_reg_def[RF90_PATH_C].rfintfe and
priv->phy_reg_def[RF90_PATH_D].rfintfe.
The termination condition for the loop is set to
priv->num_total_rf_path = RTL819X_TOTAL_RF_PATH = 2.
Because of this pPhyReg = &priv->phy_reg_def[eRFPath]; pPhyReg cannot
point to array element 2 for RF90_PATH_C and 3 for RF90_PATH_D.
Remove unused constants as well.

Signed-off-by: Philipp Hortmann <philipp.g.hortmann@gmail.com>
Reviewed-by: Dan Carpenter <error27@gmail.com>
Link: https://lore.kernel.org/r/3c2237e2b4094129143594a5ab45691e9961e100.1678569965.git.philipp.g.hortmann@gmail.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-03-16 09:37:00 +01:00
Philipp Hortmann
308e4650ea staging: rtl8192e: Remove unused variable rfintfi
Remove unused variable rfintfi because it is just once set and not used.
Remove unused constants as well.

Signed-off-by: Philipp Hortmann <philipp.g.hortmann@gmail.com>
Reviewed-by: Dan Carpenter <error27@gmail.com>
Link: https://lore.kernel.org/r/f251186fe59855eee3dd465954700a1d0ec50f53.1678569965.git.philipp.g.hortmann@gmail.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-03-16 09:37:00 +01:00
Philipp Hortmann
3faa16d521 staging: rtl8192e: Remove unused RF90_PATH_C and ..D for rfintfs
Remove unused priv->phy_reg_def[RF90_PATH_C].rfintfs and
priv->phy_reg_def[RF90_PATH_D].rfintfs.
The termination condition for the loop is set to
priv->num_total_rf_path = RTL819X_TOTAL_RF_PATH = 2.
Because of this pPhyReg = &priv->phy_reg_def[eRFPath]; pPhyReg cannot
point to array element 2 for RF90_PATH_C and 3 for RF90_PATH_D.

Signed-off-by: Philipp Hortmann <philipp.g.hortmann@gmail.com>
Reviewed-by: Dan Carpenter <error27@gmail.com>
Link: https://lore.kernel.org/r/801d10f460acbf0601c78dee05c7b32f1628f3a8.1678569965.git.philipp.g.hortmann@gmail.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-03-16 09:37:00 +01:00
Philipp Hortmann
eab1fd002a staging: rtl8192e: Remove unused RF90_PATH_C and ..D in rtl92e_config_rf
Remove unused case RF90_PATH_C and case RF90_PATH_D. The termination
condition for the loop is set to
priv->num_total_rf_path = RTL819X_TOTAL_RF_PATH = 2. Because of this
eRFPath cannot reach the values 2 for RF90_PATH_C and 3 for RF90_PATH_D.

Signed-off-by: Philipp Hortmann <philipp.g.hortmann@gmail.com>
Reviewed-by: Dan Carpenter <error27@gmail.com>
Link: https://lore.kernel.org/r/3a62c8803712e7bf905886e670fe334a13d5d753.1678569965.git.philipp.g.hortmann@gmail.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-03-16 09:37:00 +01:00
Ondrej Zary
5bc9e2d43f ata: pata_parport: fix memory leaks
When ida_alloc() fails, "pi" is not freed although the misleading
comment says otherwise.
Move the ida_alloc() call up so we really don't have to free "pi" in
case of ida_alloc() failure.

Also move ida_free() call from pi_remove_one() to
pata_parport_dev_release(). It was dereferencing already freed dev
pointer.

Testing revealed leak even in non-failure case which was tracked down
to missing put_device() call after bus_find_device_by_name(). As a
result, pata_parport_dev_release() was never called.

Reported-by: kernel test robot <lkp@intel.com>
Reported-by: Dan Carpenter <error27@gmail.com>
Link: https://lore.kernel.org/r/202303111822.IHNchbkp-lkp@intel.com/
Signed-off-by: Ondrej Zary <linux@zary.sk>
Signed-off-by: Damien Le Moal <damien.lemoal@opensource.wdc.com>
2023-03-16 16:54:38 +09:00
Nathan Chancellor
499183cc3b wifi: iwlwifi: Avoid disabling GCC specific flag with clang
Clang errors:

  drivers/net/wireless/intel/iwlwifi/iwl-devtrace.c:15:32: error: unknown warning group '-Wsuggest-attribute=format', ignored [-Werror,-Wunknown-warning-option]
  #pragma GCC diagnostic ignored "-Wsuggest-attribute=format"
                                 ^
  1 error generated.

The warning being disabled by this pragma is GCC specific. Guard its use
with CONFIG_CC_IS_GCC so that it is not used with clang to clear up the
error.

Fixes: 4eca8cbf7b ("wifi: iwlwifi: suppress printf warnings in tracing")
Link: https://github.com/ClangBuiltLinux/linux/issues/1818
Signed-off-by: Nathan Chancellor <nathan@kernel.org>
Link: https://lore.kernel.org/r/20230315-iwlwifi-fix-pragma-v1-1-ad23f92c4739@kernel.org
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
2023-03-16 08:51:56 +01:00
Eric Biggers
a075bacde2 fsverity: don't drop pagecache at end of FS_IOC_ENABLE_VERITY
The full pagecache drop at the end of FS_IOC_ENABLE_VERITY is causing
performance problems and is hindering adoption of fsverity.  It was
intended to solve a race condition where unverified pages might be left
in the pagecache.  But actually it doesn't solve it fully.

Since the incomplete solution for this race condition has too much
performance impact for it to be worth it, let's remove it for now.

Fixes: 3fda4c617e ("fs-verity: implement FS_IOC_ENABLE_VERITY ioctl")
Cc: stable@vger.kernel.org
Reviewed-by: Victor Hsieh <victorhsieh@google.com>
Link: https://lore.kernel.org/r/20230314235332.50270-1-ebiggers@kernel.org
Signed-off-by: Eric Biggers <ebiggers@google.com>
2023-03-15 22:50:41 -07:00
Colin Ian King
9bdf4489a3 net: phy: micrel: Fix spelling mistake "minimim" -> "minimum"
There is a spelling mistake in a pr_warn_ratelimited message. Fix it.

Signed-off-by: Colin Ian King <colin.i.king@gmail.com>
Link: https://lore.kernel.org/r/20230314082315.26532-1-colin.i.king@gmail.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
2023-03-15 22:17:40 -07:00
Jakub Kicinski
6873465c19 Merge branch 'nfp-flower-add-support-for-multi-zone-conntrack'
Louis Peens says:

====================
nfp: flower: add support for multi-zone conntrack

This series add changes to support offload of connection tracking across
multiple zones. Previously the driver only supported offloading of a
single goto_chain, spanning a single zone. This was implemented by
merging a pre_ct rule, post_ct rule and the nft rule. This series
provides updates to let the original post_ct rule act as the new pre_ct
rule for a next set of merges if it contains another goto and
conntrack action. In pseudo-tc rule format this adds support for:

    ingress chain 0 proto ip flower
        action ct zone 1 pipe action goto 1

    ingress chain 1 proto ip flower ct_state +tr+new ct_zone 1
        action ct_clear pipe action ct zone 2 pipe action goto 2
    ingress chain 1 proto ip flower ct_state +tr+est ct_zone 1
        action ct_clear pipe action ct zone 2 pipe action goto 2

    ingress chain 2 proto ip flower ct_state +tr+new ct_zone 2
        action mirred egress redirect dev ...
    ingress chain 2 proto ip flower ct_state +tr+est ct_zone 2
        action mirred egress redirect dev ...

This can continue for up to a maximum of 4 zone recirculations.

The first few patches are some smaller preparation patches while the
last one introduces the functionality.
====================

Link: https://lore.kernel.org/r/20230314063610.10544-1-louis.peens@corigine.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
2023-03-15 22:16:26 -07:00
Wentao Jia
a87ceb3d42 nfp: flower: offload tc flows of multiple conntrack zones
If goto_chain action present in the post ct flow rule, merge flow rules
in this ct-zone, create a new pre_ct entry as the pre ct flow rule of
next ct-zone, but do not offload merged flow rules to firmware. Repeat
the process in the next ct-zone until no goto_chain action present in
the post ct flow rule in a certain ct-zone, merged all the flow rules.
Offload to firmware finally.

Signed-off-by: Wentao Jia <wentao.jia@corigine.com>
Acked-by: Simon Horman <simon.horman@corigine.com>
Signed-off-by: Louis Peens <louis.peens@corigine.com>
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
2023-03-15 22:16:23 -07:00