From nobody Mon Apr 6 18:55:09 2026 Received: from mail-pf1-f175.google.com (mail-pf1-f175.google.com [209.85.210.175]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 2AEAC3B19BB for ; Wed, 18 Mar 2026 09:26:49 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.210.175 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773826012; cv=none; b=AFkhgHqBBtKy5sRYYDPr810tLtC6+rgm54oO2yD85y0IjhB1rU2MH8F2QpshsajxZwuD0u5bUhO/ybtxRe4VgrUXwlgZDTuMA6yfeFfuc8Bis0R3c1K3DBwLX44Ji6l8rfpB6Hi3vpDtA07rQb0HGdBjQolTSJIEuw0w6hoAs6o= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773826012; c=relaxed/simple; bh=cGygfkCQFVabXszbYQGaScrXMljmgLedI1p+DCKgSOw=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=iXJrG7tRVLQgeDcVoEACn4gW0iPwXRd1e1PS/I0mfzwNs7iEgsqm+WAWDG5qVmHWQ3L+TEeMWMQjoY4jtxNcljKZNY8xNofWz+lph8IAk2blt+n8r82+OvdW6Q/nLd486eIyyg7OkutZchhpLC/wcZb+H/IhAJ3UZWTs9Jg3rlo= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=fXg8EZ+K; arc=none smtp.client-ip=209.85.210.175 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="fXg8EZ+K" Received: by mail-pf1-f175.google.com with SMTP id d2e1a72fcca58-82976220e97so4069192b3a.3 for ; Wed, 18 Mar 2026 02:26:49 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1773826009; x=1774430809; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=MMl3hlIlWaAHl8bntMlv1enQWEzCzJ7B18VMZsPBu5A=; b=fXg8EZ+KXxCgceY/uk9FDzhmYiG02gEfhT3BJMaa8tMSTXDBJY3xK96RqaAPluRmU6 ePKF4ORe9glfZ9CfaK6gk+ipGiylJ17c/rySTvUWHpjQayahlbYo3VkxEctkEeK8vRFg q/ostJT11fbOacBbw5htz2YJEPr/c/Pxg0Df8IcjEoNRjbW1TGurzWmRo0fcGkb0Lpnl fJDDIn4ZZPsuIvu2QyPMX5LetYFSTaSn0MLPlguGPLPWPcNOSHnPG6JvamdEjyrFLDkO +xsB09qVYDAMwzRGP764GTCC5YJ6oLgfg4YrasrlcN+pHiTkIQSwbpTokXa47TcISjUa 5s5A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1773826009; x=1774430809; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=MMl3hlIlWaAHl8bntMlv1enQWEzCzJ7B18VMZsPBu5A=; b=oP/tX4tQ1G/dgaYw2Dk1AwWfOBn/qRAhdj9v5B/gKTaZoVZhALn4q8/P8cAItjqJyL I7mbdp61oENQqBmDIwWJwhopKaISgYfU+6awqmHcyLsWNDx5bA9LwiepVq9tKdy7bi2O JbcbXg/eQYnG+21yhPW4xNVAGqYSN2EiwRrjS3EpWLgisWqcfoss4kIXL3lZkw4GU3Qh m+v42otajuBYuVGFmdUC4aDas5dN5mycRMKMwiPdFh5/ExwVTWH2eKHc32uM5EvFSr60 Tu1efjpq+7ekULMxZlsgKbnQPnB4cTzitHv2Au0fVtmPEp7kouIO9NUOBf1UOGFuHe5z tNjQ== X-Forwarded-Encrypted: i=1; AJvYcCUlxcFiU5DUHyOG6JSSxRSzlPvSQopBgN+3DBiRk8chnUly1tmhb+OzrBXoJ4UouxgrMQLB+w5LGDR3Bwo=@vger.kernel.org X-Gm-Message-State: AOJu0Yy3+mEF3PA0JGIigxXGs/JLqGnhBdFmgQ51P5J51TsEAaYiwyQ7 dXc6f0fUxuTGeED51dOCU6ggzOHqCggwPTtOYyLIjG1u1S2PvOQI2iAV X-Gm-Gg: ATEYQzyX6pdCaMwM8uBSQlxij4Lact4QNMVEdWwQDqF5yGHrl1qwtWRFwp+vZ/drm66 PdWaDtMllgrcbWjcTxwmuPnaDVxSXIj1gQAGqSPuv9AL6W0EFhCLK9WgO6lTqstVWgKjYIzT7wD JoET/1a6Oiur4NG5dWxiyh1J+kuiGGtthFKmv6b/k95iqHqk7mRlt/8sH0jU7kOhTA0oJDToQQC QzyKcobLr4fZfNHnN9jaL5dyTV+sLxoNvNMF/bSBcMvJTdsXb7ewM5yVb3nM379UviV/HeZeE3k FvYCCpgXp1PTAHP9i0HOriB5THWAiEmJjwWkDDyBXQeqt09NGauVYIHtDukEOu6RLmh4kf9NSEI g4VPrWAPD31J/xFVr5brCHqBW1BY5atj5YGFzuppdx5DoLLlM1psD40AIOvS2/MGQC2QgryPuDx tlc8NjU0rBImQ4F2Gcep9Z9EkIGmHm8GMdLA== X-Received: by 2002:a05:6a00:1a8d:b0:823:b39:779e with SMTP id d2e1a72fcca58-82a6af0cc4cmr2480800b3a.62.1773826009024; Wed, 18 Mar 2026 02:26:49 -0700 (PDT) Received: from aadarsh.. ([2401:4900:8811:147c:fe7f:9683:3d75:702e]) by smtp.googlemail.com with ESMTPSA id d2e1a72fcca58-82a6bbb522asm2065793b3a.37.2026.03.18.02.26.45 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 18 Mar 2026 02:26:48 -0700 (PDT) From: Aadarsh Mandal To: gregkh@linuxfoundation.org Cc: linux-staging@lists.linux.dev, linux-kernel@vger.kernel.org, straube.linux@gmail.com, dan.carpenter@linaro.org, ethantidmore06@gmail.com, lukagejak5@gmail.com, Aadarsh Mandal Subject: [PATCH] [PATCH] staging: rtl8723bs: clean up coding style in sdio_halinit.c V2 Date: Wed, 18 Mar 2026 14:56:39 +0530 Message-ID: <20260318092639.27055-1-aadarshmandal9354@gmail.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <46281493-328B-478A-985D-8F7A9218441A@linux.dev> References: <46281493-328B-478A-985D-8F7A9218441A@linux.dev> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" update since v1: - fixed the changes mentioned by the Luka Gejak - removed the commented code and space Signed-off-by: Aadarsh Mandal --- Note: * This patch is part of the GSoC2026 application process for device tree bi= ndings conversions * https://github.com/LinuxFoundationGSoC/ProjectIdeas/wiki/GSoC-2026-Device= -Tree-Bindings drivers/staging/rtl8723bs/hal/sdio_halinit.c | 163 ++++++++++++++++++- 1 file changed, 161 insertions(+), 2 deletions(-) diff --git a/drivers/staging/rtl8723bs/hal/sdio_halinit.c b/drivers/staging= /rtl8723bs/hal/sdio_halinit.c index 1026554bcff0..063a0737933e 100644 --- a/drivers/staging/rtl8723bs/hal/sdio_halinit.c +++ b/drivers/staging/rtl8723bs/hal/sdio_halinit.c @@ -6,7 +6,6 @@ *************************************************************************= *****/ #include #include - #include "hal_com_h2c.h" /* * Description: @@ -69,8 +68,8 @@ u8 _InitPowerOn_8723BS(struct adapter *padapter) rtw_write16(padapter, REG_APS_FSMCO, value16); =20 /* Enable CMD53 R/W Operation */ - rtw_write8(padapter, REG_CR, 0x00); + /* Enable MAC DMA/WMAC/SCHEDULE/SEC block */ value16 =3D rtw_read16(padapter, REG_CR); value16 |=3D ( @@ -483,6 +479,158 @@ static void _initSdioAggregationSetting(struct adapte= r *padapter) struct hal_com_data *pHalData =3D GET_HAL_DATA(padapter); =20 /* Tx aggregation setting */ +/* sdio_AggSettingTxUpdate(padapter); */ + + /* Rx aggregation setting */ + HalRxAggr8723BSdio(padapter); + + sdio_AggSettingRxUpdate(padapter); + + /* 201/12/10 MH Add for USB agg mode dynamic switch. */ + pHalData->UsbRxHighSpeedMode =3D false; +} + +static void _InitOperationMode(struct adapter *padapter) +{ + struct mlme_ext_priv *pmlmeext; + u8 regBwOpMode =3D 0; + + pmlmeext =3D &padapter->mlmeextpriv; + + /* 1 This part need to modified according to the rate set we filtered!! */ + /* */ + /* Set RRSR, RATR, and REG_BWOPMODE registers */ + /* */ + switch (pmlmeext->cur_wireless_mode) { + case WIRELESS_MODE_B: + regBwOpMode =3D BW_OPMODE_20MHZ; + break; + case WIRELESS_MODE_G: + regBwOpMode =3D BW_OPMODE_20MHZ; + break; + case WIRELESS_MODE_AUTO: + regBwOpMode =3D BW_OPMODE_20MHZ; + break; + case WIRELESS_MODE_N_24G: + /* It support CCK rate by default. */ + /* CCK rate will be filtered out only when associated AP does not suppo= rt it. */ + regBwOpMode =3D BW_OPMODE_20MHZ; + break; + + default: /* for MacOSX compiler warning. */ + break; + } + + rtw_write8(padapter, REG_BWOPMODE, regBwOpMode); +} + +static void _InitInterrupt(struct adapter *padapter) +{ + /* HISR - turn all off */ + rtw_write32(padapter, REG_HISR, 0); + + /* HIMR - turn all off */ + rtw_write32(padapter, REG_HIMR, 0); + + /* */ + /* Initialize and enable SDIO Host Interrupt. */ + /* */ + InitInterrupt8723BSdio(padapter); + + /* */ + /* Initialize system Host Interrupt. */ + /* */ + InitSysInterrupt8723BSdio(padapter); +} + +static void _InitRFType(struct adapter *padapter) +{ + struct hal_com_data *pHalData =3D GET_HAL_DATA(padapter); + + pHalData->rf_chip =3D RF_6052; +} + +static void _RfPowerSave(struct adapter *padapter) +{ +/* YJ, TODO */ +} + +/* */ +/* 2010/08/09 MH Add for power down check. */ +/* */ +static bool HalDetectPwrDownMode(struct adapter *Adapter) +{ + u8 tmpvalue; + struct hal_com_data *pHalData =3D GET_HAL_DATA(Adapter); + struct pwrctrl_priv *pwrctrlpriv =3D adapter_to_pwrctl(Adapter); + + EFUSE_ShadowRead(Adapter, 1, 0x7B/*EEPROM_RF_OPT3_92C*/, (u32 *)&tmpvalue= ); + + /* 2010/08/25 MH INF priority > PDN Efuse value. */ + if (tmpvalue & BIT4 && pwrctrlpriv->reg_pdnmode) + pHalData->pwrdown =3D true; + else + pHalData->pwrdown =3D false; + + return pHalData->pwrdown; +} /* HalDetectPwrDownMode */ + +u32 rtl8723bs_hal_init(struct adapter *padapter) +{ + s32 ret; + struct hal_com_data *pHalData; + struct pwrctrl_priv *pwrctrlpriv; + u32 NavUpper =3D WiFiNavUpperUs; + u8 val; + + pHalData =3D GET_HAL_DATA(padapter); + pwrctrlpriv =3D adapter_to_pwrctl(padapter); + + if ( + adapter_to_pwrctl(padapter)->bips_processing =3D=3D true && + adapter_to_pwrctl(padapter)->pre_ips_type =3D=3D 0 + ) { + unsigned long start_time; + u8 cpwm_orig, cpwm_now; + u8 val8, bMacPwrCtrlOn =3D true; + + /* for polling cpwm */ + cpwm_orig =3D 0; + rtw_hal_get_hwreg(padapter, HW_VAR_CPWM, &cpwm_orig); + + /* set rpwm */ + val8 =3D rtw_read8(padapter, SDIO_LOCAL_BASE | SDIO_REG_HRPWM1); + val8 &=3D 0x80; + val8 +=3D 0x80; + val8 |=3D BIT(6); + rtw_write8(padapter, SDIO_LOCAL_BASE | SDIO_REG_HRPWM1, val8); + adapter_to_pwrctl(padapter)->tog =3D (val8 + 0x80) & 0x80; + + /* do polling cpwm */ + start_time =3D jiffies; + do { + mdelay(1); + + rtw_hal_get_hwreg(padapter, HW_VAR_CPWM, &cpwm_now); + if ((cpwm_orig ^ cpwm_now) & 0x80) + break; + + if (jiffies_to_msecs(jiffies - start_time) > 100) + break; + + } while (1); + + rtl8723b_set_FwPwrModeInIPS_cmd(padapter, 0); + + rtw_hal_set_hwreg(padapter, HW_VAR_APFM_ON_MAC, &bMacPwrCtrlOn); + + hal_btcoex_InitHwConfig(padapter, false); + + return _SUCCESS; + } + + /* Disable Interrupt first. */ +/* rtw_hal_disable_interrupt(padapter); */ =20 ret =3D _InitPowerOn_8723BS(padapter); if (ret =3D=3D _FAIL) @@ -588,6 +739,8 @@ static void _initSdioAggregationSetting(struct adapter = *padapter) =20 /* Record original value for template. This is arough data, we can only = use the data */ /* for power adjust. The value can not be adjustde according to differen= t power!!! */ +/* pHalData->OriginalCckTxPwrIdx =3D pHalData->CurrentCckTxPwrIdx; */ +/* pHalData->OriginalOfdm24GTxPwrIdx =3D pHalData->CurrentOfdm24GTxPwrIdx;= */ =20 rtl8723b_InitAntenna_Selection(padapter); =20 @@ -630,6 +783,7 @@ static void _initSdioAggregationSetting(struct adapter = *padapter) /* ack for xmit mgmt frames. */ rtw_write32(padapter, REG_FWHW_TXQ_CTRL, rtw_read32(padapter, REG_FWHW_TX= Q_CTRL) | BIT(12)); =20 +/* pHalData->PreRpwmVal =3D SdioLocalCmd52Read1Byte(padapter, SDIO_REG_HRP= WM1) & 0x80; */ =20 { pwrctrlpriv->rf_pwrstate =3D rf_on; @@ -918,6 +1072,8 @@ static void _ReadPROMContent(struct adapter *padapter) pEEPROM->EepromOrEfuse =3D (eeValue & BOOT_FROM_EEPROM) ? true : false; pEEPROM->bautoload_fail_flag =3D (eeValue & EEPROM_EN) ? false : true; =20 +/* pHalData->EEType =3D IS_BOOT_FROM_EEPROM(Adapter) ? EEPROM_93C46 : EEPR= OM_BOOT_EFUSE; */ + _ReadEfuseInfo8723BS(padapter); } =20 --=20 2.43.0