lkml.org 
[lkml]   [2008]   [Aug]   [3]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Date
    SubjectRe: [PATCH 2/2] ide-generic: handle probing of legacy io-ports
    From
    On Sun, Aug 03, 2008 at 04:11:10PM +0200, Bartlomiej Zolnierkiewicz wrote:

    [.. ]

    > There are still some issues to address though.

    Issues addressed. Here's v2:

    ---
    From: Borislav Petkov <petkovbb@gmail.com>
    Date: Sun, 3 Aug 2008 09:28:53 +0200
    Subject: [PATCH] ide-generic: handle probing of legacy io-ports v2

    Avoid probing the io-ports in case an IDE PCI controller is present and it uses
    the legacy iobases. If we still want to enforce the probing, we do

    ide_generic.probe_mask=0x3f

    on the kernel command line.

    Signed-off-by: Borislav Petkov <petkovbb@gmail.com>
    ---
    drivers/ide/ide-generic.c | 21 +++++++++++++++++----
    1 files changed, 17 insertions(+), 4 deletions(-)

    diff --git a/drivers/ide/ide-generic.c b/drivers/ide/ide-generic.c
    index 8fe8b5b..1beb51b 100644
    --- a/drivers/ide/ide-generic.c
    +++ b/drivers/ide/ide-generic.c
    @@ -27,7 +27,7 @@

    #define DRV_NAME "ide_generic"

    -static int probe_mask = 0x03;
    +static int probe_mask;
    module_param(probe_mask, int, 0);
    MODULE_PARM_DESC(probe_mask, "probe mask for legacy ISA IDE ports");

    @@ -105,14 +105,27 @@ static int __init ide_generic_init(void)
    hw_regs_t hw[MAX_HWIFS], *hws[MAX_HWIFS];
    struct ide_host *host;
    unsigned long io_addr;
    - int i, rc;
    + int i, rc, dummy, primary = 0, secondary = 0;

    #ifdef CONFIG_MIPS
    if (!ide_probe_legacy())
    return -ENODEV;
    #endif
    - printk(KERN_INFO DRV_NAME ": please use \"probe_mask=0x3f\" module "
    - "parameter for probing all legacy ISA IDE ports\n");
    + ata_legacy_check_iobases(&primary, &secondary, &dummy);
    +
    + if (!probe_mask) {
    + printk(KERN_INFO DRV_NAME ": please use \"probe_mask=0x3f\" "
    + "module parameter for probing all legacy ISA IDE ports\n");
    +
    + if (primary == 0)
    + probe_mask |= 0x1;
    +
    + if (secondary == 0)
    + probe_mask |= 0x2;
    + } else {
    + printk(KERN_WARNING "%s: enforcing probing of io ports upon "
    + "user request.\n", DRV_NAME);
    + }

    memset(hws, 0, sizeof(hw_regs_t *) * MAX_HWIFS);

    --
    1.5.5.4
    --
    Regards/Gruss,
    Boris.


    \
     
     \ /
      Last update: 2008-08-03 17:11    [W:3.255 / U:0.076 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site