lkml.org 
[lkml]   [2012]   [Jan]   [31]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 01/14] Make %pR could handle bus resource with domain
    Date
    So could use %pR for busn_res with domain nr in start/end

    Signed-off-by: Yinghai Lu <yinghai@kernel.org>
    ---
    lib/vsprintf.c | 28 ++++++++++++++++++++++++----
    1 files changed, 24 insertions(+), 4 deletions(-)

    diff --git a/lib/vsprintf.c b/lib/vsprintf.c
    index 8e75003..b34eeea 100644
    --- a/lib/vsprintf.c
    +++ b/lib/vsprintf.c
    @@ -451,6 +451,12 @@ char *resource_string(char *buf, char *end, struct resource *res,
    .precision = -1,
    .flags = SPECIAL | SMALL | ZEROPAD,
    };
    + static const struct printf_spec domain_spec = {
    + .base = 16,
    + .field_width = 4,
    + .precision = -1,
    + .flags = SMALL | ZEROPAD,
    + };
    static const struct printf_spec bus_spec = {
    .base = 16,
    .field_width = 2,
    @@ -507,11 +513,25 @@ char *resource_string(char *buf, char *end, struct resource *res,
    specp = &mem_spec;
    decode = 0;
    }
    - p = number(p, pend, res->start, *specp);
    - if (res->start != res->end) {
    - *p++ = '-';
    - p = number(p, pend, res->end, *specp);
    +
    + if (res->flags & IORESOURCE_BUS && res->end >> 8) {
    + p = number(p, pend, res->start >> 8, domain_spec);
    + *p++ = ':';
    + p = number(p, pend, res->start & 0xff, *specp);
    + if (res->start != res->end) {
    + *p++ = '-';
    + p = number(p, pend, res->end >> 8, domain_spec);
    + *p++ = ':';
    + p = number(p, pend, res->end & 0xff, *specp);
    + }
    + } else {
    + p = number(p, pend, res->start, *specp);
    + if (res->start != res->end) {
    + *p++ = '-';
    + p = number(p, pend, res->end, *specp);
    + }
    }
    +
    if (decode) {
    if (res->flags & IORESOURCE_MEM_64)
    p = string(p, pend, " 64bit", str_spec);
    --
    1.7.7


    \
     
     \ /
      Last update: 2012-01-31 08:47    [W:0.022 / U:2.456 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site