28 Aug, 2013

1 commit


20 Aug, 2013

3 commits

  • Added missing __iomem annotation in order to fix the following
    sparse warnings:

    drivers/vme/boards/vme_vmivme7805.c:62:19: warning: incorrect type in assignment (different address spaces)
    drivers/vme/boards/vme_vmivme7805.c:62:19: expected void *static [toplevel] vmic_base
    drivers/vme/boards/vme_vmivme7805.c:62:19: got void [noderef] *
    drivers/vme/boards/vme_vmivme7805.c:70:9: warning: incorrect type in argument 2 (different address spaces)
    drivers/vme/boards/vme_vmivme7805.c:70:9: expected void volatile [noderef] *addr
    drivers/vme/boards/vme_vmivme7805.c:70:9: got void *
    drivers/vme/boards/vme_vmivme7805.c:73:16: warning: incorrect type in argument 1 (different address spaces)
    drivers/vme/boards/vme_vmivme7805.c:73:16: expected void const volatile [noderef] *addr
    drivers/vme/boards/vme_vmivme7805.c:73:16: got void *
    drivers/vme/boards/vme_vmivme7805.c:75:9: warning: incorrect type in argument 2 (different address spaces)
    drivers/vme/boards/vme_vmivme7805.c:75:9: expected void volatile [noderef] *addr
    drivers/vme/boards/vme_vmivme7805.c:75:9: got void *
    drivers/vme/boards/vme_vmivme7805.c:78:16: warning: incorrect type in argument 1 (different address spaces)
    drivers/vme/boards/vme_vmivme7805.c:78:16: expected void const volatile [noderef] *addr
    drivers/vme/boards/vme_vmivme7805.c:78:16: got void *
    drivers/vme/boards/vme_vmivme7805.c:85:9: warning: incorrect type in argument 2 (different address spaces)
    drivers/vme/boards/vme_vmivme7805.c:85:9: expected void volatile [noderef] *addr
    drivers/vme/boards/vme_vmivme7805.c:85:9: got void *
    drivers/vme/boards/vme_vmivme7805.c:99:17: warning: incorrect type in argument 1 (different address spaces)
    drivers/vme/boards/vme_vmivme7805.c:99:17: expected void volatile [noderef] *addr
    drivers/vme/boards/vme_vmivme7805.c:99:17: got void *static [toplevel] vmic_base

    Signed-off-by: Jingoo Han
    Signed-off-by: Greg Kroah-Hartman

    Jingoo Han
     
  • Added missing __iomem annotation in order to fix the following
    sparse warnings:

    drivers/vme/bridges/vme_ca91cx42.c:859:39: warning: incorrect type in initializer (different address spaces)
    drivers/vme/bridges/vme_ca91cx42.c:859:39: expected void *addr
    drivers/vme/bridges/vme_ca91cx42.c:859:39: got void [noderef] *
    drivers/vme/bridges/vme_ca91cx42.c:878:30: warning: incorrect type in argument 1 (different address spaces)
    drivers/vme/bridges/vme_ca91cx42.c:878:30: expected void const volatile [noderef] *addr
    drivers/vme/bridges/vme_ca91cx42.c:878:30: got void *addr
    drivers/vme/bridges/vme_ca91cx42.c:885:47: warning: incorrect type in argument 1 (different address spaces)
    drivers/vme/bridges/vme_ca91cx42.c:885:47: expected void const volatile [noderef] *addr
    drivers/vme/bridges/vme_ca91cx42.c:885:47: got void *
    drivers/vme/bridges/vme_ca91cx42.c:889:48: warning: incorrect type in argument 1 (different address spaces)
    drivers/vme/bridges/vme_ca91cx42.c:889:48: expected void const volatile [noderef] *addr
    drivers/vme/bridges/vme_ca91cx42.c:889:48: got void *
    drivers/vme/bridges/vme_ca91cx42.c:896:17: warning: incorrect type in argument 2 (different address spaces)
    drivers/vme/bridges/vme_ca91cx42.c:896:17: expected void const volatile [noderef] *
    drivers/vme/bridges/vme_ca91cx42.c:896:17: got void *
    drivers/vme/bridges/vme_ca91cx42.c:901:40: warning: incorrect type in argument 1 (different address spaces)
    drivers/vme/bridges/vme_ca91cx42.c:901:40: expected void const volatile [noderef] *addr
    drivers/vme/bridges/vme_ca91cx42.c:901:40: got void *
    drivers/vme/bridges/vme_ca91cx42.c:905:39: warning: incorrect type in argument 1 (different address spaces)
    drivers/vme/bridges/vme_ca91cx42.c:905:39: expected void const volatile [noderef] *addr
    drivers/vme/bridges/vme_ca91cx42.c:905:39: got void *
    drivers/vme/bridges/vme_ca91cx42.c:919:39: warning: incorrect type in initializer (different address spaces)
    drivers/vme/bridges/vme_ca91cx42.c:919:39: expected void *addr
    drivers/vme/bridges/vme_ca91cx42.c:919:39: got void [noderef] *
    drivers/vme/bridges/vme_ca91cx42.c:932:17: warning: incorrect type in argument 2 (different address spaces)
    drivers/vme/bridges/vme_ca91cx42.c:932:17: expected void volatile [noderef] *addr
    drivers/vme/bridges/vme_ca91cx42.c:932:17: got void *addr
    drivers/vme/bridges/vme_ca91cx42.c:939:25: warning: incorrect type in argument 2 (different address spaces)
    drivers/vme/bridges/vme_ca91cx42.c:939:25: expected void volatile [noderef] *addr
    drivers/vme/bridges/vme_ca91cx42.c:939:25: got void *
    drivers/vme/bridges/vme_ca91cx42.c:943:25: warning: incorrect type in argument 2 (different address spaces)
    drivers/vme/bridges/vme_ca91cx42.c:943:25: expected void volatile [noderef] *addr
    drivers/vme/bridges/vme_ca91cx42.c:943:25: got void *
    drivers/vme/bridges/vme_ca91cx42.c:950:17: warning: incorrect type in argument 1 (different address spaces)
    drivers/vme/bridges/vme_ca91cx42.c:950:17: expected void volatile [noderef] *
    drivers/vme/bridges/vme_ca91cx42.c:950:17: got void *
    drivers/vme/bridges/vme_ca91cx42.c:955:17: warning: incorrect type in argument 2 (different address spaces)
    drivers/vme/bridges/vme_ca91cx42.c:955:17: expected void volatile [noderef] *addr
    drivers/vme/bridges/vme_ca91cx42.c:955:17: got void *
    drivers/vme/bridges/vme_ca91cx42.c:959:17: warning: incorrect type in argument 2 (different address spaces)
    drivers/vme/bridges/vme_ca91cx42.c:959:17: expected void volatile [noderef] *addr
    drivers/vme/bridges/vme_ca91cx42.c:959:17: got void *

    Signed-off-by: Jingoo Han
    Signed-off-by: Greg Kroah-Hartman

    Jingoo Han
     
  • Added missing __iomem annotation in order to fix the following
    sparse warnings:

    drivers/vme/bridges/vme_tsi148.c:1270:39: warning: incorrect type in initializer (different address spaces)
    drivers/vme/bridges/vme_tsi148.c:1270:39: expected void *addr
    drivers/vme/bridges/vme_tsi148.c:1270:39: got void [noderef] *
    drivers/vme/bridges/vme_tsi148.c:1287:30: warning: incorrect type in argument 1 (different address spaces)
    drivers/vme/bridges/vme_tsi148.c:1287:30: expected void const volatile [noderef] *addr
    drivers/vme/bridges/vme_tsi148.c:1287:30: got void *addr
    drivers/vme/bridges/vme_tsi148.c:1294:47: warning: incorrect type in argument 1 (different address spaces)
    drivers/vme/bridges/vme_tsi148.c:1294:47: expected void const volatile [noderef] *addr
    drivers/vme/bridges/vme_tsi148.c:1294:47: got void *
    drivers/vme/bridges/vme_tsi148.c:1298:48: warning: incorrect type in argument 1 (different address spaces)
    drivers/vme/bridges/vme_tsi148.c:1298:48: expected void const volatile [noderef] *addr
    drivers/vme/bridges/vme_tsi148.c:1298:48: got void *
    drivers/vme/bridges/vme_tsi148.c:1305:17: warning: incorrect type in argument 2 (different address spaces)
    drivers/vme/bridges/vme_tsi148.c:1305:17: expected void const volatile [noderef] *
    drivers/vme/bridges/vme_tsi148.c:1305:17: got void *
    drivers/vme/bridges/vme_tsi148.c:1310:40: warning: incorrect type in argument 1 (different address spaces)
    drivers/vme/bridges/vme_tsi148.c:1310:40: expected void const volatile [noderef] *addr
    drivers/vme/bridges/vme_tsi148.c:1310:40: got void *
    drivers/vme/bridges/vme_tsi148.c:1314:39: warning: incorrect type in argument 1 (different address spaces)
    drivers/vme/bridges/vme_tsi148.c:1314:39: expected void const volatile [noderef] *addr
    drivers/vme/bridges/vme_tsi148.c:1314:39: got void *
    drivers/vme/bridges/vme_tsi148.c:1351:39: warning: incorrect type in initializer (different address spaces)
    drivers/vme/bridges/vme_tsi148.c:1351:39: expected void *addr
    drivers/vme/bridges/vme_tsi148.c:1351:39: got void [noderef] *
    drivers/vme/bridges/vme_tsi148.c:1369:17: warning: incorrect type in argument 2 (different address spaces)
    drivers/vme/bridges/vme_tsi148.c:1369:17: expected void volatile [noderef] *addr
    drivers/vme/bridges/vme_tsi148.c:1369:17: got void *addr
    drivers/vme/bridges/vme_tsi148.c:1376:25: warning: incorrect type in argument 2 (different address spaces)
    drivers/vme/bridges/vme_tsi148.c:1376:25: expected void volatile [noderef] *addr
    drivers/vme/bridges/vme_tsi148.c:1376:25: got void *
    drivers/vme/bridges/vme_tsi148.c:1380:25: warning: incorrect type in argument 2 (different address spaces)
    drivers/vme/bridges/vme_tsi148.c:1380:25: expected void volatile [noderef] *addr
    drivers/vme/bridges/vme_tsi148.c:1380:25: got void *
    drivers/vme/bridges/vme_tsi148.c:1387:17: warning: incorrect type in argument 1 (different address spaces)
    drivers/vme/bridges/vme_tsi148.c:1387:17: expected void volatile [noderef] *
    drivers/vme/bridges/vme_tsi148.c:1387:17: got void *
    drivers/vme/bridges/vme_tsi148.c:1392:17: warning: incorrect type in argument 2 (different address spaces)
    drivers/vme/bridges/vme_tsi148.c:1392:17: expected void volatile [noderef] *addr
    drivers/vme/bridges/vme_tsi148.c:1392:17: got void *
    drivers/vme/bridges/vme_tsi148.c:1396:17: warning: incorrect type in argument 2 (different address spaces)
    drivers/vme/bridges/vme_tsi148.c:1396:17: expected void volatile [noderef] *addr
    drivers/vme/bridges/vme_tsi148.c:1396:17: got void *

    Signed-off-by: Jingoo Han
    Signed-off-by: Greg Kroah-Hartman

    Jingoo Han
     

