From mboxrd@z Thu Jan 1 00:00:00 1970 From: Sergei Shtylyov Subject: Re: [PATCH 13/18] ide: use ->tf_load in SELECT_DRIVE() Date: Tue, 17 Feb 2009 15:23:00 +0300 Message-ID: <499AAC24.70200@ru.mvista.com> References: <20080620213323.13202.71450.sendpatchset@localhost.localdomain> <20080620213451.13202.12671.sendpatchset@localhost.localdomain> <49987A37.9000300@ru.mvista.com> <4998AE87.3020502@ru.mvista.com> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Return-path: Received: from h155.mvista.com ([63.81.120.155]:22235 "EHLO imap.sh.mvista.com" rhost-flags-OK-FAIL-OK-FAIL) by vger.kernel.org with ESMTP id S1751539AbZBQMXG (ORCPT ); Tue, 17 Feb 2009 07:23:06 -0500 In-Reply-To: <4998AE87.3020502@ru.mvista.com> Sender: linux-ide-owner@vger.kernel.org List-Id: linux-ide@vger.kernel.org To: Bartlomiej Zolnierkiewicz Cc: linux-ide@vger.kernel.org, linux-kernel@vger.kernel.org Hello, I wrote: >>> There should be no functional changes caused by this patch. >>> Signed-off-by: Bartlomiej Zolnierkiewicz >>> Index: b/drivers/ide/ide-iops.c >>> =================================================================== >>> --- a/drivers/ide/ide-iops.c >>> +++ b/drivers/ide/ide-iops.c >>> @@ -88,11 +88,15 @@ void SELECT_DRIVE (ide_drive_t *drive) >>> { >>> ide_hwif_t *hwif = drive->hwif; >>> const struct ide_port_ops *port_ops = hwif->port_ops; >>> + ide_task_t task; >>> >>> if (port_ops && port_ops->selectproc) >>> port_ops->selectproc(drive); >>> >>> - hwif->OUTB(drive->select.all, hwif->io_ports.device_addr); >>> + memset(&task, 0, sizeof(task)); >>> + task.tf_flags = IDE_TFLAG_OUT_DEVICE; >>> + >>> + drive->hwif->tf_load(drive, &task); >> >> This actually doesn't seem like a bright idea to me, considering >> that this gets called when starting every request. How will you look >> at me adding the transport method for writing this register? :-) > Convert SELECT_DRIVE() to use ->tf_load instead of ->OUTB. > > OTOH, adding such a "backdoor" to the taskfile doesn't seem very > consistent... ... which didn't prevent libata from having such backdoor though, in the form of dev_select() method. MBR, Sergei