lkml.org 
[lkml]   [2021]   [Dec]   [27]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[RFC 29/32] firmware: dmi-sysfs: handle HAS_IOPORT dependencies
    Date
    In a future patch HAS_IOPORT=n will result in inb()/outb() and friends
    not being declared. We thus need to guard sections of code calling them
    as alternative access methods.

    Co-developed-by: Arnd Bergmann <arnd@kernel.org>
    Signed-off-by: Arnd Bergmann <arnd@kernel.org>
    Signed-off-by: Niklas Schnelle <schnelle@linux.ibm.com>
    ---
    drivers/firmware/dmi-sysfs.c | 4 ++++
    1 file changed, 4 insertions(+)

    diff --git a/drivers/firmware/dmi-sysfs.c b/drivers/firmware/dmi-sysfs.c
    index 8b8127fa8955..cc7380b3c670 100644
    --- a/drivers/firmware/dmi-sysfs.c
    +++ b/drivers/firmware/dmi-sysfs.c
    @@ -310,6 +310,7 @@ static struct kobj_type dmi_system_event_log_ktype = {
    .default_attrs = dmi_sysfs_sel_attrs,
    };

    +#ifdef CONFIG_HAS_IOPORT
    typedef u8 (*sel_io_reader)(const struct dmi_system_event_log *sel,
    loff_t offset);

    @@ -374,6 +375,7 @@ static ssize_t dmi_sel_raw_read_io(struct dmi_sysfs_entry *entry,

    return wrote;
    }
    +#endif

    static ssize_t dmi_sel_raw_read_phys32(struct dmi_sysfs_entry *entry,
    const struct dmi_system_event_log *sel,
    @@ -409,11 +411,13 @@ static ssize_t dmi_sel_raw_read_helper(struct dmi_sysfs_entry *entry,
    memcpy(&sel, dh, sizeof(sel));

    switch (sel.access_method) {
    +#ifdef CONFIG_HAS_IOPORT
    case DMI_SEL_ACCESS_METHOD_IO8:
    case DMI_SEL_ACCESS_METHOD_IO2x8:
    case DMI_SEL_ACCESS_METHOD_IO16:
    return dmi_sel_raw_read_io(entry, &sel, state->buf,
    state->pos, state->count);
    +#endif
    case DMI_SEL_ACCESS_METHOD_PHYS32:
    return dmi_sel_raw_read_phys32(entry, &sel, state->buf,
    state->pos, state->count);
    --
    2.32.0
    \
     
     \ /
      Last update: 2021-12-27 17:45    [W:4.109 / U:0.572 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site