From: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
To: linux-ide@vger.kernel.org
Cc: linux-kernel@vger.kernel.org
Subject: [PATCH 08/50] aec62xx: convert to use ->host_priv
Date: Sun, 06 Jul 2008 19:20:18 +0200 [thread overview]
Message-ID: <48710236.1ade660a.3458.6279@mx.google.com> (raw)
In-Reply-To: 20080706172010.559358957@bzolnier@gmail.com
[-- Attachment #1: aec62xx-convert-to-use-host_priv.patch --]
[-- Type: text/plain, Size: 4174 bytes --]
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
---
drivers/ide/pci/aec62xx.c | 32 ++++++++++++++++----------------
1 file changed, 16 insertions(+), 16 deletions(-)
Index: b/drivers/ide/pci/aec62xx.c
===================================================================
--- a/drivers/ide/pci/aec62xx.c
+++ b/drivers/ide/pci/aec62xx.c
@@ -59,10 +59,6 @@ static const struct chipset_bus_clock_li
{ 0, 0x00, 0x00 }
};
-#define BUSCLOCK(D) \
- ((struct chipset_bus_clock_list_entry *) pci_get_drvdata((D)))
-
-
/*
* TO DO: active tuning and correction of cards without a bios.
*/
@@ -88,6 +84,8 @@ static void aec6210_set_mode(ide_drive_t
{
ide_hwif_t *hwif = HWIF(drive);
struct pci_dev *dev = to_pci_dev(hwif->dev);
+ struct ide_host *host = pci_get_drvdata(dev);
+ struct chipset_bus_clock_list_entry *bus_clock = host->host_priv;
u16 d_conf = 0;
u8 ultra = 0, ultra_conf = 0;
u8 tmp0 = 0, tmp1 = 0, tmp2 = 0;
@@ -96,7 +94,7 @@ static void aec6210_set_mode(ide_drive_t
local_irq_save(flags);
/* 0x40|(2*drive->dn): Active, 0x41|(2*drive->dn): Recovery */
pci_read_config_word(dev, 0x40|(2*drive->dn), &d_conf);
- tmp0 = pci_bus_clock_list(speed, BUSCLOCK(dev));
+ tmp0 = pci_bus_clock_list(speed, bus_clock);
d_conf = ((tmp0 & 0xf0) << 4) | (tmp0 & 0xf);
pci_write_config_word(dev, 0x40|(2*drive->dn), d_conf);
@@ -104,7 +102,7 @@ static void aec6210_set_mode(ide_drive_t
tmp2 = 0x00;
pci_read_config_byte(dev, 0x54, &ultra);
tmp1 = ((0x00 << (2*drive->dn)) | (ultra & ~(3 << (2*drive->dn))));
- ultra_conf = pci_bus_clock_list_ultra(speed, BUSCLOCK(dev));
+ ultra_conf = pci_bus_clock_list_ultra(speed, bus_clock);
tmp2 = ((ultra_conf << (2*drive->dn)) | (tmp1 & ~(3 << (2*drive->dn))));
pci_write_config_byte(dev, 0x54, tmp2);
local_irq_restore(flags);
@@ -114,6 +112,8 @@ static void aec6260_set_mode(ide_drive_t
{
ide_hwif_t *hwif = HWIF(drive);
struct pci_dev *dev = to_pci_dev(hwif->dev);
+ struct ide_host *host = pci_get_drvdata(dev);
+ struct chipset_bus_clock_list_entry *bus_clock = host->host_priv;
u8 unit = (drive->select.b.unit & 0x01);
u8 tmp1 = 0, tmp2 = 0;
u8 ultra = 0, drive_conf = 0, ultra_conf = 0;
@@ -122,12 +122,12 @@ static void aec6260_set_mode(ide_drive_t
local_irq_save(flags);
/* high 4-bits: Active, low 4-bits: Recovery */
pci_read_config_byte(dev, 0x40|drive->dn, &drive_conf);
- drive_conf = pci_bus_clock_list(speed, BUSCLOCK(dev));
+ drive_conf = pci_bus_clock_list(speed, bus_clock);
pci_write_config_byte(dev, 0x40|drive->dn, drive_conf);
pci_read_config_byte(dev, (0x44|hwif->channel), &ultra);
tmp1 = ((0x00 << (4*unit)) | (ultra & ~(7 << (4*unit))));
- ultra_conf = pci_bus_clock_list_ultra(speed, BUSCLOCK(dev));
+ ultra_conf = pci_bus_clock_list_ultra(speed, bus_clock);
tmp2 = ((ultra_conf << (4*unit)) | (tmp1 & ~(7 << (4*unit))));
pci_write_config_byte(dev, (0x44|hwif->channel), tmp2);
local_irq_restore(flags);
@@ -140,13 +140,6 @@ static void aec_set_pio_mode(ide_drive_t
static unsigned int __devinit init_chipset_aec62xx(struct pci_dev *dev, const char *name)
{
- int bus_speed = ide_pci_clk ? ide_pci_clk : 33;
-
- if (bus_speed <= 33)
- pci_set_drvdata(dev, (void *) aec6xxx_33_base);
- else
- pci_set_drvdata(dev, (void *) aec6xxx_34_base);
-
/* These are necessary to get AEC6280 Macintosh cards to work */
if ((dev->device == PCI_DEVICE_ID_ARTOP_ATP865) ||
(dev->device == PCI_DEVICE_ID_ARTOP_ATP865R)) {
@@ -254,10 +247,17 @@ static const struct ide_port_info aec62x
static int __devinit aec62xx_init_one(struct pci_dev *dev, const struct pci_device_id *id)
{
+ const struct chipset_bus_clock_list_entry *bus_clock;
struct ide_port_info d;
u8 idx = id->driver_data;
+ int bus_speed = ide_pci_clk ? ide_pci_clk : 33;
int err;
+ if (bus_speed <= 33)
+ bus_clock = aec6xxx_33_base;
+ else
+ bus_clock = aec6xxx_34_base;
+
err = pci_enable_device(dev);
if (err)
return err;
@@ -273,7 +273,7 @@ static int __devinit aec62xx_init_one(st
}
}
- err = ide_pci_init_one(dev, &d, NULL);
+ err = ide_pci_init_one(dev, &d, (void *)bus_clock);
if (err)
pci_disable_device(dev);
--
next prev parent reply other threads:[~2008-07-06 17:34 UTC|newest]
Thread overview: 50+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <20080706172010.559358957@bzolnier@gmail.com>
2008-07-06 17:20 ` [PATCH 01/50] it8213: fix return value in it8213_init_one() Bartlomiej Zolnierkiewicz
2008-07-06 17:20 ` [PATCH 02/50] ide: always call ->init_chipset method in do_ide_setup_pci_device() Bartlomiej Zolnierkiewicz
2008-07-06 17:20 ` [PATCH 03/50] ide: respect dev->irq in do_ide_setup_pci_device() also if tried_config Bartlomiej Zolnierkiewicz
2008-07-06 17:20 ` [PATCH 04/50] ide: move ide_setup_pci_controller() call to ide_setup_pci_device() Bartlomiej Zolnierkiewicz
2008-07-06 17:20 ` [PATCH 05/50] ide: call ide_pci_setup_ports() before do_ide_setup_pci_device() Bartlomiej Zolnierkiewicz
2008-07-06 17:20 ` [PATCH 06/50] ide: add ->dev and ->host_priv fields to struct ide_host Bartlomiej Zolnierkiewicz
2008-07-06 17:20 ` [PATCH 07/50] ide: add ide_device_{get,put}() helpers Bartlomiej Zolnierkiewicz
2008-07-06 17:20 ` Bartlomiej Zolnierkiewicz [this message]
2008-07-06 17:20 ` [PATCH 09/50] hpt366: convert to use ->host_priv Bartlomiej Zolnierkiewicz
2008-07-06 17:20 ` [PATCH 10/50] it821x: " Bartlomiej Zolnierkiewicz
2008-07-06 17:20 ` [PATCH 11/50] sc1200: " Bartlomiej Zolnierkiewicz
2008-07-06 17:20 ` [PATCH 12/50] siimage: " Bartlomiej Zolnierkiewicz
2008-07-06 17:20 ` [PATCH 13/50] via82cxxx: " Bartlomiej Zolnierkiewicz
2008-07-06 17:20 ` [PATCH 14/50] tc86c001: remove ->init_chipset method Bartlomiej Zolnierkiewicz
2008-07-06 17:20 ` [PATCH 15/50] amd74xx: cleanup " Bartlomiej Zolnierkiewicz
2008-07-06 17:20 ` [PATCH 16/50] cmd64x: " Bartlomiej Zolnierkiewicz
2008-07-06 17:20 ` [PATCH 17/50] via82cxxx: " Bartlomiej Zolnierkiewicz
2008-07-06 17:20 ` [PATCH 18/50] ide: add ide_pci_remove() helper Bartlomiej Zolnierkiewicz
2008-07-06 17:20 ` [PATCH 19/50] aec62xx: add ->remove method and module_exit() Bartlomiej Zolnierkiewicz
2008-07-06 17:20 ` [PATCH 20/50] alim15x3: " Bartlomiej Zolnierkiewicz
2008-07-06 17:20 ` [PATCH 21/50] amd74xx: " Bartlomiej Zolnierkiewicz
2008-07-06 17:20 ` [PATCH 22/50] atiixp: " Bartlomiej Zolnierkiewicz
2008-07-06 17:20 ` [PATCH 23/50] cmd64x: " Bartlomiej Zolnierkiewicz
2008-07-06 17:20 ` [PATCH 24/50] cs5530: " Bartlomiej Zolnierkiewicz
2008-07-06 17:20 ` [PATCH 25/50] cs5535: " Bartlomiej Zolnierkiewicz
2008-07-06 17:20 ` [PATCH 26/50] cy82c693: " Bartlomiej Zolnierkiewicz
2008-07-06 17:20 ` [PATCH 27/50] ide/pci/generic: " Bartlomiej Zolnierkiewicz
2008-07-06 17:20 ` [PATCH 28/50] hpt34x: " Bartlomiej Zolnierkiewicz
2008-07-06 17:20 ` [PATCH 29/50] hpt366: " Bartlomiej Zolnierkiewicz
2008-07-06 17:20 ` [PATCH 30/50] it8213: " Bartlomiej Zolnierkiewicz
2008-07-06 17:20 ` [PATCH 31/50] it821x: " Bartlomiej Zolnierkiewicz
2008-07-06 17:20 ` [PATCH 32/50] jmicron: " Bartlomiej Zolnierkiewicz
2008-07-06 17:20 ` [PATCH 33/50] ns87415: " Bartlomiej Zolnierkiewicz
2008-07-06 17:20 ` [PATCH 34/50] opti621: " Bartlomiej Zolnierkiewicz
2008-07-06 17:20 ` [PATCH 35/50] pdc202xx_new: " Bartlomiej Zolnierkiewicz
2008-07-06 17:20 ` [PATCH 36/50] pdc202xx_old: " Bartlomiej Zolnierkiewicz
2008-07-06 17:20 ` [PATCH 37/50] piix: " Bartlomiej Zolnierkiewicz
2008-07-06 17:20 ` [PATCH 38/50] rz1000: " Bartlomiej Zolnierkiewicz
2008-07-06 17:20 ` [PATCH 39/50] sc1200: " Bartlomiej Zolnierkiewicz
2008-07-06 17:20 ` [PATCH 40/50] serverworks: " Bartlomiej Zolnierkiewicz
2008-07-06 17:20 ` [PATCH 41/50] siimage: " Bartlomiej Zolnierkiewicz
2008-07-06 17:20 ` [PATCH 42/50] sis5513: " Bartlomiej Zolnierkiewicz
2008-07-06 17:20 ` [PATCH 43/50] sl82c105: " Bartlomiej Zolnierkiewicz
2008-07-06 17:20 ` [PATCH 44/50] slc90e66: " Bartlomiej Zolnierkiewicz
2008-07-06 17:20 ` [PATCH 45/50] tc86c001: " Bartlomiej Zolnierkiewicz
2008-07-06 17:20 ` [PATCH 46/50] triflex: " Bartlomiej Zolnierkiewicz
2008-07-06 17:20 ` [PATCH 47/50] trm290: " Bartlomiej Zolnierkiewicz
2008-07-06 17:20 ` [PATCH 48/50] via82cxxx: " Bartlomiej Zolnierkiewicz
2008-07-06 17:20 ` [PATCH 49/50] icside: add module_exit() Bartlomiej Zolnierkiewicz
2008-07-06 17:21 ` [PATCH 50/50] rapide: " Bartlomiej Zolnierkiewicz
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=48710236.1ade660a.3458.6279@mx.google.com \
--to=bzolnier@gmail.com \
--cc=linux-ide@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).