lkml.org 
[lkml]   [2016]   [Nov]   [20]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 2/5] usb: dwc2: fix dwc2_get_device_property for u8 and u16
    Date
    According to the Devicetree ePAPR [1] the datatypes u8 and u16 are
    not defined. So using device_property_read_u16() would result in
    a partial read of a 32-bit big-endian integer which is not intended.
    So we better read the complete 32-bit value. This fixes a regression
    on bcm2835 where the values for g-rx-fifo-size and g-np-tx-fifo-size
    always read as zero:

    Invalid value 0 for param g-rx-fifo-size
    Invalid value 0 for param g-np-tx-fifo-size

    [1] - http://elinux.org/images/c/cf/Power_ePAPR_APPROVED_v1.1.pdf

    Fixes: 05ee799f202 ("usb: dwc2: Move gadget settings into core_params")
    Signed-off-by: Stefan Wahren <stefan.wahren@i2se.com>
    ---
    drivers/usb/dwc2/params.c | 12 ------------
    1 file changed, 12 deletions(-)

    diff --git a/drivers/usb/dwc2/params.c b/drivers/usb/dwc2/params.c
    index fd5f7f8..2c7b624 100644
    --- a/drivers/usb/dwc2/params.c
    +++ b/drivers/usb/dwc2/params.c
    @@ -247,8 +247,6 @@
    static void dwc2_get_device_property(struct dwc2_hsotg *hsotg,
    char *property, u8 size, u64 *value)
    {
    - u8 val8;
    - u16 val16;
    u32 val32;

    switch (size) {
    @@ -256,17 +254,7 @@ static void dwc2_get_device_property(struct dwc2_hsotg *hsotg,
    *value = device_property_read_bool(hsotg->dev, property);
    break;
    case 1:
    - if (device_property_read_u8(hsotg->dev, property, &val8))
    - return;
    -
    - *value = val8;
    - break;
    case 2:
    - if (device_property_read_u16(hsotg->dev, property, &val16))
    - return;
    -
    - *value = val16;
    - break;
    case 4:
    if (device_property_read_u32(hsotg->dev, property, &val32))
    return;
    --
    1.7.9.5
    \
     
     \ /
      Last update: 2016-11-20 22:27    [W:2.205 / U:0.024 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site