From nobody Sun Sep 20 18:54:39 2026 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of seabios.org designates 78.46.105.101 as permitted sender) client-ip=78.46.105.101; envelope-from=seabios-bounces@seabios.org; helo=coreboot.org; Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of seabios.org designates 78.46.105.101 as permitted sender) smtp.mailfrom=seabios-bounces@seabios.org Return-Path: Received: from coreboot.org (mail.coreboot.org [78.46.105.101]) by mx.zohomail.com with SMTPS id 1783971500356589.9332814775003; Mon, 13 Jul 2026 12:38:20 -0700 (PDT) Received: from authenticated-user (PRIMARY_HOSTNAME [PUBLIC_IP]) by coreboot.org (Postfix) with ESMTPA id 4496654EB8F; Mon, 13 Jul 2026 19:38:18 +0000 (UTC) Received: from authenticated-user (PRIMARY_HOSTNAME [PUBLIC_IP]) (nx83.node02.secure-mailgate.com [192.162.87.83]) by coreboot.org (Postfix) with ESMTP id DECA854E4EF for ; Mon, 13 Jul 2026 19:37:55 +0000 (UTC) Received: from authenticated-user (PRIMARY_HOSTNAME [PUBLIC_IP]) by node02.secure-mailgate.com with esmtps (TLS1.2) tls TLS_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.94.2) (envelope-from ) id 1wjMTQ-007e6X-Ed; Mon, 13 Jul 2026 21:37:53 +0200 Received: from authenticated-user (PRIMARY_HOSTNAME [PUBLIC_IP]) (Authenticated sender: christian@quante.one) by web279.dogado.net (Postfix) with ESMTPSA id BFCEB282A6B; Mon, 13 Jul 2026 21:37:51 +0200 (CEST) X-SecureMailgate-Identity: christian@quante.one;web279.dogado.net DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=quante.one; s=cloudpit; t=1783971472; bh=bGEY7lLIkXew+3/eTKHpMc8l6rz2hVl67UfKsJpIOrI=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=BiPQL824pJwwGhlf3afVZ/Z4C1caZLbhAus2kfDpJHs0tCMVoeG1JENH+eqMNKdBM bvG2hD6kkUo9grojHk6fy1ZI+pns1dxQ98LmxUCR9wB74nDlPy9m2r4iOnJpcINQSx 0YFiowXF0pikAX9mC6zZcPArUZ3yKJOkEoI2rXx4= X-SecureMailgate-Identity: christian@quante.one;web279.dogado.net From: Christian Quante To: seabios@seabios.org Date: Mon, 13 Jul 2026 21:35:27 +0200 Message-ID: <20260713193529.13004-2-christian@quante.one> In-Reply-To: <20260713193529.13004-1-christian@quante.one> References: <20260710131853.59862-1-christian@quante.one> <20260713193529.13004-1-christian@quante.one> MIME-Version: 1.0 X-PPP-Message-ID: <178397147224.1149777.11886801696350328806@web279.dogado.net> X-PPP-Vhost: quante.one X-SecureMailgate-Domain: web279.dogado.net X-SecureMailgate-Username: 31.47.255.59 X-SecureMailgate-Outgoing-Class: ham X-SecureMailgate-Outgoing-Evidence: Combined (0.03) X-Recommended-Action: accept X-Filter-ID: 9kzQTOBWQUFZTohSKvQbgI7ZDo5ubYELi59AwcWUnuWE6JF3x6rfpKfnD4hg738ZQl26UJZzup73 7C/QM//7giu2SmbhJN1U9FKs8X3+Nt1HOctZ5X+40a9IXddeG3M38JQYgcgjsac3uQcQdCX4ROfH zJ6mVE7ewsipSVIfs4ZWQfxYxFliexRUNrk7BtJ3S5+h1uiHzk/Rfxfh461YLyu3RZI1CD15pCOE 1vk99RPdEorPfEdXy94XZtjluxSTdOtYechJ/ikE1WgRg4cS6A6B6pTstltS07kaQJ8I9sYal0h7 43VOpKNY+4MjijihZK0EMmf3P50Ajf/tIX00Fuu2beRqilmjgQ6jA3UwYgnsj5xBssn0tIIHA3aH QzCq60l8YRpcxCjc2gcMa3Btw+OTpzU5Yy8oe2B0dJEHaEmA56XdPYm3xWZdE/EXCl5gDnvd4gRp ujraUEUfoKObmOu2raPunNKcwzm+dw4UpUCm2a3kP4TQGBPHghFkFxouUaYdjR+R3ZWRuox4844j AQbbxw9GNmy7K0lh0AXXFT3Pt46BhqiWcJ5qC0lG/2bs31/E3ahF5MMcDI7KdpjQKYY3HuMkbxpI KUQzfI6KxMWMxCeGr8LQquCYCjDePNNRIK/1NH5THMtlYvyHAYGOGuNMcrA92rKKXukX8XVo3f3/ JxUPJR+t5nhiYvfdCx1TkJ59fZW/mXUxWFsIstcuEAdT+LecEOC2wM8oSA+doCRGFMseaZh0vTl+ VwqQAF53B5hQ6nsDvccjqgmDvD9Wh/kSAu/CYcJOqIre05CguE1tP1nlenXa+GbjPeTU+gvuQJaj R4vlXL102p8rhkGjhZ9ohu/ssAude8XOICjh4eA+JR6TZt6YzE5PhY7dbccpibLJp6LroPqK4pWA eyFKR6XCaxMc6jly+EEBzFhEQhOL+GAm1jM1Gi5QnHfxs2W0jRceOK+WImaKCXu2JJh6AFz1pRXW hjh9fdbl44I0Df2BjPaKNO06KKJk593MMhOyNrM+RC/lTZnd7uJwgfOEv3poOl5JC4PE6jS4VuAW zIVI5e+cwgZZ/3rN1z/ww35mJXkVVPSc006zUgMG2KMDF/AZcJMXyXxXG5oZWE62IcEA7tYVzdXe EJDLX5L5N+U6PvwWy5OBXdqEG7TBtqXgwifoiMstty+iVRobalIoISR2PyW5cLuSbbpC1c/2zTYs X-Report-Abuse-To: spam@node04.secure-mailgate.com X-Complaints-To: abuse@node01.secure-mailgate.com Message-ID-Hash: 7YZSOR5ZYYGZRHKUH6BWBN6BUQFZTLCA X-Message-ID-Hash: 7YZSOR5ZYYGZRHKUH6BWBN6BUQFZTLCA X-MailFrom: christian@quante.one X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; loop; banned-address; header-match-seabios.seabios.org-0; header-match-seabios.seabios.org-1; emergency; member-moderation; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header Cc: Gerd Hoffmann , Christian Quante X-Mailman-Version: 3.3.11b1 Precedence: list Subject: [SeaBIOS] [PATCH v2 1/3] floppy: add floppy_drive_seek() List-Id: SeaBIOS mailing list Archived-At: List-Archive: List-Help: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: Content-Transfer-Encoding: quoted-printable Authentication-Results: coreboot.org; auth=pass smtp.auth=mailman@coreboot.org smtp.mailfrom=seabios-bounces@seabios.org X-Spamd-Bar: --- X-ZohoMail-DKIM: fail (Header signature does not verify) X-ZM-MESSAGEID: 1783971503378158500 Content-Type: text/plain; charset="utf-8" Wrap the SEEK command and the BDA bookkeeping that goes with it, the way floppy_drive_recal() already does for RECALIBRATE. No functional change; the next patch gains a second caller. Signed-off-by: Christian Quante --- src/hw/floppy.c | 24 +++++++++++++++++------- 1 file changed, 17 insertions(+), 7 deletions(-) diff --git a/src/hw/floppy.c b/src/hw/floppy.c index 9e6647d4..8f053fe3 100644 --- a/src/hw/floppy.c +++ b/src/hw/floppy.c @@ -416,6 +416,21 @@ floppy_drive_recal(u8 floppyid) return DISK_RET_SUCCESS; } =20 +static int +floppy_drive_seek(u8 floppyid, u8 cylinder) +{ + dprintf(2, "Floppy_drive_seek %d to %d\n", floppyid, cylinder); + u8 param[2]; + param[0] =3D floppyid; + param[1] =3D cylinder; + int ret =3D floppy_drive_pio(floppyid, FC_SEEK, param); + if (ret) + return ret; + + SET_BDA(floppy_track[floppyid], cylinder); + return DISK_RET_SUCCESS; +} + static int floppy_drive_specify(void) { @@ -511,15 +526,10 @@ floppy_prep(struct drive_s *drive_gf, u8 cylinder) } =20 // Seek to cylinder if needed. - u8 lastcyl =3D GET_BDA(floppy_track[floppyid]); - if (cylinder !=3D lastcyl) { - u8 param[2]; - param[0] =3D floppyid; - param[1] =3D cylinder; - int ret =3D floppy_drive_pio(floppyid, FC_SEEK, param); + if (cylinder !=3D GET_BDA(floppy_track[floppyid])) { + int ret =3D floppy_drive_seek(floppyid, cylinder); if (ret) return ret; - SET_BDA(floppy_track[floppyid], cylinder); } =20 return DISK_RET_SUCCESS; --=20 2.53.0 _______________________________________________ SeaBIOS mailing list -- seabios@seabios.org To unsubscribe send an email to seabios-leave@seabios.org