1. 29 Jul, 2021 4 commits
    • Federico Vaga's avatar
      Merge branch 'hotfix/v1.1.2' · 21f2e94e
      Federico Vaga authored
      21f2e94e
    • Federico Vaga's avatar
      update changelog · 0184795d
      Federico Vaga authored
      Signed-off-by: Federico Vaga's avatarFederico Vaga <federico.vaga@cern.ch>
      0184795d
    • Mathis MARION's avatar
      Kernel 4.4: use fwnode for irq domain · 49dfe034
      Mathis MARION authored
      When creating an IRQ domain, the code used to store a device struct
      pointer in the `of_node` field of the irq_domain struct returned by
      `irq_domain_add_linear`. This was done by casting to a void pointer and
      passing as the first argument of the function.
      
      In the SPEC repository (and supposedly other depending repositories),
      we would then get back the irq_domain struct by calling `irq_find_host`
      with again a device struct pointer casted to a void pointer as the
      argument. The function would compare the addresses of the 2 device
      structs and return the right irq_domain.
      
      This trick was most likely due to the fact that the IRQ domain API was
      conceived around OpenFirmware before version 4.4, and that the project
      should work for ACPI.
      A workaround for kernel 4.7 was written, which involved using a `select`
      function, and passing the address of the device struct as a parameter.
      It was particularly ugly as it would require getting around the
      `irq_find_host` to call immediately `irq_find_matching_fwspec` and pass
      in the address of the wanted device struct as a parameter in a hacky way
      to fit it inside two 32 bit integers.
      
      Kernel version 4.4 introduced fwnodes, which would make easier working
      with ACPI. Instead of repeating the hacky workaround (which would result
      in a kernel error on later kernels when calling irq_domain_add_linear),
      I allocated a fwnode_handle struct before creating a new IRQ domain.
      Then I used the new irq_domain_create_* API to get an irq_domain using
      this fwnode. I also took care of disallocating the fwnode_handle.
      
      On the other end, we can just call `irq_find_matching_fwnode` and pass
      dev.fwnode as a parameter.
      Signed-off-by: 's avatarGwenhael GOAVEC <gwenhael.goavec@femto-st.fr>
      Signed-off-by: 's avatarMathis MARION <mathis.marion@grenoble-inp.org>
      49dfe034
    • Mathis MARION's avatar
      Kernel 5.2 compatibility for i2c_new_device · 30c5b080
      Mathis MARION authored
      `i2c_new_device` disappeared in kernel 5.2 and onwards.
      It is now required to use `i2c_new_client_device`, which
      works the same way except for error checking.
      Signed-off-by: 's avatarMathis MARION <mathis.marion@grenoble-inp.org>
      30c5b080
  2. 14 Sep, 2020 3 commits
  3. 24 Jul, 2020 4 commits
  4. 07 Jul, 2020 1 commit
  5. 25 May, 2020 1 commit
  6. 19 May, 2020 1 commit
  7. 11 May, 2020 1 commit
  8. 06 May, 2020 3 commits
  9. 04 May, 2020 1 commit
  10. 24 Apr, 2020 3 commits
  11. 23 Apr, 2020 1 commit
  12. 21 Apr, 2020 5 commits
  13. 20 Apr, 2020 5 commits
  14. 14 Apr, 2020 2 commits
  15. 09 Apr, 2020 1 commit
    • Maciej Lipinski's avatar
      [hdl] add missing generic to generic_dpram in altera · c0e85653
      Maciej Lipinski authored
      This generic is dummy (does nothing), yet it is needed since the
      generic component declaration in genram_pkg.vhd has such generic.
      It has it, because the xilinx generic_dpram.vhd has such generic
      and uses it.
      TBD whether we want to attempt at providing similar functionality
      for altera
      c0e85653
  16. 03 Apr, 2020 1 commit
  17. 30 Mar, 2020 1 commit
  18. 26 Mar, 2020 2 commits
    • Dimitris Lampridis's avatar
      Merge tag 'v1.0.4' into proposed_master · 85964c94
      Dimitris Lampridis authored
      1.0.4 - 2020-03-26
      ==================
      https://www.ohwr.org/project/general-cores/tags/v1.0.4
      
      Added
      -----
      - [hdl] VHDL functions to convert characters and strings to upper/lower case.
      - [sw][i2c] Support for kernel greater than 4.7.
      - [hdl] Separate synchroniser and edge detection modules.
      - [hdl] 8b10b encoder.
      
      Changed
      -------
      - [hdl] Rewritten the WB master interface used in simulations.
      - [hdl] Reimplement gc_sync_ffs using new synchroniser and edge detectors.
      
      Fixed
      -----
      - [sw][spi] Align polarity and phase for Rx and Tx.
      - [hdl][i2c] Fix reset lock for I2C master.
      - [hdl] Avoid cyclic dependencies for log2 ceiling functions.
      85964c94
    • Dimitris Lampridis's avatar
      Merge branch 'release/1.0.4' · 63f36713
      Dimitris Lampridis authored
      63f36713