27 Oct, 2020

1 commit

  • In current code, controller_probe() misses to call ida_simple_remove()
    in an error path. Jump to correct label to fix it.

    Fixes: 17614978ed34 ("staging: fieldbus: anybus-s: support the Arcx anybus controller")
    Reviewed-by: Sven Van Asbroeck
    Signed-off-by: Jing Xiangfeng
    Cc: stable
    Link: https://lore.kernel.org/r/20201012132404.113031-1-jingxiangfeng@huawei.com
    Signed-off-by: Greg Kroah-Hartman

    Jing Xiangfeng
     

27 Oct, 2019

1 commit


01 Oct, 2019

2 commits

  • anybus-s cards use the "offline mode" property to determine if
    process memory should be clear, set, or frozen when the card
    is offline.

    Move this property to the fieldbus core, so that it can become
    part of the future fieldbus config interface.

    Signed-off-by: Sven Van Asbroeck
    Link: https://lore.kernel.org/r/20190918183552.28959-3-TheSven73@gmail.com
    Signed-off-by: Greg Kroah-Hartman

    Sven Van Asbroeck
     
  • Remove two unused static const strings - a leftover from
    a previous stage. Interestingly, neither gcc nor sparse
    warned about their presence.

    Signed-off-by: Sven Van Asbroeck
    Link: https://lore.kernel.org/r/20190918183552.28959-2-TheSven73@gmail.com
    Signed-off-by: Greg Kroah-Hartman

    Sven Van Asbroeck
     

12 Sep, 2019

1 commit

  • The devicetree bindings for anybus-controller were mistakenly
    merged into the main Linux tree. Its driver resides in
    staging/, so the bindings belong in staging/ too.

    Cc: Greg Kroah-Hartman
    Fixes: 20a980e957bf ("dt-bindings: anybus-controller: document devicetree binding")
    Signed-off-by: Sven Van Asbroeck
    Link: https://lore.kernel.org/r/20190908134805.30957-1-TheSven73@gmail.com
    Signed-off-by: Greg Kroah-Hartman

    Sven Van Asbroeck
     

12 Jul, 2019

1 commit

  • Pull staging and IIO driver updates from Greg KH:
    "Here is the big Staging and IIO driver update for 5.3-rc1.

    Lots of new IIO drivers are in here, along with loads of tiny staging
    driver cleanups and fixes. Overall we almost break even with the same
    lines added as removed.

    Full details are in the shortlog, they are too large to list here.

    All of these changes have been in linux-next for a while with no
    reported issues"

    * tag 'staging-5.3-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging: (608 commits)
    staging: kpc2000: simplify comparison to NULL in fileops.c
    staging: kpc2000: simplify comparison to NULL in dma.c
    staging: kpc2000: simplify comparison to NULL in kpc2000_spi.c
    staging: rtl8723bs: hal: remove redundant assignment to packetType
    staging: rtl8723bs: Change return type of hal_btcoex_IsBtDisabled()
    staging: rtl8723bs: Remove rtw_btcoex_DisplayBtCoexInfo()
    staging: rtl8723bs: Remove function rtw_btcoex_GetDBG()
    staging: rtl8723bs: Remove function rtw_btcoex_SetDBG()
    staging: rtl8723bs: Remove rtw_btcoex_IsBTCoexCtrlAMPDUSize()
    staging: rtl8723bs: Remove rtw_btcoex_BtInfoNotify()
    staging: rtl8723bs: Remove rtw_btcoex_ScanNotify()
    staging: rtl8723bs: Remove rtw_btcoex_SetSingleAntPath()
    staging: rtl8723bs: Remove rtw_btcoex_SetPGAntNum()
    staging: rtl8192e: remove redundant initialization of rtstatus
    staging: rtl8723bs: Remove rtw_btcoex_GetRaMask()
    staging: rtl8723bs: Remove rtw_btcoex_SetChipType()
    staging: rtl8723bs: Remove rtw_btcoex_ConnectNotify()
    staging: rtl8723bs: Remove rtw_btcoex_SetBTCoexist()
    staging: rtl8723bs: Remove rtw_btcoex_IsBtDisabled()
    staging: rtl8723bs: Remove rtw_btcoex_IsBtControlLps()
    ...

    Linus Torvalds
     

15 Jun, 2019

1 commit


10 Jun, 2019

1 commit

  • Fix gcc build error while CONFIG_REGMAP_MMIO is not set

    drivers/staging/fieldbus/anybuss/arcx-anybus.o: In function `controller_probe':
    arcx-anybus.c: undefined reference to `__devm_regmap_init_mmio_clk'

    Select REGMAP_MMIO to fix it.

    Reported-by: Hulk Robot
    Fixes: 2411a336c8ce ("staging: fieldbus: arcx-anybus: change custom -> mmio regmap")
    Signed-off-by: YueHaibing
    Reviewed-by: Sven Van Asbroeck
    Signed-off-by: Greg Kroah-Hartman

    YueHaibing
     

