• P
    spi: Force CS_HIGH if GPIO descriptors are used · 893e457c
    Phil Elwell 提交于
    raspberrypi inclusion
    category: feature
    bugzilla: 50432
    
    --------------------------------
    
    Commit f3186dd8 ("spi: Optionally use GPIO descriptors for CS GPIOs")
    amended of_spi_parse_dt() to always set SPI_CS_HIGH for SPI slaves whose
    Chip Select is defined by a "cs-gpios" devicetree property.
    
    This change breaks drivers whose probe functions set the mode field of
    the spi_device because in doing so they clear the SPI_CS_HIGH flag.
    
    Fix by setting SPI_CS_HIGH in spi_setup (under the same conditions as
    in of_spi_parse_dt()).
    
    See also: 83b2a8fe43bd ("spi: spidev: Fix CS polarity if GPIO descriptors are used")
    
    Fixes: f3186dd8 ("spi: Optionally use GPIO descriptors for CS GPIOs")
    Signed-off-by: NPhil Elwell <phil@raspberrypi.com>
    
    SQUASH: spi: Demote SPI_CS_HIGH warning to KERN_DEBUG
    
    This warning is unavoidable from a client's perspective and
    doesn't indicate anything wrong (just surprising).
    
    SQUASH with "spi: use_gpio_descriptor fixup moved to spi_setup"
    Signed-off-by: NPhil Elwell <phil@raspberrypi.com>
    Signed-off-by: NFang Yafen <yafen@iscas.ac.cn>
    Signed-off-by: NZheng Zengkai <zhengzengkai@huawei.com>
    893e457c
spi.c 113.2 KB