1. 15 2月, 2017 1 次提交
    • H
      spi: lantiq-ssc: add support for Lantiq SSC SPI controller · 17f84b79
      Hauke Mehrtens 提交于
      This driver supports the Lantiq SSC SPI controller in master
      mode. This controller is found on Intel (former Lantiq) SoCs like
      the Danube, Falcon, xRX200, xRX300.
      
      The hardware uses two hardware FIFOs one for received and one for
      transferred bytes. When the driver writes data into the transmit FIFO
      the complete word is taken from the FIFO into a shift register. The
      data from this shift register is then written to the wire. This driver
      uses the interrupts signaling the status of the FIFOs and not the shift
      register. It is also possible to use the interrupts for the shift
      register, but they will send a signal after every word. When using the
      interrupts for the shift register we get a signal when the last word is
      written into the shift register and not when it is written to the wire.
      After all FIFOs are empty the driver busy waits till the hardware is
      not busy any more and returns the transfer status.
      Signed-off-by: NDaniel Schwierzeck <daniel.schwierzeck@gmail.com>
      Signed-off-by: NHauke Mehrtens <hauke@hauke-m.de>
      Signed-off-by: NMark Brown <broonie@kernel.org>
      17f84b79
  2. 10 12月, 2016 3 次提交
  3. 09 12月, 2016 9 次提交
  4. 08 12月, 2016 7 次提交
  5. 07 12月, 2016 18 次提交
  6. 06 12月, 2016 2 次提交
    • N
      net: stmmac: clear reset value of snps, wr_osr_lmt/snps, rd_osr_lmt before writing · 6b3374cb
      Niklas Cassel 提交于
      WR_OSR_LMT and RD_OSR_LMT have a reset value of 1.
      Since the reset value wasn't cleared before writing, the value in the
      register would be incorrect if specifying an uneven value for
      snps,wr_osr_lmt/snps,rd_osr_lmt.
      
      Zero is a valid value for the properties, since the databook specifies:
      maximum outstanding requests = WR_OSR_LMT + 1.
      
      We do not want to change the behavior for existing users when the
      property is missing. Therefore, default to 1 if the property is missing,
      since that is the same as the reset value.
      Signed-off-by: NNiklas Cassel <niklas.cassel@axis.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      6b3374cb
    • F
      net: ep93xx_eth: Do not crash unloading module · c823abac
      Florian Fainelli 提交于
      When we unload the ep93xx_eth, whether we have opened the network
      interface or not, we will either hit a kernel paging request error, or a
      simple NULL pointer de-reference because:
      
      - if ep93xx_open has been called, we have created a valid DMA mapping
        for ep->descs, when we call ep93xx_stop, we also call
        ep93xx_free_buffers, ep->descs now has a stale value
      
      - if ep93xx_open has not been called, we have a NULL pointer for
        ep->descs, so performing any operation against that address just won't
        work
      
      Fix this by adding a NULL pointer check for ep->descs which means that
      ep93xx_free_buffers() was able to successfully tear down the descriptors
      and free the DMA cookie as well.
      
      Fixes: 1d22e05d ("[PATCH] Cirrus Logic ep93xx ethernet driver")
      Signed-off-by: NFlorian Fainelli <f.fainelli@gmail.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      c823abac