From nobody Wed Dec 17 01:13:23 2025 Received: from DB3PR0202CU003.outbound.protection.outlook.com (mail-northeuropeazon11021101.outbound.protection.outlook.com [52.101.65.101]) (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 1EE43187325; Wed, 17 Jul 2024 21:44:15 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=52.101.65.101 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1721252658; cv=fail; b=tWj4WXAMvzzN84VmzxddVsqqOp1YPPEdzrJ+ikqDG/q8XftiuHn9kZKmj3xr9LilaUjS5pIMlnxYVnOOtg/AZIZX8nv9rvXyr3Gt333o0XLLwryqmco/6NhvwerC3YEo+4B80sZ9hAAYVBRNDDrNeAhG+bFWYl2gweRjHZy05s8= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1721252658; c=relaxed/simple; bh=fWbvBHKrWJT2QHXDdYmHiLsEgrKYcWS9XghsdlLl5jY=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version:Content-Type; b=WLg10Bf2XrRpEKsq7AdC6xXjevNriaEz7HQkmzkGMZwqcokCLG9iDV2CQIZRzMsX0E5aC5lVjzzZstuHRTGwXr0caFkRn3mLhEZrqQ7Tmejo/xQ/SF1y1UHdMoGfjNDyyZXH+9I73mWDe6W0CtpeOyLD2P0waeEQkr3kdZkW4QA= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=esd.eu; spf=pass smtp.mailfrom=esd.eu; dkim=pass (1024-bit key) header.d=esdhannover.onmicrosoft.com header.i=@esdhannover.onmicrosoft.com header.b=kxMdpF8A; arc=fail smtp.client-ip=52.101.65.101 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=esd.eu Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=esd.eu Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=esdhannover.onmicrosoft.com header.i=@esdhannover.onmicrosoft.com header.b="kxMdpF8A" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=E19Cxvhuil1JPN3qhN7JrSGw8jiYbcrPWCyhML9SAg+2xOgKpBLzeF5MVcVtlv+7bEQnLHkZHgabK83rudh9Q8ctH1MSH97ISlw5tyLTSITAevVJDgNztaDuPPenYL5hADskRswzQVijDQblkv0dqhbFBvYNfzDf8RIDhUE7mcGBLaVtw5Fn/UX7uGovWMU01jZJFmquClnDxRudX+kwS1+elpllJefcaJje6HxH2dvv9ZupsLM6tnFr+7x91YpwNfl7uuhd0EviKTr+zHTSsGKvYKGRNhMlF4/tMTsfxKTYGWjZ2kND40aSsezyc2wHI/Kw0HArxf9fGxTtxwYxHg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=9t9cg9MUrzlNcPKH8xVyy9AVPEoX4vJ/X1Ms2jwjlhs=; b=ygJNQbMqBkAkImdYlQlX4gqgr0G1B9PR+14LtauOWHUn/mI6vDdQHknpw3CJbgTbcfBnJPPf3ucwY47+rnUUx8ohK2hiJSxcNunMv4YIwUUantArxz3VQ8+lEyhEsbgp4jHWTDIpjTCLgae6YODOHsPOGG2GWiOLXYwEMUl0IlHwIhDHNRkfTIYWzA6oMef2SIMann6Sa3NMVKD+ktBDKzFQytdcIuEIjnp50JOvmsdQQkMEUM8TOaD98MNhPUtqmpI+I7DMY2QUVnbmu4Ko+TeVebdkh8DipuSQlj22jNeKBI4pJ/MLWRy2wgIAY7bxp4zhnqz3jdE0fyZZItIAQQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=softfail (sender ip is 80.151.164.27) smtp.rcpttodomain=davemloft.net smtp.mailfrom=esd.eu; dmarc=fail (p=none sp=none pct=100) action=none header.from=esd.eu; dkim=none (message not signed); arc=none (0) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=esdhannover.onmicrosoft.com; s=selector1-esdhannover-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=9t9cg9MUrzlNcPKH8xVyy9AVPEoX4vJ/X1Ms2jwjlhs=; b=kxMdpF8AnZZIYh3SoLkVtni56+8SYUnDgMLljK3lytJmMdTYErr6E0huVYtI9dTPXeTHXdOvPxkngIlN8+pU14Fn3H+SgLfHw5NuUYAf2ZyjyQIeHu8gkedEQqhjKdlHQnB7Mi76SU3AWowCIvmxjKesmMC8fWdvHq2O4/rVmOY= Received: from DUZPR01CA0233.eurprd01.prod.exchangelabs.com (2603:10a6:10:4b4::17) by GV2PR03MB9524.eurprd03.prod.outlook.com (2603:10a6:150:da::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7784.17; Wed, 17 Jul 2024 21:44:10 +0000 Received: from DB5PEPF00014B9D.eurprd02.prod.outlook.com (2603:10a6:10:4b4:cafe::5a) by DUZPR01CA0233.outlook.office365.com (2603:10a6:10:4b4::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7784.18 via Frontend Transport; Wed, 17 Jul 2024 21:44:10 +0000 X-MS-Exchange-Authentication-Results: spf=softfail (sender IP is 80.151.164.27) smtp.mailfrom=esd.eu; dkim=none (message not signed) header.d=none;dmarc=fail action=none header.from=esd.eu; Received-SPF: SoftFail (protection.outlook.com: domain of transitioning esd.eu discourages use of 80.151.164.27 as permitted sender) Received: from esd-s7.esd (80.151.164.27) by DB5PEPF00014B9D.mail.protection.outlook.com (10.167.8.164) with Microsoft SMTP Server id 15.20.7784.11 via Frontend Transport; Wed, 17 Jul 2024 21:44:09 +0000 Received: from debby.esd.local (jenkins.esd.local [10.0.0.190]) by esd-s7.esd (Postfix) with ESMTPS id 8947E7C16C9; Wed, 17 Jul 2024 23:44:09 +0200 (CEST) Received: by debby.esd.local (Postfix, from userid 2044) id 7A03D2E0157; Wed, 17 Jul 2024 23:44:09 +0200 (CEST) From: =?UTF-8?q?Stefan=20M=C3=A4tje?= To: Marc Kleine-Budde , Vincent Mailhol , linux-can@vger.kernel.org Cc: netdev@vger.kernel.org, linux-kernel@vger.kernel.org, Wolfgang Grandegger , "David S . Miller" , Eric Dumazet , Jakub Kicinski , Paolo Abeni Subject: [PATCH 1/2] can: esd_402_pci: Rename esdACC CTRL register macros Date: Wed, 17 Jul 2024 23:44:08 +0200 Message-Id: <20240717214409.3934333-2-stefan.maetje@esd.eu> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20240717214409.3934333-1-stefan.maetje@esd.eu> References: <20240717214409.3934333-1-stefan.maetje@esd.eu> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DB5PEPF00014B9D:EE_|GV2PR03MB9524:EE_ X-MS-Office365-Filtering-Correlation-Id: affec90e-0fa5-43c4-d1bf-08dca6a9976e X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|376014|1800799024|7416014|82310400026|36860700013; X-Microsoft-Antispam-Message-Info: =?utf-8?B?NHFudXptWUtCT3hpQ0s4SjM4dU1xdUthSjJmNjR2SnFGM3JNY2dVb0U5Vmxr?= =?utf-8?B?cHpRWWRqWjJpaHV0dzBkZUtReU5lSy90QWZmZ3V2VGNFSTR0cUsrK1VhTStM?= =?utf-8?B?c0JkNzBWNWxDRDRCZ3BSdzNJb09xSDVnK29Va2tVcGk1cXNSZzE2b2pqdzI0?= =?utf-8?B?NHZpQ2VwT29xL2tMWFQvdStONWw1Z1Rkdmk5MkNEUUsrOFUyeGxYL0RUd2RG?= =?utf-8?B?TW1rd2srcktSOUZ3OUFvWTBmcGxWVWQ5SXZtVXRVTlFJM1E5NGIybHR6OHU2?= =?utf-8?B?WWptNittU2hZWlJDb1VIa3M4RjBNUlVVbnZ6d1plczk3S3V0MjFHbjFiM0p6?= =?utf-8?B?emJBM1I2cEVPVmYyc0t6TmJXYUhoQ1FRRlIxL2dLV2hBakt6cCtRSGdRcm91?= =?utf-8?B?dHY4Q3F1VWI4eTJRM1lENHJnYlNxR0Q4cEhLZ1hHeG1rR1hwMnFPNkNyYktk?= =?utf-8?B?RnlYVDhuMUhqcDFuUnNlVC9jSml0NS9SZUQ4ZGJhWHVHZmVDY2hDTjlKblY5?= =?utf-8?B?clIya0draDBBTGdzdTZrNDJTYmRsNi84dlJ5eGVkMEdnaGl6S09YUVNnOGJs?= =?utf-8?B?VGdYdUpQcXZNQ3BsU1Y2Sjh3R2NZalgvSTZ5LzM3d3BSTWg3MUhoQ0RJbHM5?= =?utf-8?B?TStWUmREUmd5a0RMYnZTN3g4dXQ4a3F2czAvQWQ2d28vQmNsUnFxNzE1UjMr?= =?utf-8?B?K3R6TCs2LzBDcjJhblhnR21CTkVuZTdOdlZSc1ZKV0I2N2NHa0ZGYlAzNURa?= =?utf-8?B?U3d6UHdsWk4xU3J1QVpiWldmNFllU1dKZDJMejNZMlRKM0VVVDkveXV1SFg1?= =?utf-8?B?ZGpEYjRYMHd3REhqcjdFc1h3cTEvcmNYV1ZqQkxoR2FVM3UweXBhZ2R3WnRO?= =?utf-8?B?SlMraFBGMFZoRkhjU2MxbHVuZ05RQUJ2a0tMUFNOU1ViRXhQV2JPdlI1Yjdk?= =?utf-8?B?dGpqT0poMHdWaFRmSGFDOVJyNmNRT2JwZTV5OHhBbksxWnZuOXVPaXhPbXlj?= =?utf-8?B?c3dTTXlVd0srZ3ZjZHQ1QXpHLzE2RlRHSmYrMEU2d0hPVDBDV1lKb2l0ek9L?= =?utf-8?B?NllXcDdqbGFnZytnVm9aRTJrQzFlYWJzZVJTY1dPcGEwL0hoSXJMbFRsQ1FP?= =?utf-8?B?b1YyZHlUbjd4RDM5NkFUeWlHK056Zy9vcDRqaEhHWFhxSlo1Wm0vTHcydW4x?= =?utf-8?B?eGduTTh4SWxoZDd3akF3eVl3cmIrZlpESTQzbU9DbEp6NFp2TnFYekJ1R0lL?= =?utf-8?B?S3ZZaTdBMVVXNmZJbE9MVHZkY2pCTnNDemkxV1ArMkViN04zOTVzRU9jNzJT?= =?utf-8?B?ekhkZHlMT250WjR0eUsvTUVkbjhTMnNXbjJaWHZiaXNOZnJpaUZWSXZUSUdB?= =?utf-8?B?TnZBTG9mMlB6UFE0YmlLWm8xYStCanVoWnMzR0pCSFRTUENLdlRHblZvNXFV?= =?utf-8?B?dmltR0VDZ2ZHMVp0bW5VektTVnYwcUQ5TGdYN3RVYmhtcHRlNzkrZTliTEhB?= =?utf-8?B?TnNnNFdhMjVMSE9rT0h4YjNEKytDTWpOZVpiTCtFWlR0bTJqdGZpWWloR2dV?= =?utf-8?B?NGlHOEEvMjJZQTVEeFpHNlROVjNQb0hzczFsK1hmR2g4UlpwaEduQVZUNVFV?= =?utf-8?B?WGVLdmZWVjlTOE9KYXExNyt5ZTYrN29jbHJTR2kwVlp6OVBrMndWR3QyUEQ5?= =?utf-8?B?bndKVnRuRlh6OVV6dWRvek9JRDdwSDVmODJnd0ozNHJCZXJBTDRMalYzbllO?= =?utf-8?B?aGNIdHZxRHB2MEZKbEh1YTE5NnJWWVBybW1ieFF3bEV3anRPeG9vVmYwQmhi?= =?utf-8?B?WEd5U2lCN1AwMU5na3lyOWdQMVVzYlRUc2JWcTlSRTRiYXR4Q0k1MWVLaDkv?= =?utf-8?B?dDNPMnZVNGI0dml1Y25reGdXbGxXNHhsS0xidHJjZ2VhcHNENDFsam9rSTlL?= =?utf-8?Q?CG9osnl92IU9MGGyPTUPIcsIiNcQuFyi?= X-Forefront-Antispam-Report: CIP:80.151.164.27;CTRY:DE;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:esd-s7.esd;PTR:p5097a41b.dip0.t-ipconnect.de;CAT:NONE;SFS:(13230040)(376014)(1800799024)(7416014)(82310400026)(36860700013);DIR:OUT;SFP:1102; X-OriginatorOrg: esd.eu X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Jul 2024 21:44:09.8980 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: affec90e-0fa5-43c4-d1bf-08dca6a9976e X-MS-Exchange-CrossTenant-Id: 5a9c3a1d-52db-4235-b74c-9fd851db2e6b X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=5a9c3a1d-52db-4235-b74c-9fd851db2e6b;Ip=[80.151.164.27];Helo=[esd-s7.esd] X-MS-Exchange-CrossTenant-AuthSource: DB5PEPF00014B9D.eurprd02.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: GV2PR03MB9524 Rename macros to use for esdACC CTRL register access to match the internal documentation and to make the macro prefix consistent. - ACC_CORE_OF_CTRL_MODE -> ACC_CORE_OF_CTRL Makes the name match the documentation. - ACC_REG_CONTROL_MASK_MODE_ -> ACC_REG_CTRL_MASK_ ACC_REG_CONTROL_MASK_ -> ACC_REG_CTRL_MASK_ Makes the prefix consistent for macros describing masks in the same register (CTRL). Signed-off-by: Stefan M=C3=A4tje --- drivers/net/can/esd/esdacc.c | 46 ++++++++++++++++++------------------ drivers/net/can/esd/esdacc.h | 37 +++++++++++++++-------------- 2 files changed, 42 insertions(+), 41 deletions(-) diff --git a/drivers/net/can/esd/esdacc.c b/drivers/net/can/esd/esdacc.c index 121cbbf81458..ef33d2ccd220 100644 --- a/drivers/net/can/esd/esdacc.c +++ b/drivers/net/can/esd/esdacc.c @@ -43,8 +43,8 @@ =20 static void acc_resetmode_enter(struct acc_core *core) { - acc_set_bits(core, ACC_CORE_OF_CTRL_MODE, - ACC_REG_CONTROL_MASK_MODE_RESETMODE); + acc_set_bits(core, ACC_CORE_OF_CTRL, + ACC_REG_CTRL_MASK_RESETMODE); =20 /* Read back reset mode bit to flush PCI write posting */ acc_resetmode_entered(core); @@ -52,8 +52,8 @@ static void acc_resetmode_enter(struct acc_core *core) =20 static void acc_resetmode_leave(struct acc_core *core) { - acc_clear_bits(core, ACC_CORE_OF_CTRL_MODE, - ACC_REG_CONTROL_MASK_MODE_RESETMODE); + acc_clear_bits(core, ACC_CORE_OF_CTRL, + ACC_REG_CTRL_MASK_RESETMODE); =20 /* Read back reset mode bit to flush PCI write posting */ acc_resetmode_entered(core); @@ -172,7 +172,7 @@ int acc_open(struct net_device *netdev) struct acc_net_priv *priv =3D netdev_priv(netdev); struct acc_core *core =3D priv->core; u32 tx_fifo_status; - u32 ctrl_mode; + u32 ctrl; int err; =20 /* Retry to enter RESET mode if out of sync. */ @@ -187,19 +187,19 @@ int acc_open(struct net_device *netdev) if (err) return err; =20 - ctrl_mode =3D ACC_REG_CONTROL_MASK_IE_RXTX | - ACC_REG_CONTROL_MASK_IE_TXERROR | - ACC_REG_CONTROL_MASK_IE_ERRWARN | - ACC_REG_CONTROL_MASK_IE_OVERRUN | - ACC_REG_CONTROL_MASK_IE_ERRPASS; + ctrl =3D ACC_REG_CTRL_MASK_IE_RXTX | + ACC_REG_CTRL_MASK_IE_TXERROR | + ACC_REG_CTRL_MASK_IE_ERRWARN | + ACC_REG_CTRL_MASK_IE_OVERRUN | + ACC_REG_CTRL_MASK_IE_ERRPASS; =20 if (priv->can.ctrlmode & CAN_CTRLMODE_BERR_REPORTING) - ctrl_mode |=3D ACC_REG_CONTROL_MASK_IE_BUSERR; + ctrl |=3D ACC_REG_CTRL_MASK_IE_BUSERR; =20 if (priv->can.ctrlmode & CAN_CTRLMODE_LISTENONLY) - ctrl_mode |=3D ACC_REG_CONTROL_MASK_MODE_LOM; + ctrl |=3D ACC_REG_CTRL_MASK_LOM; =20 - acc_set_bits(core, ACC_CORE_OF_CTRL_MODE, ctrl_mode); + acc_set_bits(core, ACC_CORE_OF_CTRL, ctrl); =20 acc_resetmode_leave(core); priv->can.state =3D CAN_STATE_ERROR_ACTIVE; @@ -218,13 +218,13 @@ int acc_close(struct net_device *netdev) struct acc_net_priv *priv =3D netdev_priv(netdev); struct acc_core *core =3D priv->core; =20 - acc_clear_bits(core, ACC_CORE_OF_CTRL_MODE, - ACC_REG_CONTROL_MASK_IE_RXTX | - ACC_REG_CONTROL_MASK_IE_TXERROR | - ACC_REG_CONTROL_MASK_IE_ERRWARN | - ACC_REG_CONTROL_MASK_IE_OVERRUN | - ACC_REG_CONTROL_MASK_IE_ERRPASS | - ACC_REG_CONTROL_MASK_IE_BUSERR); + acc_clear_bits(core, ACC_CORE_OF_CTRL, + ACC_REG_CTRL_MASK_IE_RXTX | + ACC_REG_CTRL_MASK_IE_TXERROR | + ACC_REG_CTRL_MASK_IE_ERRWARN | + ACC_REG_CTRL_MASK_IE_OVERRUN | + ACC_REG_CTRL_MASK_IE_ERRPASS | + ACC_REG_CTRL_MASK_IE_BUSERR); =20 netif_stop_queue(netdev); acc_resetmode_enter(core); @@ -233,9 +233,9 @@ int acc_close(struct net_device *netdev) /* Mark pending TX requests to be aborted after controller restart. */ acc_write32(core, ACC_CORE_OF_TX_ABORT_MASK, 0xffff); =20 - /* ACC_REG_CONTROL_MASK_MODE_LOM is only accessible in RESET mode */ - acc_clear_bits(core, ACC_CORE_OF_CTRL_MODE, - ACC_REG_CONTROL_MASK_MODE_LOM); + /* ACC_REG_CTRL_MASK_LOM is only accessible in RESET mode */ + acc_clear_bits(core, ACC_CORE_OF_CTRL, + ACC_REG_CTRL_MASK_LOM); =20 close_candev(netdev); return 0; diff --git a/drivers/net/can/esd/esdacc.h b/drivers/net/can/esd/esdacc.h index a70488b25d39..d13dfa60703a 100644 --- a/drivers/net/can/esd/esdacc.h +++ b/drivers/net/can/esd/esdacc.h @@ -50,7 +50,7 @@ #define ACC_OV_REG_MODE_MASK_FPGA_RESET BIT(31) =20 /* esdACC CAN Core Module */ -#define ACC_CORE_OF_CTRL_MODE 0x0000 +#define ACC_CORE_OF_CTRL 0x0000 #define ACC_CORE_OF_STATUS_IRQ 0x0008 #define ACC_CORE_OF_BRP 0x000c #define ACC_CORE_OF_BTR 0x0010 @@ -66,21 +66,22 @@ #define ACC_CORE_OF_TXFIFO_DATA_0 0x00c8 #define ACC_CORE_OF_TXFIFO_DATA_1 0x00cc =20 -#define ACC_REG_CONTROL_MASK_MODE_RESETMODE BIT(0) -#define ACC_REG_CONTROL_MASK_MODE_LOM BIT(1) -#define ACC_REG_CONTROL_MASK_MODE_STM BIT(2) -#define ACC_REG_CONTROL_MASK_MODE_TRANSEN BIT(5) -#define ACC_REG_CONTROL_MASK_MODE_TS BIT(6) -#define ACC_REG_CONTROL_MASK_MODE_SCHEDULE BIT(7) - -#define ACC_REG_CONTROL_MASK_IE_RXTX BIT(8) -#define ACC_REG_CONTROL_MASK_IE_TXERROR BIT(9) -#define ACC_REG_CONTROL_MASK_IE_ERRWARN BIT(10) -#define ACC_REG_CONTROL_MASK_IE_OVERRUN BIT(11) -#define ACC_REG_CONTROL_MASK_IE_TSI BIT(12) -#define ACC_REG_CONTROL_MASK_IE_ERRPASS BIT(13) -#define ACC_REG_CONTROL_MASK_IE_ALI BIT(14) -#define ACC_REG_CONTROL_MASK_IE_BUSERR BIT(15) +/* CTRL register layout */ +#define ACC_REG_CTRL_MASK_RESETMODE BIT(0) +#define ACC_REG_CTRL_MASK_LOM BIT(1) +#define ACC_REG_CTRL_MASK_STM BIT(2) +#define ACC_REG_CTRL_MASK_TRANSEN BIT(5) +#define ACC_REG_CTRL_MASK_TS BIT(6) +#define ACC_REG_CTRL_MASK_SCHEDULE BIT(7) + +#define ACC_REG_CTRL_MASK_IE_RXTX BIT(8) +#define ACC_REG_CTRL_MASK_IE_TXERROR BIT(9) +#define ACC_REG_CTRL_MASK_IE_ERRWARN BIT(10) +#define ACC_REG_CTRL_MASK_IE_OVERRUN BIT(11) +#define ACC_REG_CTRL_MASK_IE_TSI BIT(12) +#define ACC_REG_CTRL_MASK_IE_ERRPASS BIT(13) +#define ACC_REG_CTRL_MASK_IE_ALI BIT(14) +#define ACC_REG_CTRL_MASK_IE_BUSERR BIT(15) =20 /* BRP and BTR register layout for CAN-Classic version */ #define ACC_REG_BRP_CL_MASK_BRP GENMASK(8, 0) @@ -300,9 +301,9 @@ static inline void acc_clear_bits(struct acc_core *core, =20 static inline int acc_resetmode_entered(struct acc_core *core) { - u32 ctrl =3D acc_read32(core, ACC_CORE_OF_CTRL_MODE); + u32 ctrl =3D acc_read32(core, ACC_CORE_OF_CTRL); =20 - return (ctrl & ACC_REG_CONTROL_MASK_MODE_RESETMODE) !=3D 0; + return (ctrl & ACC_REG_CTRL_MASK_RESETMODE) !=3D 0; } =20 static inline u32 acc_ov_read32(struct acc_ov *ov, unsigned short offs) --=20 2.34.1 From nobody Wed Dec 17 01:13:23 2025 Received: from DUZPR83CU001.outbound.protection.outlook.com (mail-northeuropeazon11023137.outbound.protection.outlook.com [52.101.67.137]) (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 4689F4688; Wed, 17 Jul 2024 21:44:13 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=52.101.67.137 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1721252657; cv=fail; b=p1HlGk8sP7LAjFKkuJyXJNKDfPW4P1qpm89f2k/6deOpcUutro1EFc80BPqbJku9MmY2M4n7yWfbl0fq2vdMAZV148p3XFLj99tt9lGOVr774zMltfy1t93EejnJ/606dEEcJCBJ+ddujOPp1i/7plKHYp4fSgdqxRJRKpZlc9s= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1721252657; c=relaxed/simple; bh=iBuU0KgkP5loNvI9ehGVm8Olu21jZYbjftYW2u+nLvM=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version:Content-Type; b=XX+Ogj5E+sviZTOnzF4bqHo15wU/bVo4LVc3vTeGV4GuFVcHUtE2SGJ9Csvgn8ObvsPJQsBT7NjjE51/cqLxsygpHC3xgll8dpY5bSZs9fJdMSeXDYeMCZN6JGay0LaJukSXsnCLcOBXx8XB4Cb7lrcXEPGigZjSK9sx9k1q7rM= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=esd.eu; spf=pass smtp.mailfrom=esd.eu; dkim=pass (1024-bit key) header.d=esdhannover.onmicrosoft.com header.i=@esdhannover.onmicrosoft.com header.b=HnmoEQ6b; arc=fail smtp.client-ip=52.101.67.137 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=esd.eu Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=esd.eu Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=esdhannover.onmicrosoft.com header.i=@esdhannover.onmicrosoft.com header.b="HnmoEQ6b" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=W1nKm0aGduJvObZnGvyNKcMYj6XX/r79L863PsmrcZtiQuxIaioeodwdtSuWqGgQ51AJ+c5NXQ5xd6ShjDyKb6rSCm/EYjMl5KILa2OZyo8HuGAAtksEYgzl/hqB0wQNRg00PfPX5fhiy5o0mA5yVFf7cU41ElcrOW9Xz+PIL9cgTFzpAepxopP/zSvGCIA5UqeXBGk1gadl5D2U2csQKrAKTiF+2vaDOAVp7fa6mEgsIfKKZWlVKpZ2yXqikLvAOg8FVNrzbMXso7BiNJUoygA7qzSpqVILcHxnqpRp+g+BPVVvTDwvXx6LZfoBQKtx0Ta+E6yr7jqvzNubqQ7Jnw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=hLB1l7TZKzTbV5W/Z74Yx3nlK05AboEEchJ6yWSO0m8=; b=i1PvgIoR4y/w5ChLzosRNXg2NDY4sL00maC3xRU0n/xO+ndiNenIOKQ7eNSVOzIc45eK9R5e2O1z5cmV4nxS5k+irR3xb2FrynXSJ4XXMLjqh2+GMY5o/6pOZQo3oRPR5sWSuyymb8/5oohGqLK5cJKZHJqHXcPgk9K5aXgxaZz9KO47YMA4ZtJjvQWeZZw4gEKApBsNQpqJM/VS8HhHzeVucx1U0L8kqSJ1GgHEvGtekf0pFriiAFPlsgXa6o9a4ONpjfbveM/HNxt+NV01uledVKNZfDjWDa83l8p51rTqcaqju5u8QSVfRwnLGJN9vf3mR1gWxBHdtIqNbEtiKw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=softfail (sender ip is 80.151.164.27) smtp.rcpttodomain=davemloft.net smtp.mailfrom=esd.eu; dmarc=fail (p=none sp=none pct=100) action=none header.from=esd.eu; dkim=none (message not signed); arc=none (0) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=esdhannover.onmicrosoft.com; s=selector1-esdhannover-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=hLB1l7TZKzTbV5W/Z74Yx3nlK05AboEEchJ6yWSO0m8=; b=HnmoEQ6blubqwEFrZCsqLZDNA+qTV2XCnkyu86ZVtCUW1+NIeeXBFSjpFKMQqSlb9yN3BXvmq4bEAJ8dy5hcTexGd9YOZVg7ue5pQ03BhIZ0mXPMN+Aff97NedD+ykX4M8zoJZDn5DAjYlLG++wa9PCeEZT1t1Sx9h6ekbSPiSs= Received: from AS4P191CA0053.EURP191.PROD.OUTLOOK.COM (2603:10a6:20b:657::29) by DU2PR03MB10163.eurprd03.prod.outlook.com (2603:10a6:10:49d::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7762.29; Wed, 17 Jul 2024 21:44:10 +0000 Received: from AMS0EPF00000193.eurprd05.prod.outlook.com (2603:10a6:20b:657:cafe::b3) by AS4P191CA0053.outlook.office365.com (2603:10a6:20b:657::29) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7784.16 via Frontend Transport; Wed, 17 Jul 2024 21:44:10 +0000 X-MS-Exchange-Authentication-Results: spf=softfail (sender IP is 80.151.164.27) smtp.mailfrom=esd.eu; dkim=none (message not signed) header.d=none;dmarc=fail action=none header.from=esd.eu; Received-SPF: SoftFail (protection.outlook.com: domain of transitioning esd.eu discourages use of 80.151.164.27 as permitted sender) Received: from esd-s7.esd (80.151.164.27) by AMS0EPF00000193.mail.protection.outlook.com (10.167.16.212) with Microsoft SMTP Server id 15.20.7784.11 via Frontend Transport; Wed, 17 Jul 2024 21:44:09 +0000 Received: from debby.esd.local (jenkins.esd [10.0.0.190]) by esd-s7.esd (Postfix) with ESMTPS id 8B2287C16CB; Wed, 17 Jul 2024 23:44:09 +0200 (CEST) Received: by debby.esd.local (Postfix, from userid 2044) id 7EEA52E0166; Wed, 17 Jul 2024 23:44:09 +0200 (CEST) From: =?UTF-8?q?Stefan=20M=C3=A4tje?= To: Marc Kleine-Budde , Vincent Mailhol , linux-can@vger.kernel.org Cc: netdev@vger.kernel.org, linux-kernel@vger.kernel.org, Wolfgang Grandegger , "David S . Miller" , Eric Dumazet , Jakub Kicinski , Paolo Abeni Subject: [PATCH 2/2] can: esd_402_pci: Add support for one-shot mode Date: Wed, 17 Jul 2024 23:44:09 +0200 Message-Id: <20240717214409.3934333-3-stefan.maetje@esd.eu> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20240717214409.3934333-1-stefan.maetje@esd.eu> References: <20240717214409.3934333-1-stefan.maetje@esd.eu> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: AMS0EPF00000193:EE_|DU2PR03MB10163:EE_ X-MS-Office365-Filtering-Correlation-Id: bc644768-dd9b-4bfd-a9ee-08dca6a99761 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|1800799024|7416014|376014|36860700013|82310400026; X-Microsoft-Antispam-Message-Info: =?utf-8?B?aEI4UFlDMXB6VDM4aFVBVEJnb2ZZdlBRbFlpNTVGdytvbHlMMGZSenlPanh3?= =?utf-8?B?UVpURXRvTStqZUJRVVc4a1ROS0xHTjRxN2E4NGJ1eGpnWjcyMUpienZQQXBH?= =?utf-8?B?N1ZyNmdOSmZINHE5a3VTR0ErdmZONVlzTUg1T1g2TWx3R3BNSjVVdEZTc0xG?= =?utf-8?B?SXpkNHJ5akxpYVR2TlJqNTY1WlU0RU4zQTVFZWg2OGZ1UVQ0Ym9FdUt3UXBO?= =?utf-8?B?TlFjZTBFRFZPYXZ6QjRhOHZZclF0UFBWSGU4bTF3OWVwY3owSWZCelFYQVls?= =?utf-8?B?RkU5RCtJY3ppblZDZ0xuYWRLMkxGNGF6K09KVEJBVXpJMzg2YWFyZ014bnJI?= =?utf-8?B?bmp6OTVJS0VHQkVCclB2M0k4cXVBNnFRUStnWUZkSktNVDJtanF4NDl5THpR?= =?utf-8?B?Wkw2eTZhR3Zxb01sSFNCenpPL2xWNC80Q1pNelNFV21CMDVyNXd5eEtvM2RG?= =?utf-8?B?STlaSE5RT2ZkUDcvOGpxWEQ3NnNzQ005ajhjRUsyL1RrdHpDR3dOUGpKRkND?= =?utf-8?B?YkdpL3ZINWZEcnJuMldTZXN6clhVbnRqYXVpTTZPNWFNRVBSblo1SGhJMDRD?= =?utf-8?B?RlIreFpuS2d0R2g0UWVhbER3TmxPVWI3aVlCbkNaa2xJR0RSb2hvU2VENzFD?= =?utf-8?B?TDUzUDh5d2c0R2lQbW1LcW1IdmtiUCs1VGpLbWJ6NjQxaVN2UWhobnd2V3J5?= =?utf-8?B?c1FRcHFXbm16a2lQcG91TU5FN1RaWEpwR0xvMCtCMi92VlBkZUVmMW1CK3VS?= =?utf-8?B?VEFSdXl3dnlqTTVjR0ZkSzFDSmlkTHZRUmhWeTY3TW14QjJmZ09FRFBKY2h6?= =?utf-8?B?b0JyMGJkSzRHcXFjV1hYZmxpZW94RFd0U2ZtdklFRnMyWTRSQXlTc2w3Yjdq?= =?utf-8?B?aVQzQTZacTVmallKOE5aQ3c3N1RqblhRMW9vdThwNXFPVnpPSlRzRGs4V0xk?= =?utf-8?B?bFJWWnBxT1U1Q0ZTWVlFM21lV0tyVjE1ZkhpeGQwZFhKdzRiamloaHI0Z3pG?= =?utf-8?B?aWdRc3R2OXRoQTdsWGl5U3JwMjVRSHJUTE1IR3pQVk5qd0YxVmVFdWk2NmNJ?= =?utf-8?B?QU55RGROYzBnVGpjcUJOZ0RMYU1qaEhKWDdIYjgvdkpZMGxaMzhhUEhjWkth?= =?utf-8?B?dGV0TVdQL29nZS9Ka0lkdEdjQVFtMER0aDk3cVlERjUvSTh4SjY4dnpybG9x?= =?utf-8?B?QW1rWTJPckg1emJqZTAyakxiN1g0cWdEMWxmNU9YV1c5L3VkTW5iaTBwVmtY?= =?utf-8?B?R2drQ0lBRHhDSlJSQ2RwV2lieFQySVptMVNCVjNIckpHNHFDcUZrQkVjamRl?= =?utf-8?B?WjZNekZrQnNMU3F1UU9vbTM2ckVtVWhOTy91WDR3c0pEa2dtTmcwaUlBRzN4?= =?utf-8?B?eHFBeUtQeHp0a0RlSTBRTWJzOXhpWHRJU1Z0d09VTWFzcEhlOEM0dEthV2V4?= =?utf-8?B?OFN0dzNWUUZzeWIvTE5EQ3YweWJEay9NbGkyYUcvTDgxR0pldkd4YjBMdFdy?= =?utf-8?B?RGF1RVMzazEybnlKV05PbmZYNU1pY2FSdCt1aUxzUTJ4MTJKa09WaHN2RFJB?= =?utf-8?B?cnJxT1J4akxQR2JVYmphS1ArZFdkdk9DNmZWYm5rZllaUlpVMHlVbjZ4WWFv?= =?utf-8?B?VS85TkYveHM1aDFFektzeGJDN0ZoZ3BwcjdncCs1a1c5bm9tYjFQdVQ4MmdH?= =?utf-8?B?b1dFN1BoSnlueWpVQU42MWtBVUIwUWxFYTNEWk1rTHJNVmNSalhQam5wZ0tF?= =?utf-8?B?MnpQMllidkhBV3M0bWhvWjV0dEtzeHFNZEowT2Z2UEl3N1owSXBMZHBXNGZX?= =?utf-8?B?dndxekFBd3IwTGhGUTlmL0ZvRHpkRkN1MmhJZ2l1Mm1ob3V5Q1BzZGw1YWZZ?= =?utf-8?B?UitqcGE4a1NWWGZwQjd6K0dFYWZhMThuSC9naEZmMVZ3N3NZZ0wvbnhvcHZn?= =?utf-8?Q?me4DzJCHosh9Pp0DaLVSsuTv4cwGf6yh?= X-Forefront-Antispam-Report: CIP:80.151.164.27;CTRY:DE;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:esd-s7.esd;PTR:p5097a41b.dip0.t-ipconnect.de;CAT:NONE;SFS:(13230040)(1800799024)(7416014)(376014)(36860700013)(82310400026);DIR:OUT;SFP:1102; X-OriginatorOrg: esd.eu X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Jul 2024 21:44:09.8586 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: bc644768-dd9b-4bfd-a9ee-08dca6a99761 X-MS-Exchange-CrossTenant-Id: 5a9c3a1d-52db-4235-b74c-9fd851db2e6b X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=5a9c3a1d-52db-4235-b74c-9fd851db2e6b;Ip=[80.151.164.27];Helo=[esd-s7.esd] X-MS-Exchange-CrossTenant-AuthSource: AMS0EPF00000193.eurprd05.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU2PR03MB10163 This patch adds support for one-shot mode. In this mode there happens no automatic retransmission in the case of an arbitration lost error or on any bus error. Signed-off-by: Stefan M=C3=A4tje --- drivers/net/can/esd/esd_402_pci-core.c | 5 +++-- drivers/net/can/esd/esdacc.c | 9 +++++++-- drivers/net/can/esd/esdacc.h | 1 + 3 files changed, 11 insertions(+), 4 deletions(-) diff --git a/drivers/net/can/esd/esd_402_pci-core.c b/drivers/net/can/esd/e= sd_402_pci-core.c index b7cdcffd0e45..5d6d2828cd04 100644 --- a/drivers/net/can/esd/esd_402_pci-core.c +++ b/drivers/net/can/esd/esd_402_pci-core.c @@ -369,12 +369,13 @@ static int pci402_init_cores(struct pci_dev *pdev) SET_NETDEV_DEV(netdev, &pdev->dev); =20 priv =3D netdev_priv(netdev); + priv->can.clock.freq =3D card->ov.core_frequency; priv->can.ctrlmode_supported =3D CAN_CTRLMODE_LOOPBACK | CAN_CTRLMODE_LISTENONLY | CAN_CTRLMODE_BERR_REPORTING | CAN_CTRLMODE_CC_LEN8_DLC; - - priv->can.clock.freq =3D card->ov.core_frequency; + if (card->ov.features & ACC_OV_REG_FEAT_MASK_DAR) + priv->can.ctrlmode_supported |=3D CAN_CTRLMODE_ONE_SHOT; if (card->ov.features & ACC_OV_REG_FEAT_MASK_CANFD) priv->can.bittiming_const =3D &pci402_bittiming_const_canfd; else diff --git a/drivers/net/can/esd/esdacc.c b/drivers/net/can/esd/esdacc.c index ef33d2ccd220..c80032bc1a52 100644 --- a/drivers/net/can/esd/esdacc.c +++ b/drivers/net/can/esd/esdacc.c @@ -17,6 +17,9 @@ /* esdACC DLC register layout */ #define ACC_DLC_DLC_MASK GENMASK(3, 0) #define ACC_DLC_RTR_FLAG BIT(4) +#define ACC_DLC_SSTX_FLAG BIT(24) /* Single Shot TX */ + +/* esdACC DLC in struct acc_bmmsg_rxtxdone::acc_dlc.len only! */ #define ACC_DLC_TXD_FLAG BIT(5) =20 /* ecc value of esdACC equals SJA1000's ECC register */ @@ -59,7 +62,7 @@ static void acc_resetmode_leave(struct acc_core *core) acc_resetmode_entered(core); } =20 -static void acc_txq_put(struct acc_core *core, u32 acc_id, u8 acc_dlc, +static void acc_txq_put(struct acc_core *core, u32 acc_id, u32 acc_dlc, const void *data) { acc_write32_noswap(core, ACC_CORE_OF_TXFIFO_DATA_1, @@ -249,7 +252,7 @@ netdev_tx_t acc_start_xmit(struct sk_buff *skb, struct = net_device *netdev) u8 tx_fifo_head =3D core->tx_fifo_head; int fifo_usage; u32 acc_id; - u8 acc_dlc; + u32 acc_dlc; =20 if (can_dropped_invalid_skb(netdev, skb)) return NETDEV_TX_OK; @@ -274,6 +277,8 @@ netdev_tx_t acc_start_xmit(struct sk_buff *skb, struct = net_device *netdev) acc_dlc =3D can_get_cc_dlc(cf, priv->can.ctrlmode); if (cf->can_id & CAN_RTR_FLAG) acc_dlc |=3D ACC_DLC_RTR_FLAG; + if (priv->can.ctrlmode & CAN_CTRLMODE_ONE_SHOT) + acc_dlc |=3D ACC_DLC_SSTX_FLAG; =20 if (cf->can_id & CAN_EFF_FLAG) { acc_id =3D cf->can_id & CAN_EFF_MASK; diff --git a/drivers/net/can/esd/esdacc.h b/drivers/net/can/esd/esdacc.h index d13dfa60703a..6b7ebd8c91b2 100644 --- a/drivers/net/can/esd/esdacc.h +++ b/drivers/net/can/esd/esdacc.h @@ -35,6 +35,7 @@ */ #define ACC_OV_REG_FEAT_MASK_CANFD BIT(27 - 16) #define ACC_OV_REG_FEAT_MASK_NEW_PSC BIT(28 - 16) +#define ACC_OV_REG_FEAT_MASK_DAR BIT(30 - 16) =20 #define ACC_OV_REG_MODE_MASK_ENDIAN_LITTLE BIT(0) #define ACC_OV_REG_MODE_MASK_BM_ENABLE BIT(1) --=20 2.34.1