From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mx0a-0031df01.pphosted.com (mx0a-0031df01.pphosted.com [205.220.168.131]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id A1BD61D6DB5 for ; Tue, 14 Apr 2026 04:15:19 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=205.220.168.131 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1776140123; cv=none; b=taoovcX2Kxcj/MtjqmjHShmKPgoBjNp/x8/vdytou/UXW+uVWOjZZan9C4ZiX0EaUmK9qECvIM3LpQqdfp9IlYxUlTzRAoTv3WVkOd2l1aYKnCXJrxBaiXCym51hVALTPt85oTMSFlY1o3Q/1yHTc60FdK0a/ejV5+UtQjGVD6k= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1776140123; c=relaxed/simple; bh=ZPcgIi8MKUh3N0DiRexl+1zRry8BxzepOqsnCFfZM3k=; h=Message-ID:Date:MIME-Version:Subject:To:Cc:References:From: In-Reply-To:Content-Type; b=i/m+vXZXn7Acaf0lv+fbV1p3kilUOPlE8hSqW4Fnwiks1PpwcHCIWRWVD0ZI2Sjrdjee5zRQzAfgZllYt1qOF1aOPsTS+k5iuianE5AeMHdgFv6tvxnN7JaQVixf3MQVd06WYbzhxfWV/MsYGIm563UAQdpAZghHLD4btldSQUQ= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oss.qualcomm.com; spf=pass smtp.mailfrom=oss.qualcomm.com; dkim=pass (2048-bit key) header.d=qualcomm.com header.i=@qualcomm.com header.b=M5euSdxs; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b=WrVH/lu4; arc=none smtp.client-ip=205.220.168.131 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oss.qualcomm.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oss.qualcomm.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=qualcomm.com header.i=@qualcomm.com header.b="M5euSdxs"; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b="WrVH/lu4" Received: from pps.filterd (m0279864.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 63DLCkgJ3505463 for ; Tue, 14 Apr 2026 04:15:18 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qualcomm.com; h= cc:content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to; s=qcppdkim1; bh= a/woYn48HqzdPePM0rQiSSsluq0n6ehxvhfKt7aRHD4=; b=M5euSdxshyyMGMZh uIMkUwircBdJcbnqF+7nk6kkUBlTIDGabCoIWzI71CFSDbvXh/wODxVdA204LEWH FNepaEWPO43tXDzpb0fBuAyFivIRXnnmsiPuLKRuGiybvWulP9jHoNJzkszq2yIz Tjj8CPaKOoGiyHKEHvuAe5eCDweVZhHZ0sZ0FSgWddR+Yulza0TVQYLclf/wPagp dUNGFcbxpniJHILm+7Lh0uRIu6QLD/55RNkOYVXUbhZMxWVl5wBqV1n+DCsVglBr FLYHP5Ga+uTenOnPuIpZkON9r6EU7wOfd7ice6u43mvFW+52jcd2+ts5e9frf1bZ yjaLEw== Received: from mail-pj1-f72.google.com (mail-pj1-f72.google.com [209.85.216.72]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4dh870gy23-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Tue, 14 Apr 2026 04:15:18 +0000 (GMT) Received: by mail-pj1-f72.google.com with SMTP id 98e67ed59e1d1-35da86144daso6078307a91.3 for ; Mon, 13 Apr 2026 21:15:18 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1776140118; x=1776744918; darn=vger.kernel.org; h=content-transfer-encoding:in-reply-to:from:content-language :references:cc:to:subject:user-agent:mime-version:date:message-id :from:to:cc:subject:date:message-id:reply-to; bh=a/woYn48HqzdPePM0rQiSSsluq0n6ehxvhfKt7aRHD4=; b=WrVH/lu4ADg1PFYg50+EEoX0B/QHVcGeXS2XoPP0EwMuUFZzc64OXgpXO1AOU4abIj 1l6Iy6XkzkzECWJimBKyeOd4hSp8P/HRECwsrP3SeC4U/zvgTSZGDIrXn90XB7Ily8CQ uHm7ceMIb35YWpAVvkPtb654r9/xmaZ0oYFuavWiuTrqw10BH2YAs2efsiWP/2mhYWEm c1dRnm0/ffGFhxEujRJ3X5t4xuESPB6rpd82mcOlOQrzO8G+tEUZqjNpcNlWgVlgDSdk D3t3stuLf/Yjvx75bsgHXJKEqpWCoLFXIpTP4hTSoMLjkUmp2jFWbYemsO8CYe/C7tN5 dfsA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1776140118; x=1776744918; h=content-transfer-encoding:in-reply-to:from:content-language :references:cc:to:subject:user-agent:mime-version:date:message-id :x-gm-gg:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=a/woYn48HqzdPePM0rQiSSsluq0n6ehxvhfKt7aRHD4=; b=sQ11X72bo8FPoqcV4SKQS8oY9tMV4QPWw0GV6TkF11AfGpOP82tHxwW584MVUucCLB AkO9G2B3QISNZqSVm4vJjJA1iRyoBiJDflIzC0YUTA0mICiNBbmxhIbgvwam1iEAyE2H HO23LA7Z+Oi0gAFF793TJZyxUy92/gqnoWP7IltiR9olBHVB3K41IgtD1KhEMoGEagkQ TxlLYpcrB66hwAMn5HLa0qWOSLXAejzil0jes7cAfWgXHt2WzAzYSe4MbtIcHZXRJAMH 0RACnKPFkFgGepOKK6u8T+co+YTJS4uTLD/tWMh3LkIcmSR4UNJh4B+qmBLQzOs1TjLW +LLQ== X-Forwarded-Encrypted: i=1; AFNElJ9PwulVzUCIqqDrWlXYctBFbg2nkaQKx5gFWDlbFtuCYaWXJvyRVCeaiFQl1gtvTCrYzV+PVNEsQ2YcGiM=@vger.kernel.org X-Gm-Message-State: AOJu0Yw+fIDUmj8J77a1DZz7NJjMARJ5ZK6o7sTE790r/ag+EpEU3K2a vGfpjTQWNDe65LoVj8JQpFPtxNjECX+a9cXSol2zoYfzFhEZ+YYLKTQxdNzVUySUPbztAbeHOrb i9i8+dZ4RT5VTyqVhYPrMISTSXG5va1BpXVL/mZTbt1/2H+6MjqGj86i8wL+NwBy+mjw= X-Gm-Gg: AeBDiesY6kV1jVCUoiBxZhKX2sHAi5u1FERJh8aSbyd5or82oPvnFSF7Pjp9RKHXsb7 iIYTdoYxbYjSV2bipSru6kB8ZgL+5zmKWChA/E31V87eVgJK9XkElatLkSFqYYt1PbHFJgYlcJ+ 7Z4KOy8YO7fCO0dmeoPCdBzMzOMlZyRnNesSL7SDpDofYCvlyldvPUXXKLWZiTOhinVOMti2hxv XwEdFj0CDzP3FEC/v1Xs6ebNX8Yxklmlura3ZTa8p1b6VlRuJSUZLqd5Bwlg6r0kYjocYiWxIL+ /FQzCvmYBZY04ijSnQalIq7s1NUPXs6SN+TGYTCWm3mDfjPmsnhJKlzvqmgurnpWDx60ZwiqMsU nynNKsshMlbESzhBbl1y7drwidPBE+snfbODdJm8XKe/Ul97my3oC9GOiHXLKnjWdYT/6065gZW Bf3UcIidhcYA== X-Received: by 2002:a17:90b:3e8a:b0:35d:a542:2dbf with SMTP id 98e67ed59e1d1-35e428320a8mr15517417a91.20.1776140117547; Mon, 13 Apr 2026 21:15:17 -0700 (PDT) X-Received: by 2002:a17:90b:3e8a:b0:35d:a542:2dbf with SMTP id 98e67ed59e1d1-35e428320a8mr15517384a91.20.1776140116994; Mon, 13 Apr 2026 21:15:16 -0700 (PDT) Received: from [10.133.33.35] (tpe-colo-wan-fw-bordernet.qualcomm.com. [103.229.16.4]) by smtp.gmail.com with ESMTPSA id 98e67ed59e1d1-35e5755ea3csm4411935a91.1.2026.04.13.21.15.09 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Mon, 13 Apr 2026 21:15:16 -0700 (PDT) Message-ID: Date: Tue, 14 Apr 2026 12:15:07 +0800 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [RFC PATCH 00/12] Add Linux RISC-V trace support via CoreSight To: Zane Leung , robh@kernel.org, krzk+dt@kernel.org, conor+dt@kernel.org, palmer@dabbelt.com, pjw@kernel.org, gregkh@linuxfoundation.org, alexander.shishkin@linux.intel.com, irogers@google.com Cc: coresight@lists.linaro.org, peterz@infradead.org, mingo@redhat.com, namhyung@kernel.org, mark.rutland@arm.com, jolsa@kernel.org, adrian.hunter@intel.com, kan.liang@linux.intel.com, mchitale@gmail.com, anup@brainfault.org, atish.patra@linux.dev, andrew.jones@oss.qualcomm.com, sunilvl@oss.qualcomm.com, linux-riscv@lists.infradead.org, linux-kernel@vger.kernel.org, anup.patel@oss.qualcomm.com, mayuresh.chitale@oss.qualcomm.com, zhuangqiubin@linux.spacemit.com References: <20260414034153.3272485-1-liangzhen@linux.spacemit.com> Content-Language: en-US From: Jie Gan In-Reply-To: <20260414034153.3272485-1-liangzhen@linux.spacemit.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwNDE0MDAzNyBTYWx0ZWRfX+ulDFPpKV1WO LRYnABTgGv4cKharK12I8R8Z6oYqR5Kh1IlZ1Af+2XbHdfAzmIUvoaQsflb2mdmJSeWYGyCshmK KDvE+gwj1/vOKu/Ua+UJUG8y28SWM5fJiU33apwam6PLXwN6xaY2xG02LqkmL8I/OHid5NpwjgE 7J8pgPQGZYTlElcDyumeg9FbFNGCKmp+vpxNGIWFNe4ZNIptgh2gVP8gduxSI4HytExglAWj6I3 BdYpoYC7SaWz+u79Ww5nZb6sdafWMfE9Ai4J+XwAIeT9FYCemr3iXaQxz2UUIK2A0eZM3EF8Pog 13AZAapQ/qXyUjGDsqVvugIZkSColBZURv+6bPEJhakGDXwcI0W8btcEAJM/xT4XfZj51CYQHr0 plCpKnlVTk2GzAZQoyunxB95foiCRdamEZsDAe5eINkSYKBNNWb/jQP5ARuNMbliB0qhq0aGQFE RGkZnVuTCy1OmsUIL6w== X-Proofpoint-ORIG-GUID: adtv7weLuwzinu5irbKLCxN-mafoUOVO X-Proofpoint-GUID: adtv7weLuwzinu5irbKLCxN-mafoUOVO X-Authority-Analysis: v=2.4 cv=btZ8wkai c=1 sm=1 tr=0 ts=69ddbf56 cx=c_pps a=RP+M6JBNLl+fLTcSJhASfg==:117 a=nuhDOHQX5FNHPW3J6Bj6AA==:17 a=IkcTkHD0fZMA:10 a=A5OVakUREuEA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=u7WPNUs3qKkmUXheDGA7:22 a=DJpcGTmdVt4CTyJn9g5Z:22 a=VwQbUJbxAAAA:8 a=EUspDBNiAAAA:8 a=lv0vYI88AAAA:8 a=ug8Fspz1yd9VzR5AxhoA:9 a=QEXdDO2ut3YA:10 a=iS9zxrgQBfv6-_F4QbHw:22 a=9qqun4PRrEabIEPCFt1_:22 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1143,Hydra:6.1.51,FMLib:17.12.100.49 definitions=2026-04-13_03,2026-04-13_04,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 malwarescore=0 lowpriorityscore=0 spamscore=0 impostorscore=0 phishscore=0 priorityscore=1501 bulkscore=0 suspectscore=0 clxscore=1015 adultscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2604070000 definitions=main-2604140037 On 4/14/2026 11:41 AM, Zane Leung wrote: > From: liangzhen > I dont think you have looped relevant maintainers and reviewers for the Coresight subsystem. Thanks, Jie > This series adds Linux RISC-V trace support via CoreSight, implementing RISC-V > trace drivers within the CoreSight framework and integrating them with perf tools. > The K3 SoC contains RISC-V Encoder, Funnel, ATB, CoreSight Funnel, and CoreSight TMC > components, which can be directly leveraged through the existing CoreSight infrastructure. > > Linux RISC-V trace support form Anup Patel: > (https://patchwork.kernel.org/project/linux-riscv/cover/20260225062448.4027948-1-anup.patel@oss.qualcomm.com/) > which currently lacks ATB component support and guidance on reusing CoreSight components. > > The series includes: > - RISC-V trace driver implementation within the CoreSight framework > - RISC-V Trace Encoder, Funnel, and ATB Bridge drivers as CoreSight devices > - RISC-V trace PMU record capabilities and parsing events in perf. > - RISC-V Nexus Trace decoder for perf tools > > Any comments or suggestions are welcome. > > Verification on K3 SoC: > To verify this patch series on K3 hardware, the following device tree are required: > 1. RISC-V Trace Encoder node (8) > 2. RISC-V ATB Bridge node (8) > 3. RISC-V Trace Funnel node (2) > 3. CoreSight Funnel configuration for RISC-V (1) > 4. CoreSight TMC configuration for trace buffer (1) > > /{ > dummy_clk: apb-pclk { > compatible = "fixed-clock"; > #clock-cells = <0x0>; > clock-output-names = "clk14mhz"; > clock-frequency = <14000000>; > }; > > > soc: soc { > #address-cells = <2>; > #size-cells = <2>; > > encoder0: encoder@d9002000 { > compatible = "riscv,trace-encoder"; > reg = <0x0 0xd9002000 0x0 0x1000>; > cpus = <&cpu_0>; > out-ports { > port { > cluster0_encoder0_out_port: endpoint { > remote-endpoint = <&cluster0_bridge0_in_port>; > }; > }; > }; > }; > > bridge0: bridge@d9003000 { > compatible = "riscv,trace-atbbridge"; > reg = <0x0 0xd9003000 0x0 0x1000>; > cpus = <&cpu_0>; > out-ports { > port { > cluster0_bridge0_out_port: endpoint { > remote-endpoint = <&cluster0_funnel_in_port0>; > }; > }; > }; > in-ports { > port { > cluster0_bridge0_in_port: endpoint { > remote-endpoint = <&cluster0_encoder0_out_port>; > }; > }; > }; > }; > > ... > > cluster0_funnel: funnel@d9000000 { > compatible = "riscv,trace-funnel"; > reg = <0x0 0xd9000000 0x0 0x1000>; > cpus = <&cpu_0>, <&cpu_1>, <&cpu_2>, <&cpu_3>; > riscv,timestamp-present; > out-ports { > port { > cluster0_funnel_out_port: endpoint { > remote-endpoint = <&main_funnel_in_port0>; > }; > }; > }; > in-ports { > #address-cells = <1>; > #size-cells = <0>; > > port@0 { > reg = <0>; > cluster0_funnel_in_port0: endpoint { > remote-endpoint = <&cluster0_bridge0_out_port>; > }; > }; > > port@1 { > reg = <1>; > cluster0_funnel_in_port1: endpoint { > remote-endpoint = <&cluster0_bridge1_out_port>; > }; > }; > > port@2 { > reg = <2>; > cluster0_funnel_in_port2: endpoint { > remote-endpoint = <&cluster0_bridge2_out_port>; > }; > }; > > port@3 { > reg = <3>; > cluster0_funnel_in_port3: endpoint { > remote-endpoint = <&cluster0_bridge3_out_port>; > }; > }; > }; > }; > > cluster1_funnel: funnel@d9010000 { > compatible = "riscv,trace-funnel"; > reg = <0x0 0xd9010000 0x0 0x1000>; > cpus = <&cpu_4>, <&cpu_5>, <&cpu_6>, <&cpu_7>; > riscv,timestamp-present; > out-ports { > port { > cluster1_funnel_out_port: endpoint { > remote-endpoint = <&main_funnel_in_port1>; > }; > }; > }; > in-ports { > #address-cells = <1>; > #size-cells = <0>; > > port@0 { > reg = <0>; > cluster1_funnel_in_port0: endpoint { > remote-endpoint = <&cluster1_bridge0_out_port>; > }; > }; > > port@1 { > reg = <1>; > cluster1_funnel_in_port1: endpoint { > remote-endpoint = <&cluster1_bridge1_out_port>; > }; > }; > > port@2 { > reg = <2>; > cluster1_funnel_in_port2: endpoint { > remote-endpoint = <&cluster1_bridge2_out_port>; > }; > }; > > port@3 { > reg = <3>; > cluster1_funnel_in_port3: endpoint { > remote-endpoint = <&cluster1_bridge3_out_port>; > }; > }; > }; > }; > > main_funnel: funnel@d9042000 { > compatible = "arm,coresight-dynamic-funnel", "arm,primecell"; > reg = <0x0 0xd9042000 0x0 0x1000>; > clocks = <&dummy_clk>; > clock-names = "apb_pclk"; > out-ports { > port { > main_funnel_out_port: endpoint { > remote-endpoint = <&etf_in_port>; > }; > }; > }; > in-ports { > #address-cells = <1>; > #size-cells = <0>; > > port@0 { > reg = <0>; > main_funnel_in_port0: endpoint { > remote-endpoint = <&cluster0_funnel_out_port>; > }; > }; > > port@1 { > reg = <1>; > main_funnel_in_port1: endpoint { > remote-endpoint = <&cluster1_funnel_out_port>; > }; > }; > }; > }; > > etf: etf@d9043000 { > compatible = "arm,coresight-tmc", "arm,primecell"; > reg = <0x0 0xd9043000 0x0 0x1000>; > clocks = <&dummy_clk>; > clock-names = "apb_pclk"; > out-ports { > port { > etf_out_port: endpoint { > remote-endpoint = <&etr_in_port>; > }; > }; > }; > in-ports { > port { > etf_in_port: endpoint { > remote-endpoint = <&main_funnel_out_port>; > }; > }; > }; > }; > > etr: etr@d9044000 { > compatible = "arm,coresight-tmc", "arm,primecell"; > reg = <0x0 0xd9044000 0x0 0x1000>; > clocks = <&dummy_clk>; > clock-names = "apb_pclk"; > arm,scatter-gather; > in-ports { > port { > etr_in_port: endpoint { > remote-endpoint = <&etf_out_port>; > }; > }; > }; > }; > }; > }; > > Verification case: > > ~ # perf list pmu > rvtrace// [Kernel PMU event] > > ~ # perf record -e rvtrace/@tmc_etr0/ --per-thread uname > Linux > [ perf record: Woken up 1 times to write data ] > [ perf record: Captured and wrote 0.191 MB perf.data ] > ~ # perf script > uname 137 [003] 1 branches: ffffffff80931470 rvtrace_poll_bit+0x38 ([kernel.kallsyms]) => ffffffff80931492 rvtrace_poll_bit+0x5a ([kernel.kallsyms]) > uname 137 [003] 1 branches: ffffffff809328a6 encoder_enable_hw+0x252 ([kernel.kallsyms]) => ffffffff809328ba encoder_enable_hw+0x266 ([kernel.kallsyms]) > uname 137 [003] 1 branches: ffffffff80932c4a encoder_enable+0x82 ([kernel.kallsyms]) => ffffffff80932c36 encoder_enable+0x6e ([kernel.kallsyms]) > uname 137 [003] 1 branches: ffffffff80928198 etm_event_start+0xf0 ([kernel.kallsyms]) => ffffffff809281aa etm_event_start+0x102 ([kernel.kallsyms]) > uname 137 [003] 1 branches: ffffffff809281e6 etm_event_start+0x13e ([kernel.kallsyms]) => ffffffff8092755e coresight_get_sink_id+0x16 ([kernel.kallsyms]) > uname 137 [003] 1 branches: ffffffff8092820e etm_event_start+0x166 ([kernel.kallsyms]) => ffffffff80928226 etm_event_start+0x17e ([kernel.kallsyms]) > uname 137 [003] 1 branches: ffffffff801c3bb4 perf_report_aux_output_id+0x0 ([kernel.kallsyms]) => ffffffff801c3bd6 perf_report_aux_output_id+0x22 ([kernel.kallsyms]) > uname 137 [003] 1 branches: ffffffff801c3c5a perf_report_aux_output_id+0xa6 ([kernel.kallsyms]) => ffffffff801c3bf0 perf_report_aux_output_id+0x3c ([kernel.kallsyms]) > uname 137 [003] 1 branches: ffffffff801c3c40 perf_report_aux_output_id+0x8c ([kernel.kallsyms]) => ffffffff801c3aea __perf_event_header__init_id+0x2a ([kernel.kallsyms]) > uname 137 [003] 1 branches: ffffffff801c3b42 __perf_event_header__init_id+0x82 ([kernel.kallsyms]) => ffffffff801c3b4a __perf_event_header__init_id+0x8a ([kernel.kallsyms]) > uname 137 [003] 1 branches: ffffffff801c3bb0 __perf_event_header__init_id+0xf0 ([kernel.kallsyms]) => ffffffff801c3b58 __perf_event_header__init_id+0x98 ([kernel.kallsyms]) > uname 137 [003] 1 branches: ffffffff8004c658 __task_pid_nr_ns+0x0 ([kernel.kallsyms]) => ffffffff8004c696 __task_pid_nr_ns+0x3e ([kernel.kallsyms]) > uname 137 [003] 1 branches: ffffffff8004c71e __task_pid_nr_ns+0xc6 ([kernel.kallsyms]) => ffffffff8004c6a4 __task_pid_nr_ns+0x4c ([kernel.kallsyms]) > uname 137 [003] 1 branches: ffffffff8004c6e4 __task_pid_nr_ns+0x8c ([kernel.kallsyms]) => ffffffff8004c6e4 __task_pid_nr_ns+0x8c ([kernel.kallsyms]) > ... > > liangzhen (12): > coresight: Add RISC-V support to CoreSight tracing > coresight: Initial implementation of RISC-V trace driver > coresight: Add RISC-V Trace Encoder driver > coresight: Add RISC-V Trace Funnel driver > coresight: Add RISC-V Trace ATB Bridge driver > coresight rvtrace: Add timestamp component support for encoder and > funnel > coresight: Add RISC-V PMU name support > perf tools: riscv: making rvtrace PMU listable > perf tools: Add RISC-V trace PMU record capabilities > perf tools: Add Nexus RISC-V Trace decoder > perf symbols: Add RISC-V PLT entry sizes > perf tools: Integrate RISC-V trace decoder into auxtrace > > drivers/hwtracing/Kconfig | 2 + > drivers/hwtracing/coresight/Kconfig | 46 +- > drivers/hwtracing/coresight/Makefile | 6 + > drivers/hwtracing/coresight/coresight-core.c | 8 + > .../hwtracing/coresight/coresight-etm-perf.c | 1 - > .../hwtracing/coresight/coresight-etm-perf.h | 21 + > .../hwtracing/coresight/coresight-platform.c | 1 - > .../hwtracing/coresight/coresight-tmc-etf.c | 4 + > .../hwtracing/coresight/coresight-tmc-etr.c | 4 + > .../hwtracing/coresight/rvtrace-atbbridge.c | 239 +++ > drivers/hwtracing/coresight/rvtrace-core.c | 135 ++ > .../coresight/rvtrace-encoder-core.c | 562 +++++++ > .../coresight/rvtrace-encoder-sysfs.c | 363 +++++ > drivers/hwtracing/coresight/rvtrace-encoder.h | 151 ++ > drivers/hwtracing/coresight/rvtrace-funnel.c | 337 ++++ > drivers/hwtracing/coresight/rvtrace-funnel.h | 39 + > .../hwtracing/coresight/rvtrace-timestamp.c | 278 ++++ > .../hwtracing/coresight/rvtrace-timestamp.h | 64 + > include/linux/coresight-pmu.h | 4 + > include/linux/rvtrace.h | 116 ++ > tools/arch/riscv/include/asm/insn.h | 645 ++++++++ > tools/perf/arch/riscv/util/Build | 2 + > tools/perf/arch/riscv/util/auxtrace.c | 490 ++++++ > tools/perf/arch/riscv/util/pmu.c | 20 + > tools/perf/util/Build | 3 + > tools/perf/util/auxtrace.c | 4 + > tools/perf/util/auxtrace.h | 1 + > tools/perf/util/nexus-rv-decoder/Build | 1 + > .../util/nexus-rv-decoder/nexus-rv-decoder.c | 1364 +++++++++++++++++ > .../util/nexus-rv-decoder/nexus-rv-decoder.h | 139 ++ > .../perf/util/nexus-rv-decoder/nexus-rv-msg.h | 190 +++ > tools/perf/util/rvtrace-decoder.c | 1039 +++++++++++++ > tools/perf/util/rvtrace.h | 40 + > tools/perf/util/symbol-elf.c | 4 + > 34 files changed, 6320 insertions(+), 3 deletions(-) > create mode 100644 drivers/hwtracing/coresight/rvtrace-atbbridge.c > create mode 100644 drivers/hwtracing/coresight/rvtrace-core.c > create mode 100644 drivers/hwtracing/coresight/rvtrace-encoder-core.c > create mode 100644 drivers/hwtracing/coresight/rvtrace-encoder-sysfs.c > create mode 100644 drivers/hwtracing/coresight/rvtrace-encoder.h > create mode 100644 drivers/hwtracing/coresight/rvtrace-funnel.c > create mode 100644 drivers/hwtracing/coresight/rvtrace-funnel.h > create mode 100644 drivers/hwtracing/coresight/rvtrace-timestamp.c > create mode 100644 drivers/hwtracing/coresight/rvtrace-timestamp.h > create mode 100644 include/linux/rvtrace.h > create mode 100644 tools/arch/riscv/include/asm/insn.h > create mode 100644 tools/perf/arch/riscv/util/auxtrace.c > create mode 100644 tools/perf/arch/riscv/util/pmu.c > create mode 100644 tools/perf/util/nexus-rv-decoder/Build > create mode 100644 tools/perf/util/nexus-rv-decoder/nexus-rv-decoder.c > create mode 100644 tools/perf/util/nexus-rv-decoder/nexus-rv-decoder.h > create mode 100644 tools/perf/util/nexus-rv-decoder/nexus-rv-msg.h > create mode 100644 tools/perf/util/rvtrace-decoder.c > create mode 100644 tools/perf/util/rvtrace.h >