mirror of
https://github.com/hardkernel/linux.git
synced 2026-06-05 10:31:46 +09:00
2cd8ac816de58d72da2c4195ff24c6cfcc6967b9
1163290 Commits
| Author | SHA1 | Message | Date | |
|---|---|---|---|---|
|
|
2cd8ac816d |
ANDROID: ABI: update symbol list for honor
2 function symbol(s) added 'int netdev_get_name(struct net*, char*, int)' 'void tcp_send_active_reset(struct sock*, gfp_t)' Bug: 334000512 Change-Id: I83507ca33d4547088b61c6f83cfb48cc94474185 Signed-off-by: Chenghao Zhao <zhaochenghao@honor.com> |
||
|
|
b5ee53c64e |
ANDROID: Allow vendor modules perform more operationson on sock.
Export netdev_get_name, tcp_send_active_reset functions, allow vendor modules perform more operations on socks and improve users' online experience.When users browse websites or watch videos, we will sense the bad sock is on which device, so that the sock can be switched to another good device by us, so that the internet service will no longer be stuck. In a similar scenario, if the user downloads from multiple devices and the rate of one device is low,we can reset the TCP stream with a lower rate and establish it on the device with a higher rate. Bug: 334000512 Change-Id: I9ed90ea9fe6f3dc9f11ae1661ca9f2f5fdad5820 Signed-off-by: Dezhi Huang <huangdezhi@hihonor.com> (cherry picked from commit 21614c79408f0342363db9874d315fbb3ff6553b) |
||
|
|
e64a80a096 |
ANDROID: GKI: update symbol list file for xiaomi
add 3 function:
android_vh_page_should_be_protected()
android_vh_page_referenced_check_bypass()
__page_mapcount()
Bug: 348285765
Change-Id: Idbcdf69693a3f4e83ada35aebf3f138648c73d10
Signed-off-by: Yuxuan Yan <yanyuxuan3@xiaomi.corp-partner.google.com>
|
||
|
|
530ff6a3e6 |
ANDROID: GKI: add vendor hooks android_vh_page_should_be_protected() and
android_vh_modify_scan_control().
add two vendor hooks:
android_vh_page_should_be_protected():protect pages from memory
reclaim.
android_vh_page_referenced_check_bypass():bypass rmap in active list
shrink.
The new vendor data field in scan_control are used to track how many
pages are protected in current reclaim and the "protected / scanned"
rate. These parameters are useful for understanding the impact of page
protection operations on LRU and reclaim, helping us make better
decsions.
Bug: 348285765
Change-Id: I49567a4b1f978821a94da0a8339b2b8fdfd52daf
Signed-off-by: Yuxuan Yan <yanyuxuan3@xiaomi.corp-partner.google.com>
|
||
|
|
41e1c6f937 |
Merge tag 'android14-6.1.99_r00' into android14-6.1
This merges up to the 6.1.99 LTS release into android14-6.1. This includes the following commits: * |
||
|
|
3b95e54867 |
ANDROID: Update the ABI symbol list
Adding the following symbols: - __traceiter_android_rvh_try_to_wake_up_success - __traceiter_android_vh_mm_kcompactd_cpu_online - __traceiter_android_vh_vmscan_kswapd_done - __traceiter_mm_vmscan_kswapd_wake - __tracepoint_android_rvh_try_to_wake_up_success - __tracepoint_android_vh_mm_kcompactd_cpu_online - __tracepoint_android_vh_vmscan_kswapd_done - __tracepoint_mm_vmscan_kswapd_wake Bug: 367400751 Change-Id: I658b4961666d93238feaa8f166012b76a69994eb Signed-off-by: Dmitry Skiba <dskiba@google.com> |
||
|
|
b3a2458fc6 |
ANDROID: mm: add vh for kcompactd_cpu_online()
kcompactd_cpu_online() changes kcompactd cpumask, potentially overwriting any vendor-specific cpumask that was there. This hook allows vendors to re-set the cpumask. Bug: 367400751 Change-Id: I45b92bcd16fbf2d5d76474287db659e32af64201 Signed-off-by: Dmitry Skiba <dskiba@google.com> |
||
|
|
532fad0092 |
ANDROID: ABI: update symbol list for honor
1 function symbol(s) added 'int __traceiter_android_vh_should_fault_around(void*, struct vm_fault*, bool*)' Bug: 362663044 Change-Id: Ie7634bc746e40142455c7bd22d876d519a02e0d5 Signed-off-by: jiangxinpei <jiangxinpei@honor.corp-partner.google.com> |
||
|
|
145b08312d |
ANDROID: vendor_hooks: add hook to perform targeted memory management
Add vendor_hook trace_android_vh_should_fault_around, allow vendor modules to skip the fault_around processing for less important processes. Bug: 362663044 Bug: 337547131 Change-Id: I792dca2038f5ad7cba1d212ef95407244958609d Signed-off-by: Dezhi Huang <huangdezhi@hihonor.com> (cherry picked from commit 65ebb00fe7977348d5fcfa58985c29181f3ec173) |
||
|
|
c105083ac6 |
ANDROID: ABI: update symbol list for honor
3 function symbol(s) added 'int __traceiter_android_vh_do_read_fault(void*, struct vm_fault*, unsigned long)' 'int __traceiter_android_vh_filemap_map_pages(void*, struct file*, unsigned long, unsigned long, vm_fault_t)' 'int __traceiter_android_vh_filemap_read(void*, struct file*, loff_t, size_t)' Bug: 362665923 Change-Id: I49fa40c65d7d24799c815de0c2c02c12d09e8fd8 Signed-off-by: jiangxinpei <jiangxinpei@honor.corp-partner.google.com> |
||
|
|
eda4e9fa64 |
ANDROID: mm: add vendor hook in fault and read file
Add a vendor hook to notify vendor module fault and read events. Bug: 362665923 Bug: 351175506 Change-Id: I4c46e9e00aa5f5555fd42a6b0815563497658b34 Signed-off-by: Sooyong Suk <s.suk@samsung.corp-partner.google.com> (cherry picked from commit a9867d872e24fbe658e05f32b770e4b36c6e3773) |
||
|
|
814dd5bfa8 |
ANDROID: Update the ABI symbol list
Adding the following symbols to abi_gki_aarch64_pixel: - mbox_request_channel_byname Bug: 368167673 Change-Id: I031522377372a25bf5f9e97eb4832173463de390 Signed-off-by: David Chiang <davidchiang@google.com> |
||
|
|
8a268cb981 |
ANDROID: GKI: Update symbol list for honor
Update symbol list for honor in android/abi_gki_aarch64_honor Bug: 365506689 Change-Id: I604163b979660eaedbc13d3da5c9e3cdb8275e50 Signed-off-by: jiangxinpei <jiangxinpei@honor.corp-partner.google.com> |
||
|
|
be07389110 |
ANDROID: Allow vendor modules perform operationson on memleak detect
When an LMK (Low Memory Killer) occurs, it is crucial for us to identify the underlying cause of low memory. Based on past experiences, memory leaks are often the root cause in such situations. The purpose of this function is to assist us in identifying which application or type of memory is experiencing memory leaks, thereby enabling us to effectively locate and address the memory leakage issue. Bug: 365506689 Bug: 346707562 Change-Id: I5d7d6bdbca30660f2a552211fd8aff40d3550df7 Signed-off-by: jiangxinpei <jiangxinpei@honor.corp-partner.google.com> (cherry picked from commit d61134668c2d37846a6cea3e1ab3c237f2c7bc99) |
||
|
|
47871c381d |
ANDROID: GKI: Update symbol list for honor
Update symbol list for honor in android/abi_gki_aarch64_honor Bug: 365506454 Change-Id: I5d9a7a41da2a6f97998fadbbcb447db53b873bcc Signed-off-by: jiangxinpei <jiangxinpei@honor.corp-partner.google.com> |
||
|
|
c7b8f95c21 |
ANDROID: Allow vendor modules perform more operations on binder transaction.
Export binder_alloc_copy_from_buffer, allow vendor modules perform more operations on binder transaction and improve user operation fluency and timeliness experience. Bug: 365506454 Bug: 343139379 Change-Id: I4353763099d854a62d0b70b003fbaca00e2c76e4 Signed-off-by: Dezhi Huang <huangdezhi@hihonor.com> (cherry picked from commit d8db83d94e14b48819bba18cb975943c237e33df) |
||
|
|
d1f3a046a6 |
FROMGIT: f2fs: prevent atomic file from being dirtied before commit
Keep atomic file clean while updating and make it dirtied during commit
in order to avoid unnecessary and excessive inode updates in the previous
fix.
Fixes: 4bf78322346f ("f2fs: mark inode dirty for FI_ATOMIC_COMMITTED flag")
Change-Id: I2a29d047fa4233632876c61cf909340d1f60c26d
Signed-off-by: Daeho Jeong <daehojeong@google.com>
Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
Bug: 352181300
(cherry picked from commit fccaa81de87e80b1809906f7e438e5766fbdc172
https://git.kernel.org/pub/scm/linux/kernel/git/jaegeuk/f2fs.git dev)
Change-Id: I5970e56a5318804cfebea340b5b19d6e0a66dc01
Signed-off-by: Daeho Jeong <daehojeong@google.com>
|
||
|
|
6e5b92a6a1 |
ANDROID: GKI: Add symbol list for exynosauto
These symbols are required to use custom driver for writing data into Serial device using common TTY drivers for basic data trasmit via UART/SPI. INFO: 2 function symbol(s) added 'int serdev_device_write(struct serdev_device*, const unsigned char*, size_t, long)' 'void serdev_device_write_wakeup(struct serdev_device*)' Bug: 356635235 Change-Id: Ia365485ad4b533e5e2826add9182bc98b5563f81 Signed-off-by: iabdullah <imrankhan.abdullah@harman.com> |
||
|
|
b18f8bbc04 |
ANDROID: GKI: Update symbol list for BCMSTB
Remove symbols obsoleted since including CONFIG_SERIAL_8250_BCM7271 Bug: 365149220 Change-Id: Id35a1c68e27359fa5e8a2d90cfa7be5346875ebf Signed-off-by: Pierre Couillaud <pierre@broadcom.com> |
||
|
|
ff74052448 |
BACKPORT: binder_alloc: Fix sleeping function called from invalid context
36c55ce8703c ("binder_alloc: Replace kcalloc with kvcalloc to
mitigate OOM issues") introduced schedule while atomic issue.
[ 2689.152635][ T4275] BUG: sleeping function called from invalid context at mm/vmalloc.c:2847
[ 2689.161291][ T4275] in_atomic(): 1, irqs_disabled(): 0, non_block: 0, pid: 4275, name: kworker/1:140
[ 2689.170708][ T4275] preempt_count: 1, expected: 0
[ 2689.175572][ T4275] RCU nest depth: 0, expected: 0
[ 2689.180521][ T4275] INFO: lockdep is turned off.
[ 2689.180523][ T4275] Preemption disabled at:
[ 2689.180525][ T4275] [<ffffffe031f2a2dc>] binder_alloc_deferred_release+0x2c/0x388
..
..
[ 2689.213419][ T4275] __might_resched+0x174/0x178
[ 2689.213423][ T4275] __might_sleep+0x48/0x7c
[ 2689.213426][ T4275] vfree+0x4c/0x15c
[ 2689.213430][ T4275] kvfree+0x24/0x44
[ 2689.213433][ T4275] binder_alloc_deferred_release+0x2c0/0x388
[ 2689.213436][ T4275] binder_proc_dec_tmpref+0x15c/0x2a8
[ 2689.213440][ T4275] binder_deferred_func+0xa8/0x8ec
[ 2689.213442][ T4275] process_one_work+0x254/0x59c
[ 2689.213447][ T4275] worker_thread+0x274/0x3ec
[ 2689.213450][ T4275] kthread+0x110/0x134
[ 2689.213453][ T4275] ret_from_fork+0x10/0x20
Fix it by moving the place of kvfree outside of spinlock context.
Fixes: 36c55ce8703c ("binder_alloc: Replace kcalloc with kvcalloc to mitigate OOM issues")
Acked-by: Carlos Llamas <cmllamas@google.com>
Signed-off-by: Mukesh Ojha <quic_mojha@quicinc.com>
Link: https://lore.kernel.org/r/20240725062510.2856662-1-quic_mojha@quicinc.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Bug: 356093827
Change-Id: Ic1e342ba8eb843dc49a6c4a91c7ba0f99d5e54fd
(cherry picked from commit 2c10a20f5e84ab777d29ed921d4c78d66de6d0fb)
[cmllamas: fix merge issues due to missing 36c55ce8703c]
Signed-off-by: Carlos Llamas <cmllamas@google.com>
|
||
|
|
75c9b1955b |
UPSTREAM: bpf: Fix overrunning reservations in ringbuf
[ Upstream commit cfa1a2329a691ffd991fcf7248a57d752e712881 ]
The BPF ring buffer internally is implemented as a power-of-2 sized circular
buffer, with two logical and ever-increasing counters: consumer_pos is the
consumer counter to show which logical position the consumer consumed the
data, and producer_pos which is the producer counter denoting the amount of
data reserved by all producers.
Each time a record is reserved, the producer that "owns" the record will
successfully advance producer counter. In user space each time a record is
read, the consumer of the data advanced the consumer counter once it finished
processing. Both counters are stored in separate pages so that from user
space, the producer counter is read-only and the consumer counter is read-write.
One aspect that simplifies and thus speeds up the implementation of both
producers and consumers is how the data area is mapped twice contiguously
back-to-back in the virtual memory, allowing to not take any special measures
for samples that have to wrap around at the end of the circular buffer data
area, because the next page after the last data page would be first data page
again, and thus the sample will still appear completely contiguous in virtual
memory.
Each record has a struct bpf_ringbuf_hdr { u32 len; u32 pg_off; } header for
book-keeping the length and offset, and is inaccessible to the BPF program.
Helpers like bpf_ringbuf_reserve() return `(void *)hdr + BPF_RINGBUF_HDR_SZ`
for the BPF program to use. Bing-Jhong and Muhammad reported that it is however
possible to make a second allocated memory chunk overlapping with the first
chunk and as a result, the BPF program is now able to edit first chunk's
header.
For example, consider the creation of a BPF_MAP_TYPE_RINGBUF map with size
of 0x4000. Next, the consumer_pos is modified to 0x3000 /before/ a call to
bpf_ringbuf_reserve() is made. This will allocate a chunk A, which is in
[0x0,0x3008], and the BPF program is able to edit [0x8,0x3008]. Now, lets
allocate a chunk B with size 0x3000. This will succeed because consumer_pos
was edited ahead of time to pass the `new_prod_pos - cons_pos > rb->mask`
check. Chunk B will be in range [0x3008,0x6010], and the BPF program is able
to edit [0x3010,0x6010]. Due to the ring buffer memory layout mentioned
earlier, the ranges [0x0,0x4000] and [0x4000,0x8000] point to the same data
pages. This means that chunk B at [0x4000,0x4008] is chunk A's header.
bpf_ringbuf_submit() / bpf_ringbuf_discard() use the header's pg_off to then
locate the bpf_ringbuf itself via bpf_ringbuf_restore_from_rec(). Once chunk
B modified chunk A's header, then bpf_ringbuf_commit() refers to the wrong
page and could cause a crash.
Fix it by calculating the oldest pending_pos and check whether the range
from the oldest outstanding record to the newest would span beyond the ring
buffer size. If that is the case, then reject the request. We've tested with
the ring buffer benchmark in BPF selftests (./benchs/run_bench_ringbufs.sh)
before/after the fix and while it seems a bit slower on some benchmarks, it
is still not significantly enough to matter.
Bug: 349976340
Fixes:
|
||
|
|
fdec2610bf |
ANDROID: gki_config: Disable CONFIG_DEBUG_STACK_USAGE
This config option was not requested by any partner and has non-zero overhead on process creation. Disable it. Bug: 191150949 Bug: 365466166 Signed-off-by: Suren Baghdasaryan <surenb@google.com> Change-Id: Ia9547c989c22246c46ed9624a0707c6369ee4de0 |
||
|
|
d02968a023 |
ANDROID: gki_defconfig: Enable CONFIG_SERIAL_8250_BCM7271
Enable BCM UART driver for Broadcom Set Top Box SoCs. Bug: 365149220 Change-Id: I8784b1f5820dcdcecca8f71fc7d378dc0407f6a0 Signed-off-by: Pierre Couillaud <pierre@broadcom.com> Signed-off-by: Danesh Petigara <danesh.petigara@broadcom.com> |
||
|
|
a752cdd96f |
BACKPORT: serial: 8250_bcm7271: improve bcm7271 8250 port
The 8250 BCM7271 UART is not a direct match to PORT_16550A and other
generic ports do not match its hardware capabilities. PORT_ALTR matches
the rx trigger levels, but its vendor configurations are not compatible.
Unfortunately this means we need to create another port to fully capture
the hardware capabilities of the BCM7271 UART.
To alleviate some latency pressures, we default the rx trigger level to 8.
Bug: 365149220
Change-Id: I41005a210439a3a54a9af16a96583662dc8d786d
Signed-off-by: Justin Chen <justin.chen@broadcom.com>
Reviewed-by: Florian Fainelli <florian.fainelli@broadcom.com>
Acked-by: Doug Berger <opendmb@gmail.com>
Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Link: https://lore.kernel.org/r/1692643978-16570-1-git-send-email-justin.chen@broadcom.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
(cherry picked from commit
|
||
|
|
12f9bcc034 |
Merge 6.1.99 into android14-6.1-lts
Changes in 6.1.99 Revert "usb: xhci: prevent potential failure in handle_tx_event() for Transfer events without TRB" Linux 6.1.99 Change-Id: I330d0af3322ee885eea719688b8d260cd7cec39c Signed-off-by: Greg Kroah-Hartman <gregkh@google.com> |
||
|
|
e6e7b1084c |
Merge 6.1.98 into android14-6.1-lts
Changes in 6.1.98 locking/mutex: Introduce devm_mutex_init() crypto: hisilicon/debugfs - Fix debugfs uninit process issue drm/lima: fix shared irq handling on driver remove powerpc: Avoid nmi_enter/nmi_exit in real mode interrupt. media: dvb: as102-fe: Fix as10x_register_addr packing media: dvb-usb: dib0700_devices: Add missing release_firmware() IB/core: Implement a limit on UMAD receive List scsi: qedf: Make qedf_execute_tmf() non-preemptible crypto: aead,cipher - zeroize key buffer after use drm/amdgpu: Fix uninitialized variable warnings drm/amdgpu: Initialize timestamp for some legacy SOCs drm/amd/display: Check index msg_id before read or write drm/amd/display: Check pipe offset before setting vblank drm/amd/display: Skip finding free audio for unknown engine_id drm/amdgpu: fix uninitialized scalar variable warning media: dw2102: Don't translate i2c read into write sctp: prefer struct_size over open coded arithmetic firmware: dmi: Stop decoding on broken entry Input: ff-core - prefer struct_size over open coded arithmetic usb: xhci: prevent potential failure in handle_tx_event() for Transfer events without TRB wifi: mt76: replace skb_put with skb_put_zero net: dsa: mv88e6xxx: Correct check for empty list media: dvb-frontends: tda18271c2dd: Remove casting during div media: s2255: Use refcount_t instead of atomic_t for num_channels media: dvb-frontends: tda10048: Fix integer overflow i2c: i801: Annotate apanel_addr as __ro_after_init powerpc/64: Set _IO_BASE to POISON_POINTER_DELTA not 0 for CONFIG_PCI=n orangefs: fix out-of-bounds fsid access kunit: Fix timeout message powerpc/xmon: Check cpu id in commands "c#", "dp#" and "dx#" igc: fix a log entry using uninitialized netdev bpf: Avoid uninitialized value in BPF_CORE_READ_BITFIELD f2fs: check validation of fault attrs in f2fs_build_fault_attr() scsi: mpi3mr: Sanitise num_phys serial: imx: Raise TX trigger level to 8 jffs2: Fix potential illegal address access in jffs2_free_inode s390/pkey: Wipe sensitive data on failure btrfs: scrub: initialize ret in scrub_simple_mirror() to fix compilation warning cdrom: rearrange last_media_change check to avoid unintentional overflow tools/power turbostat: Remember global max_die_id mac802154: fix time calculation in ieee802154_configure_durations() UPSTREAM: tcp: fix DSACK undo in fast recovery to call tcp_try_to_open() net/mlx5: E-switch, Create ingress ACL when needed net/mlx5e: Add mqprio_rl cleanup and free in mlx5e_priv_cleanup() tcp_metrics: validate source addr length KVM: s390: fix LPSWEY handling e1000e: Fix S0ix residency on corporate systems net: allow skb_datagram_iter to be called from any context net: ntb_netdev: Move ntb_netdev_rx_handler() to call netif_rx() from __netif_rx() wifi: wilc1000: fix ies_len type in connect path riscv: kexec: Avoid deadlock in kexec crash path netfilter: nf_tables: unconditionally flush pending work before notifier bonding: Fix out-of-bounds read in bond_option_arp_ip_targets_set() selftests: fix OOM in msg_zerocopy selftest selftests: make order checking verbose in msg_zerocopy selftest inet_diag: Initialize pad field in struct inet_diag_req_v2 mlxsw: core_linecards: Fix double memory deallocation in case of invalid INI file platform/x86: toshiba_acpi: Fix quickstart quirk handling Revert "igc: fix a log entry using uninitialized netdev" nilfs2: fix inode number range checks nilfs2: add missing check for inode numbers on directory entries mm: optimize the redundant loop of mm_update_owner_next() mm: avoid overflows in dirty throttling logic btrfs: fix adding block group to a reclaim list and the unused list during reclaim f2fs: Add inline to f2fs_build_fault_attr() stub scsi: mpi3mr: Use proper format specifier in mpi3mr_sas_port_add() Bluetooth: qca: Fix BT enable failure again for QCA6390 after warm reboot can: kvaser_usb: Explicitly initialize family in leafimx driver_info struct fsnotify: Do not generate events for O_PATH file descriptors Revert "mm/writeback: fix possible divide-by-zero in wb_dirty_limits(), again" drm/nouveau: fix null pointer dereference in nouveau_connector_get_modes drm/amdgpu/atomfirmware: silence UBSAN warning drm: panel-orientation-quirks: Add quirk for Valve Galileo powerpc/pseries: Fix scv instruction crash with kexec mtd: rawnand: Ensure ECC configuration is propagated to upper layers mtd: rawnand: Bypass a couple of sanity checks during NAND identification mtd: rawnand: rockchip: ensure NVDDR timings are rejected bnx2x: Fix multiple UBSAN array-index-out-of-bounds arm64: dts: rockchip: Fix the DCDC_REG2 minimum voltage on Quartz64 Model B ima: Avoid blocking in RCU read-side critical section media: dw2102: fix a potential buffer overflow clk: qcom: gcc-sm6350: Fix gpll6* & gpll7 parents clk: mediatek: clk-mtk: Register MFG notifier in mtk_clk_simple_probe() clk: mediatek: mt8183: Only enable runtime PM on mt8183-mfgcfg i2c: pnx: Fix potential deadlock warning from del_timer_sync() call in isr fs/ntfs3: Mark volume as dirty if xattr is broken ALSA: hda/realtek: Enable headset mic of JP-IK LEAP W502 with ALC897 nvme-multipath: find NUMA path only for online numa-node dma-mapping: benchmark: avoid needless copy_to_user if benchmark fails nvme: adjust multiples of NVME_CTRL_PAGE_SIZE in offset regmap-i2c: Subtract reg size from max_write platform/x86: touchscreen_dmi: Add info for GlobalSpace SolT IVW 11.6" tablet platform/x86: touchscreen_dmi: Add info for the EZpad 6s Pro nvmet: fix a possible leak when destroy a ctrl during qp establishment kbuild: fix short log for AS in link-vmlinux.sh nfc/nci: Add the inconsistency check between the input data length and count spi: cadence: Ensure data lines set to low during dummy-cycle period null_blk: Do not allow runt zone with zone capacity smaller then zone size nilfs2: fix incorrect inode allocation from reserved inodes Linux 6.1.98 Change-Id: Ief3f201b2322bc9c300d53d11006c446c7f209d6 Signed-off-by: Greg Kroah-Hartman <gregkh@google.com> |
||
|
|
e44db5756e |
ANDROID: db845c symbol list additions
In commit |
||
|
|
04212acc42 |
ANDROID: GKI: Add initial symbol list for honor
Add symbol list for unisoc in android/abi_gki_aarch64_honor Bug: 332656187 Change-Id: Idaac6034d436d888d1cd61adc926f7eaca2eb51e Signed-off-by: jiangxinpei <jiangxinpei@honor.corp-partner.google.com> (cherry picked from commit 8d957bd1cdfc8e9de23e15b0ba3ef4d431e99aeb) |
||
|
|
ab63f81b3a |
Revert "mm/page_alloc: Separate THP PCP into movable and non-movable categories"
This reverts commit
|
||
|
|
27310ed6b6 |
ANDROID: binder: fix KMI issues due to frozen notification
The patches to support binder's frozen notification feature break the
KMI. This change fixes such issues by (1) moving proc->delivered_freeze
into the existing proc_wrapper struction, (2) dropping the frozen stats
support and (3) amending the STG due to a harmless enum binder_work_type
addition.
These are the reported KMI issues fixed by this patch:
function symbol 'int __traceiter_binder_transaction_received(void*, struct binder_transaction*)' changed
CRC changed from 0x74e9c98b to 0xfe0f8640
type 'struct binder_proc' changed
byte size changed from 584 to 632
member 'struct list_head delivered_death' changed
offset changed by 256
member 'struct list_head delivered_freeze' was added
13 members ('u32 max_threads' .. 'u64 android_oem_data1') changed
offset changed by 384
type 'struct binder_thread' changed
byte size changed from 464 to 496
2 members ('atomic_t tmp_ref' .. 'bool is_dead') changed
offset changed by 224
4 members ('struct task_struct* task' .. 'enum binder_prio_state prio_state') changed
offset changed by 256
type 'struct binder_stats' changed
byte size changed from 216 to 244
member changed from 'atomic_t br[21]' to 'atomic_t br[23]'
type changed from 'atomic_t[21]' to 'atomic_t[23]'
number of elements changed from 21 to 23
member changed from 'atomic_t bc[19]' to 'atomic_t bc[22]'
offset changed from 672 to 736
type changed from 'atomic_t[19]' to 'atomic_t[22]'
number of elements changed from 19 to 22
member changed from 'atomic_t obj_created[7]' to 'atomic_t obj_created[8]'
offset changed from 1280 to 1440
type changed from 'atomic_t[7]' to 'atomic_t[8]'
number of elements changed from 7 to 8
member changed from 'atomic_t obj_deleted[7]' to 'atomic_t obj_deleted[8]'
offset changed from 1504 to 1696
type changed from 'atomic_t[7]' to 'atomic_t[8]'
number of elements changed from 7 to 8
type 'enum binder_work_type' changed
enumerator 'BINDER_WORK_FROZEN_BINDER' (10) was added
enumerator 'BINDER_WORK_CLEAR_FREEZE_NOTIFICATION' (11) was added
Bug: 363013421
Change-Id: If9f1f14a2eda215a4c9cb0823c50c8e0e8079ef1
Signed-off-by: Carlos Llamas <cmllamas@google.com>
|
||
|
|
2f43c68d05 |
FROMGIT: binder: frozen notification binder_features flag
Add a flag to binder_features to indicate that the freeze notification feature is available. Signed-off-by: Yu-Ting Tseng <yutingtseng@google.com> Acked-by: Carlos Llamas <cmllamas@google.com> Link: https://lore.kernel.org/r/20240709070047.4055369-6-yutingtseng@google.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Bug: 363013421 (cherry picked from commit 30b968b002a92870325a5c9d1ce78eba0ce386e7 git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc.git char-misc-next) Change-Id: Ic26c8ae42d27c6fd8f5daed5eecabd1652e29502 Signed-off-by: Carlos Llamas <cmllamas@google.com> |
||
|
|
eda0570485 |
BACKPORT: FROMGIT: binder: frozen notification
Frozen processes present a significant challenge in binder transactions.
When a process is frozen, it cannot, by design, accept and/or respond to
binder transactions. As a result, the sender needs to adjust its
behavior, such as postponing transactions until the peer process
unfreezes. However, there is currently no way to subscribe to these
state change events, making it impossible to implement frozen-aware
behaviors efficiently.
Introduce a binder API for subscribing to frozen state change events.
This allows programs to react to changes in peer process state,
mitigating issues related to binder transactions sent to frozen
processes.
Implementation details:
For a given binder_ref, the state of frozen notification can be one of
the followings:
1. Userspace doesn't want a notification. binder_ref->freeze is null.
2. Userspace wants a notification but none is in flight.
list_empty(&binder_ref->freeze->work.entry) = true
3. A notification is in flight and waiting to be read by userspace.
binder_ref_freeze.sent is false.
4. A notification was read by userspace and kernel is waiting for an ack.
binder_ref_freeze.sent is true.
When a notification is in flight, new state change events are coalesced into
the existing binder_ref_freeze struct. If userspace hasn't picked up the
notification yet, the driver simply rewrites the state. Otherwise, the
notification is flagged as requiring a resend, which will be performed
once userspace acks the original notification that's inflight.
See https://r.android.com/3070045 for how userspace is going to use this
feature.
Signed-off-by: Yu-Ting Tseng <yutingtseng@google.com>
Acked-by: Carlos Llamas <cmllamas@google.com>
Link: https://lore.kernel.org/r/20240709070047.4055369-4-yutingtseng@google.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Bug: 363013421
(cherry picked from commit d579b04a52a183db47dfcb7a44304d7747d551e1
git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc.git
char-misc-next)
Change-Id: I5dd32abba932ca7d03ae58660143e075ed778b81
[cmllamas: fix merge conflicts due to missing
|
||
|
|
822682e75d |
ANDROID: KVM: arm64: Fix cpu type for tracing HVCs
CPU being an int, we need to check if it is negative to ensure no out-of-bounds access. Make it unsigned. Bug: 229972309 Change-Id: I987a66d83c7bf3143a6ba287e929cd52de549850 Signed-off-by: Vincent Donnefort <vdonnefort@google.com> |
||
|
|
9a2454ec58 |
Merge 6.1.97 into android14-6.1-lts
Changes in 6.1.97 usb: typec: ucsi: Never send a lone connector change ack usb: typec: ucsi: Ack also failed Get Error commands ACPI: x86: utils: Add Picasso to the list for forcing StorageD3Enable ACPI: x86: Force StorageD3Enable on more products Input: ili210x - fix ili251x_read_touch_data() return value pinctrl: fix deadlock in create_pinctrl() when handling -EPROBE_DEFER pinctrl: rockchip: fix pinmux bits for RK3328 GPIO2-B pins pinctrl: rockchip: fix pinmux bits for RK3328 GPIO3-B pins pinctrl: rockchip: use dedicated pinctrl type for RK3328 pinctrl: rockchip: fix pinmux reset in rockchip_pmx_set MIPS: pci: lantiq: restore reset gpio polarity dt-bindings: i2c: Drop unneeded quotes dt-bindings: i2c: atmel,at91sam: correct path to i2c-controller schema netfilter: nf_tables: use timestamp to check for set element timeout ASoC: rockchip: i2s-tdm: Fix trcm mode by setting clock on right mclk s390/pci: Add missing virt_to_phys() for directed DIBV ASoC: amd: acp: remove i2s configuration check in acp_i2s_probe() ASoC: fsl-asoc-card: set priv->pdev before using it net: dsa: microchip: fix initial port flush problem mlxsw: spectrum_buffers: Fix memory corruptions on Spectrum-4 systems bpf: Fix overrunning reservations in ringbuf ibmvnic: Free any outstanding tx skbs during scrq reset net: phy: micrel: add Microchip KSZ 9477 to the device table net: dsa: microchip: use collision based back pressure mode xdp: Remove WARN() from __xdp_reg_mem_model() Fix race for duplicate reqsk on identical SYN net: dsa: microchip: fix wrong register write when masking interrupt sparc: fix old compat_sys_select() sparc: fix compat recv/recvfrom syscalls parisc: use correct compat recv/recvfrom syscalls powerpc: restore some missing spu syscalls tcp: fix tcp_rcv_fastopen_synack() to enter TCP_CA_Loss for failed TFO netfilter: nf_tables: fully validate NFT_DATA_VALUE on store to data registers bpf: Take return from set_memory_ro() into account with bpf_prog_lock_ro() drm/panel: ilitek-ili9881c: Fix warning with GPIO controllers that sleep vduse: validate block features only with block devices vduse: Temporarily fail if control queue feature requested x86/fpu: Fix AMD X86_BUG_FXSAVE_LEAK fixup mtd: partitions: redboot: Added conversion of operands to a larger type wifi: ieee80211: check for NULL in ieee80211_mle_size_ok() bpf: Add a check for struct bpf_fib_lookup size bpf: Mark bpf prog stack with kmsan_unposion_memory in interpreter mode RDMA/restrack: Fix potential invalid address access net/iucv: Avoid explicit cpumask var allocation on stack net/dpaa2: Avoid explicit cpumask var allocation on stack crypto: ecdh - explicitly zeroize private_key ALSA: emux: improve patch ioctl data validation media: dvbdev: Initialize sbuf soc: ti: wkup_m3_ipc: Send NULL dummy message instead of pointer message drm/radeon/radeon_display: Decrease the size of allocated memory nvme: fixup comment for nvme RDMA Provider Type drm/panel: simple: Add missing display timing flags for KOE TX26D202VM0BWA gpio: davinci: Validate the obtained number of IRQs drm/amd/amdgpu: Fix style errors in amdgpu_drv.c & amdgpu_device.c drm/amdgpu: Fix pci state save during mode-1 reset riscv: stacktrace: convert arch_stack_walk() to noinstr gpiolib: cdev: Disallow reconfiguration without direction (uAPI v1) randomize_kstack: Remove non-functional per-arch entropy filtering ima: Fix use-after-free on a dentry's dname.name x86: stop playing stack games in profile_pc() parisc: use generic sys_fanotify_mark implementation Revert "MIPS: pci: lantiq: restore reset gpio polarity" pinctrl: qcom: spmi-gpio: drop broken pm8008 support ocfs2: fix DIO failure due to insufficient transaction credits nfs: drop the incorrect assertion in nfs_swap_rw() mmc: sdhci-brcmstb: check R1_STATUS for erase/trim/discard mmc: sdhci-pci: Convert PCIBIOS_* return codes to errnos mmc: sdhci: Do not invert write-protect twice mmc: sdhci: Do not lock spinlock around mmc_gpio_get_ro() iio: xilinx-ams: Don't include ams_ctrl_channels in scan_mask counter: ti-eqep: enable clock at probe i2c: testunit: don't erase registers after STOP i2c: testunit: discard write requests while old command is running iio: adc: ad7266: Fix variable checking bug iio: accel: fxls8962af: select IIO_BUFFER & IIO_KFIFO_BUF iio: chemical: bme680: Fix pressure value output iio: chemical: bme680: Fix calibration data variable iio: chemical: bme680: Fix overflows in compensate() functions iio: chemical: bme680: Fix sensor data read operation net: usb: ax88179_178a: improve link status logs usb: gadget: printer: SS+ support usb: gadget: printer: fix races against disable usb: musb: da8xx: fix a resource leak in probe() usb: atm: cxacru: fix endpoint checking in cxacru_bind() usb: dwc3: core: remove lock of otg mode during gadget suspend/resume to avoid deadlock usb: gadget: aspeed_udc: fix device address configuration usb: ucsi: stm32: fix command completion handling serial: 8250_omap: Implementation of Errata i2310 serial: imx: set receiver level before starting uart ALSA: hda/realtek: fix mute/micmute LEDs don't work for EliteBook 645/665 G11. tty: mcf: MCF54418 has 10 UARTS net: can: j1939: Initialize unused data in j1939_send_one() net: can: j1939: recover socket queue on CAN bus error during BAM transmission net: can: j1939: enhanced error handling for tightly received RTS messages in xtp_rx_rts_session_new cpufreq: intel_pstate: Use HWP to initialize ITMT if CPPC is missing cpu/hotplug: Fix dynstate assignment in __cpuhp_setup_state_cpuslocked() irqchip/loongson-liointc: Set different ISRs for different cores kbuild: Install dtb files as 0644 in Makefile.dtbinst sh: rework sync_file_range ABI btrfs: zoned: fix initial free space detection csky, hexagon: fix broken sys_sync_file_range hexagon: fix fadvise64_64 calling conventions drm/nouveau/dispnv04: fix null pointer dereference in nv17_tv_get_ld_modes drm/amdgpu: avoid using null object of framebuffer drm/i915/gt: Fix potential UAF by revoke of fence registers drm/nouveau/dispnv04: fix null pointer dereference in nv17_tv_get_hd_modes drm/amdgpu/atomfirmware: fix parsing of vram_info batman-adv: Don't accept TT entries for out-of-spec VIDs can: mcp251xfd: fix infinite loop when xmit fails ata: ahci: Clean up sysfs file on error ata: libata-core: Fix double free on error ftruncate: pass a signed offset syscalls: fix compat_sys_io_pgetevents_time64 usage syscalls: fix sys_fanotify_mark prototype pwm: stm32: Refuse too small period requests Revert "cpufreq: amd-pstate: Fix the inconsistency in max frequency units" mm/page_alloc: Separate THP PCP into movable and non-movable categories gfs2: Fix slab-use-after-free in gfs2_qd_dealloc efi: memmap: Move manipulation routines into x86 arch tree efi: xen: Set EFI_PARAVIRT for Xen dom0 boot on all architectures efi/x86: Free EFI memory map only when installing a new one. arm64: dts: rockchip: Fix SD NAND and eMMC init on rk3308-rock-pi-s arm64: dts: rockchip: Rename LED related pinctrl nodes on rk3308-rock-pi-s ARM: dts: rockchip: rk3066a: add #sound-dai-cells to hdmi node arm64: dts: rockchip: fix PMIC interrupt pin on ROCK Pi E arm64: dts: rockchip: Add sound-dai-cells for RK3368 serial: imx: only set receiver level if it is zero serial: 8250_omap: Fix Errata i2310 with RX FIFO level check tracing/net_sched: NULL pointer dereference in perf_trace_qdisc_reset() Linux 6.1.97 Change-Id: I8ae3429d5ddec709f2ef8e96895fa111ee31d004 Signed-off-by: Greg Kroah-Hartman <gregkh@google.com> |
||
|
|
c7596f093d |
ANDROID: gki_defconfig: Enable CONFIG_RTC_HCTOSYS for x86
Required for virtio_pvclock.ko which relies on CONFIG_PM_SLEEP and CONFIG_RTC_HCTOSYS. Previous change where the config was disabled - https://android-review.git.corp.google.com/c/kernel/common/+/2402373 Bug: 355784260 Change-Id: I929f67d6659364f895fd041484544d39705a1004 Signed-off-by: Kriti <kritisn@google.com> Signed-off-by: Alistair Delva <adelva@google.com> |
||
|
|
d1af8906d9 |
ANDROID: GKI: Update symbol list for vivo
update vivo symbol list for adding hooks for exting task's swp_entrys. 5 function symbol(s) added 'int __traceiter_android_vh_oom_swapmem_gather_finish(void*, struct mm_struct *)' 'int __traceiter_android_vh_oom_swapmem_gather_init(void*, struct mm_struct *)' 'int __traceiter_android_vh_swapmem_gather_add_bypass(void*, struct mm_struct *, swp_entry_t, bool *)' 'int __traceiter_android_vh_swapmem_gather_finish(void*, struct mm_struct *)' 'int __traceiter_android_vh_swapmem_gather_init(void*, struct mm_struct *)' 5 variable symbol(s) added 'struct tracepoint __tracepoint_android_vh_oom_swapmem_gather_finish' 'struct tracepoint __tracepoint_android_vh_oom_swapmem_gather_init' 'struct tracepoint __tracepoint_android_vh_swapmem_gather_add_bypass' 'struct tracepoint __tracepoint_android_vh_swapmem_gather_finish' 'struct tracepoint __tracepoint_android_vh_swapmem_gather_init' Bug: 364480846 Bug: 340798358 Change-Id: I54f29d5eee93c8e88cdc1f81e46507b2c8b5bb95 Signed-off-by: Justin Jiang <justinjiang@vivo.corp-partner.google.com> |
||
|
|
9eca8763c1 |
ANDROID: vendor_hooks: add hooks for exting task's swp_entrys
The process exit time is mainly caused by freeing its swp_entrys. When low memory triggers to kill lots of processes exit simultaneously, there is a problem of CPU high load occupied by the exiting processes. This feature is used to asynchronously maintain and release the swp_entrys of the exiting process to accelerate the efficiency of the exiting process. Bug: 364480846 Bug: 340798358 Change-Id: I6fc0b813e7ac6a0796e08ce7a17d5ff3ab2b799b Signed-off-by: Justin Jiang <justinjiang@vivo.corp-partner.google.com> |
||
|
|
03a4ae5d99 |
ANDROID: gki_defconfig: Enable Broadcom SoCs
Enable DMA_RESTRICTED_POOL required for Broadcom SoCs. Bug: 364564922 Change-Id: I4a07bdeb7f7c8bdaae09e4665238214d5eb37742 Signed-off-by: Pierre Couillaud <pierre@broadcom.com> |
||
|
|
ef0ea14d63 |
ANDROID: ABI: Update xiaomi symbol list
1 function symbol(s) added 'unsigned long shrink_slab(gfp_t, int, struct mem_cgroup*, int)' Bug: 363907036 Change-Id: I295a42db5a2e2dbba99991a8c2ee557c603cd2c1 Signed-off-by: huangshaobo1 <huangshaobo1@xiaomi.corp-partner.google.com> |
||
|
|
eabf8327ed |
ANDROID: Update the ABI symbol list
Adding the following symbols: - dma_fence_allocate_private_stub 1 function symbol(s) added 'struct dma_fence* dma_fence_allocate_private_stub(ktime_t)' Bug: 364613453 Change-Id: Ib806915b6d2be0c23c304b86a15213d4d98c0b36 Signed-off-by: John Scheible <johnscheible@google.com> |
||
|
|
f88293625b |
UPSTREAM: PM: domains: Add helper functions to attach/detach multiple PM domains
Attaching/detaching of a device to multiple PM domains has started to become a common operation for many drivers, typically during ->probe() and ->remove(). In most cases, this has lead to lots of boilerplate code in the drivers. To fixup up the situation, let's introduce a pair of helper functions, dev_pm_domain_attach|detach_list(), that driver can use instead of the open-coding. Note that, it seems reasonable to limit the support for these helpers to DT based platforms, at it's the only valid use case for now. Suggested-by: Daniel Baluta <daniel.baluta@nxp.com> Tested-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org> Tested-by: Iuliana Prodan <iuliana.prodan@nxp.com> Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org> Link: https://lore.kernel.org/r/20240130123951.236243-2-ulf.hansson@linaro.org Bug: 323966425 Change-Id: Ib0cc368d9eac3a9615b75ca5954d81ab6b14b4b2 (cherry picked from commit 161e16a5e50a82d219b3df3ce32286b0a2ae08bd) Signed-off-by: Nikunj Kela <quic_nkela@quicinc.com> Signed-off-by: Anant Goel <quic_anantg@quicinc.com> |
||
|
|
7b1e2d9798 |
UPSTREAM: OPP: Fix -Wunsequenced in _of_add_opp_table_v1()
Clang warns (or errors with CONFIG_WERROR=y):
drivers/opp/of.c:1081:28: error: multiple unsequenced modifications to 'val' [-Werror,-Wunsequenced]
1081 | .freq = be32_to_cpup(val++) * 1000,
| ^
1082 | .u_volt = be32_to_cpup(val++),
| ~~
1 error generated.
There is no sequence point in a designated initializer. Move back to
separate variables for the creation of the values, so that there are
sequence points between each evaluation and increment of val.
Fixes: 75bbc92c09d8 ("OPP: Add dev_pm_opp_add_dynamic() to allow more flexibility")
Signed-off-by: Nathan Chancellor <nathan@kernel.org>
Reviewed-by: Nick Desaulniers <ndesaulniers@google.com>
Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org>
Bug: 323966425
Change-Id: I870855263a0db8e35bcf8f150f5e05b2cfbdbc6b
(cherry picked from commit 184ff4f721638e37a5a5907bf98962b6d9318ef6)
Signed-off-by: Nikunj Kela <quic_nkela@quicinc.com>
Signed-off-by: Anant Goel <quic_anantg@quicinc.com>
|
||
|
|
c33dbb3b87 |
UPSTREAM: firmware: arm_scmi: Specify the performance level when adding an OPP
To enable the performance level to be used for OPPs, let's convert into using the dev_pm_opp_add_dynamic() API when creating them. This will be particularly useful for the SCMI performance domain, as shown through subsequent changes. Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org> Link: https://lore.kernel.org/r/20230925131715.138411-9-ulf.hansson@linaro.org Signed-off-by: Sudeep Holla <sudeep.holla@arm.com> Bug: 323966425 Change-Id: I0d831c1e923d64e3e88e42acf4f4f16587c21696 (cherry picked from commit 5a6a104193520dc3b66ad2c7d823e00b50734ab6) Signed-off-by: Nikunj Kela <quic_nkela@quicinc.com> Signed-off-by: Anant Goel <quic_anantg@quicinc.com> |
||
|
|
47933171f3 |
BACKPORT: firmware: arm_scmi: Simplify error path in scmi_dvfs_device_opps_add()
Let's simplify the code in scmi_dvfs_device_opps_add() by using dev_pm_opp_remove_all_dynamic() in the error path. Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org> Link: https://lore.kernel.org/r/20230925131715.138411-8-ulf.hansson@linaro.org Signed-off-by: Sudeep Holla <sudeep.holla@arm.com> Bug: 323966425 Change-Id: Ic2378e232588af5332cb7770287fec02342389eb (cherry picked from commit 033ca4de129646e9969a6838b44cca0fac38e219) [nikunj: Resolved minor conflict in drivers/firmware/arm_scmi/perf.c ] Signed-off-by: Nikunj Kela <quic_nkela@quicinc.com> Signed-off-by: Anant Goel <quic_anantg@quicinc.com> |
||
|
|
b50a013d33 |
BACKPORT: OPP: Extend support for the opp-level beyond required-opps
At this point the level (performance state) for an OPP is currently limited to be requested for a device that is attached to a PM domain. Moreover, the device needs to have the so called required-opps assigned to it, which are based upon OPP tables being described in DT. To extend the support beyond required-opps and DT, let's enable the level to be set for all OPPs. More precisely, if the requested OPP has a valid level let's try to request it through the device's optional PM domain, via calling dev_pm_domain_set_performance_state(). Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org> [ Viresh: Handle NULL opp in _set_opp_level() ] Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org> Bug: 323966425 Change-Id: I6176127586d50324fbb96f099ddad60bb3c910e5 (cherry picked from commit 0025ff64ffcf6bd6ece5484e7818401f77bf115f) [nikunj: Resolved minor conflict in drivers/opp/core.c ] [anantg: Use dev_pm_genpd_set_performance_state in drivers/opp/core.c ] Signed-off-by: Nikunj Kela <quic_nkela@quicinc.com> Signed-off-by: Anant Goel <quic_anantg@quicinc.com> |
||
|
|
9ba5e19e0d |
UPSTREAM: OPP: Extend dev_pm_opp_data with a level
Let's extend the dev_pm_opp_data with a level variable, to allow users to specify a corresponding level (performance state) for a dynamically added OPP. Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org> Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org> Bug: 323966425 Change-Id: I1cc007355fd53f26d29b88ad0d9fa2d56a1e4e9d (cherry picked from commit 3166383da081461244918aeed7ad028ef11b17cc) Signed-off-by: Nikunj Kela <quic_nkela@quicinc.com> Signed-off-by: Anant Goel <quic_anantg@quicinc.com> |
||
|
|
adf41f4737 |
BACKPORT: OPP: Add dev_pm_opp_add_dynamic() to allow more flexibility
The dev_pm_opp_add() API is limited to add dynamic OPPs with a frequency and a voltage level. To enable more flexibility, let's add a new API, dev_pm_opp_add_dynamic() that's takes a struct dev_pm_opp_data* instead of a list of in-parameters. Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org> Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org> Bug: 323966425 Change-Id: I37e08f4b4c9f42e1f8c42a876d46d89447fda7a1 (cherry picked from commit 248a38d5cc3f3505e6cfbbc0514435c9f1ba00af) [anantg: Kept dev_pm_opp_add() as an exported API to maintain the ABI] Signed-off-by: Nikunj Kela <quic_nkela@quicinc.com> Signed-off-by: Anant Goel <quic_anantg@quicinc.com> |
||
|
|
9c1597d2e4 |
UPSTREAM: dt-bindings: power: Clarify performance capabilities of power-domains
The power-domains bindings has in many years been used to describe so called performance-domains too. Rather than using a separate binding it has been convenient to re-use the power-domain bindings, as in some cases it's in fact a combination of the both that would be the best description. Therefore, let's make it more clear that the power-domains bindings can be used to describe a performance-domain too. Cc: "Rafael J. Wysocki" <rjw@rjwysocki.net> Cc: Kevin Hilman <khilman@kernel.org> Cc: Rob Herring <robh+dt@kernel.org> Cc: Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org> Cc: Conor Dooley <conor+dt@kernel.org> Cc: devicetree@vger.kernel.org Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org> Reviewed-by: Rob Herring <robh@kernel.org> Link: https://lore.kernel.org/r/20230825112633.236607-11-ulf.hansson@linaro.org Signed-off-by: Sudeep Holla <sudeep.holla@arm.com> Bug: 323966425 Change-Id: I46cc27dec351160f20a76d29d419ba8e0f161c1b (cherry picked from commit 0ead1f3e158c44aa274f2d5c49be947fbfcdffe0) Signed-off-by: Nikunj Kela <quic_nkela@quicinc.com> Signed-off-by: Anant Goel <quic_anantg@quicinc.com> |
||
|
|
dda942f010 |
UPSTREAM: dt-bindings: firmware: arm,scmi: Extend bindings for protocol@13
The protocol@13 node is describing the performance scaling option for the ARM SCMI interface, as a clock provider. This is unnecessary limiting, as performance scaling is in many cases not limited to switching a clock's frequency. Therefore, let's extend the binding so the interface can be modelled as a generic performance domain too. The common way to describe this, is to use the power-domain DT bindings, so let's use that. Cc: Rob Herring <robh+dt@kernel.org> Cc: Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org> Cc: Conor Dooley <conor+dt@kernel.org> Cc: devicetree@vger.kernel.org Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org> Reviewed-by: Rob Herring <robh@kernel.org> Link: https://lore.kernel.org/r/20230825112633.236607-10-ulf.hansson@linaro.org Signed-off-by: Sudeep Holla <sudeep.holla@arm.com> Bug: 323966425 Change-Id: Idbc74f40223b00946a2b14b5804cef2b6cdd38c9 (cherry picked from commit e11c480b6df1942b8f9a6958c2d881d8a9a9fb3b) Signed-off-by: Nikunj Kela <quic_nkela@quicinc.com> Signed-off-by: Anant Goel <quic_anantg@quicinc.com> |
||
|
|
ff18572d05 |
UPSTREAM: dt-bindings: arm: cpus: Add a power-domain-name for a performance-domain
When an CPU's performance domain is managed through the SCMI firmware, let's enable us describe this as a consumer of a power-domain provider, which is the de-facto standard to use for performance domains. In this case, let's specify a corresponding power-domain-name, to point out the corresponding index for it. Cc: Rob Herring <robh+dt@kernel.org> Cc: Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org> Cc: Conor Dooley <conor+dt@kernel.org> Cc: devicetree@vger.kernel.org Cc: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com> Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org> Reviewed-by: Rob Herring <robh@kernel.org> Link: https://lore.kernel.org/r/20230825112633.236607-9-ulf.hansson@linaro.org Signed-off-by: Sudeep Holla <sudeep.holla@arm.com> Bug: 323966425 Change-Id: I4096359603b39d47425033ae554ce357370798f8 (cherry picked from commit 6e429adc60b1fa87b6e89d68cb9d1c0a8224d58a) Signed-off-by: Nikunj Kela <quic_nkela@quicinc.com> Signed-off-by: Anant Goel <quic_anantg@quicinc.com> |