25 Jun, 2013

1 commit


18 Jun, 2013

3 commits

  • The tsi148 driver can be configured to reserve a window for internal
    use (as part of the error checking routine). The intialisation of this
    window currently configures a set of attributes that are never used
    as these are only ever used by the VME core and this window is not
    advertised to the core.

    Remove configuration of these attributes.

    Signed-off-by: Martyn Welch
    Signed-off-by: Greg Kroah-Hartman

    Martyn Welch
     
  • The logic in the init routine for the TSI148 is inverted. It isn't switching
    on the CR/CSR space when it should be and is reporting it's on when its not.

    Correct the logic to do the right thing.

    Reported-by: De Roo, Steven
    Signed-off-by: Martyn Welch
    Signed-off-by: Greg Kroah-Hartman

    Martyn Welch
     
  • The TSI148 driver provides an optional mechanism for ensuring that errors
    resulting from posted transfers are caught whilst still relevant. To do this
    errors are stored in a link list. If bus errors are not checked, this list
    would grow until available memory had been exhausted.

    Only store the errors in a link list if error detection is switched on.

    Reported-by: De Roo, Steven
    Signed-off-by: Martyn Welch
    Signed-off-by: Greg Kroah-Hartman

    Martyn Welch
     

07 Jun, 2013

1 commit


