Re: [PATCH v2 2/4] hpet: pass physical address, not entire hpet_data, to hpet_is_known()
From: Venkatesh Pallipadi
Date: Thu Mar 18 2010 - 15:25:35 EST
Acked-by: Venkatesh Pallipadi <venki@xxxxxxxxxx>
On Thu, Mar 18, 2010 at 10:59 AM, Bjorn Helgaas <bjorn.helgaas@xxxxxx> wrote:
>
> No functional change; hpet_is_known() only needs the physical address,
> so supplying that instead of the whole struct hpet_data makes the callers
> a little simpler.
>
> Signed-off-by: Bjorn Helgaas <bjorn.helgaas@xxxxxx>
> Acked-by: Clemens Ladisch <clemens@xxxxxxxxxx>
> ---
>
> drivers/char/hpet.c | 14 +++++---------
> 1 files changed, 5 insertions(+), 9 deletions(-)
>
>
> diff --git a/drivers/char/hpet.c b/drivers/char/hpet.c
> index 5cb05ed..d132fef 100644
> --- a/drivers/char/hpet.c
> +++ b/drivers/char/hpet.c
> @@ -662,12 +662,12 @@ static const struct file_operations hpet_fops = {
> .mmap = hpet_mmap,
> };
>
> -static int hpet_is_known(struct hpet_data *hdp)
> +static int hpet_is_known(unsigned long phys_address)
> {
> struct hpets *hpetp;
>
> for (hpetp = hpets; hpetp; hpetp = hpetp->hp_next)
> - if (hpetp->hp_hpet_phys == hdp->hd_phys_address)
> + if (hpetp->hp_hpet_phys == phys_address)
> return 1;
>
> return 0;
> @@ -788,7 +788,7 @@ int hpet_alloc(struct hpet_data *hdp)
> * If platform dependent code has allocated the hpet that
> * ACPI has also reported, then we catch it here.
> */
> - if (hpet_is_known(hdp)) {
> + if (hpet_is_known(hdp->hd_phys_address)) {
> printk(KERN_DEBUG "%s: duplicate HPET ignored\n",
> __func__);
> return 0;
> @@ -909,12 +909,7 @@ static int hpet_pnp_add(struct pnp_dev *dev, const struct pnp_device_id *dev_id)
> memset(&data, 0, sizeof(data));
>
> mem = pnp_get_resource(dev, IORESOURCE_MEM, 0);
> - if (!mem)
> - return -ENODEV;
> -
> - data.hd_phys_address = mem->start;
> -
> - if (hpet_is_known(&data))
> + if (!mem || hpet_is_known(mem->start))
> return -ENODEV;
>
> i = 0;
> @@ -926,6 +921,7 @@ static int hpet_pnp_add(struct pnp_dev *dev, const struct pnp_device_id *dev_id)
> if (!data.hd_nirqs)
> return -ENODEV;
>
> + data.hd_phys_address = mem->start;
> data.hd_address = ioremap(mem->start, resource_size(mem));
>
> return hpet_alloc(&data);
>
>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/