09 Jun, 2019

1 commit

  • Mostly due to x86 and acpi conversion, several documentation
    links are still pointing to the old file. Fix them.

    Signed-off-by: Mauro Carvalho Chehab
    Reviewed-by: Wolfram Sang
    Reviewed-by: Sven Van Asbroeck
    Reviewed-by: Bhupesh Sharma
    Acked-by: Mark Brown
    Signed-off-by: Jonathan Corbet

    Mauro Carvalho Chehab
     

03 Jun, 2019

1 commit


22 May, 2019

1 commit

  • The arcx-anybus's registers are accessed via a memory-mapped
    IO region. A regmap associated with this region is created
    using custom reg_read() / reg_write() callbacks.

    However, an abstraction which creates a memory-mapped IO
    region backed regmap already exists: devm_regmap_init_mmio().

    Replace the custom regmap with the existing kernel abstraction.
    As a pleasant side-effect, sparse warnings now disappear.

    Signed-off-by: Sven Van Asbroeck
    Signed-off-by: Greg Kroah-Hartman

    Sven Van Asbroeck
     

21 May, 2019

1 commit


20 May, 2019

1 commit


01 May, 2019

1 commit


30 Apr, 2019

2 commits

  • Rename the anybus-s bus id from fieldbus_type to anybus_id, to
    avoid confusion with an identically named variable in the
    fieldbus_dev framework.

    Although this value is called fieldbus_type in the anybus-s docs,
    it acts like a bus id, so the name change is appropriate.

    Signed-off-by: Sven Van Asbroeck
    Signed-off-by: Greg Kroah-Hartman

    Sven Van Asbroeck
     
  • "Normal" bus structures such as USB or PCI keep device bus ids
    in bus endinanness, and driver bus ids in host endianness.
    Endianness conversion happens each time bus_match() is called.

    Modify anybus-s to conform to this pattern. As a pleasant side-
    effect, sparse warnings will now disappear.

    This was suggested by Al Viro.

    Link: https://lkml.org/lkml/2019/4/30/834
    Signed-off-by: Sven Van Asbroeck
    Signed-off-by: Greg Kroah-Hartman

    Sven Van Asbroeck
     

17 Apr, 2019

5 commits

  • Add a TODO file which describes what needs to be done in order to
    get the fieldbus_dev subsystem out of staging.

    Signed-off-by: Sven Van Asbroeck
    Signed-off-by: Greg Kroah-Hartman

    Sven Van Asbroeck
     
  • The Anybus-S PROFINET IRT communication module provides instant integration
    to any Ethernet based LAN via SMTP, FTP, HTTP as well as PROFINET and
    Modbus-TCP. Additional protocols can be implemented on top of TCP/IP
    or UDP using the transparent socket interface.

    Official documentation:
    https://www.anybus.com/docs/librariesprovider7/default-document-library
    /manuals-design-guides/hms-hmsi-168-52.pdf

    This implementation is an Anybus-S client driver, designed to be
    instantiated by the Anybus-S bus driver when it discovers the Profinet
    card.

    If loaded successfully, the driver registers itself as a fieldbus_dev,
    and userspace can access it through the fieldbus_dev interface.

    Signed-off-by: Sven Van Asbroeck
    Signed-off-by: Greg Kroah-Hartman

    Sven Van Asbroeck
     
  • Add a driver for the Arcx anybus controller.

    This device implements two Anybus-S hosts (buses),
    and connects to the SoC via a parallel memory bus.
    There is also a CAN power readout, unrelated to the Anybus,
    modelled as a regulator.

    Signed-off-by: Sven Van Asbroeck
    Signed-off-by: Greg Kroah-Hartman

    Sven Van Asbroeck
     
  • The Anybus-S/Anybus-M is a series of interchangeable fieldbus communication
    modules featuring on board memory and processing power. All software and
    hardware functionality required to communicate on the fieldbus is
    incorporated in the module itself, allowing the application to focus on
    other tasks.

    Typical applications are frequency inverters, HMI and visualization
    devices, instruments, scales, robotics, PLC’s and intelligent measuring
    devices.

    Official documentation:
    https://www.anybus.com/docs/librariesprovider7/default-document-library/
    manuals-design-guides/hms-hmsi-27-275.pdf

    Signed-off-by: Sven Van Asbroeck
    Signed-off-by: Greg Kroah-Hartman

    Sven Van Asbroeck
     
  • Fieldbus device (client) adapters allow data exchange with a PLC aka.
    "Fieldbus Controller" over a fieldbus (Profinet, FLNet, etc.)

    They are typically used when a Linux device wants to expose itself
    as an actuator, motor, console light, switch, etc. over the fieldbus.

    This framework is designed to provide a generic interface to Fieldbus
    Devices from both the Linux Kernel and the userspace.

    Signed-off-by: Sven Van Asbroeck
    Signed-off-by: Greg Kroah-Hartman

    Sven Van Asbroeck