15 Feb, 2013

1 commit


26 Oct, 2012

3 commits


07 Sep, 2012

2 commits


20 Jul, 2012

1 commit

  • The memcpy_fromio() and memcpy_toio() functions use the __memcpy() function,
    at least on x86. This function carries out transfers smaller than 32 bits as
    multiple 8 bit transfers, causing a single (aligned) 16 bit transfer to be
    split into 2 8 bit transfers which may not be supported by the target VME
    device.

    The commit 53059aa05988761a738fa8bc082bbf3c5d4462d1 fixed this for the
    ca91cx42, however this was not fixed for the tsi148 at the time. This patch
    uses the same algorithm to fix the tsi148.

    Reported-by: Daniel Lambert
    Signed-off-by: Martyn Welch
    Signed-off-by: Greg Kroah-Hartman

    Martyn Welch
     

09 May, 2012

3 commits


27 Apr, 2012

1 commit

  • This moves the VME core, VME board drivers, and VME bridge drivers out
    of the drivers/staging/vme/ area to drivers/vme/.

    The VME device drivers have not moved out yet due to some API questions
    they are still working through, that should happen soon, hopefully.

    Cc: Martyn Welch
    Cc: Manohar Vanga
    Cc: Vincent Bossier
    Cc: "Emilio G. Cota"
    Signed-off-by: Greg Kroah-Hartman

    Greg Kroah-Hartman