Abstract: According to one exemplary embodiment, a method for preventing a software thread from being blocked due to processing an external device interrupt is provided. The method may include receiving the software thread, whereby the software thread has an associated interrupt avoidance variable. The method may also include determining a processor to receive the software thread. The method may then include sending the software thread to the determined processor. The method may further include setting an interrupt mask bit associated with the processor based on the interrupt avoidance variable. The method may also include receiving the external device interrupt. The method may then include redirecting the received external device interrupt to a second processor, whereby the redirecting is based on the interrupt mask bit.
Type:
Grant
Filed:
June 25, 2018
Date of Patent:
February 25, 2020
Assignee:
International Business Machines Corporation
Inventors:
Mathew Accapadi, Grover C. Davidson, II, Dirk Michel, Bret R. Olszewski
Abstract: A mobile device includes a slave device that receives first data provided to a serial data line in synchronization with a clock signal provided through a serial clock line, and outputs second data to the serial data line in synchronization with the clock signal; and a master device that generates the clock signal and provides the first data to the serial data line in synchronization with the generated clock signal, or receives the second data output to the serial data line in synchronization with the clock signal. The master device generates the clock signal of a first frequency upon transmitting the first data, and generates the clock signal of a second frequency, which is lower than the first frequency, upon receiving the second data.
Abstract: A serial attached small computer system interface system improves shared device firmware version consistency. The system includes servers connected to one of a plurality of controllers, and an expander connected to each of the controllers. A shared device connected to the expander receives a command from a server to be executed at the shared device, and transmits a first broadcast asynchronous event to the expander. The shared device is a serial attached small computer system interface target, and the first broadcast asynchronous event identifies a configuration change in the serial attached small computer system interface target. The expander, in response to receiving the first broadcast asynchronous event, transmits a second broadcast asynchronous event to the controllers.
Abstract: A data path for each storage object may be customized for the particular services enabled for the storage object. Techniques for determining and using data paths may include: receiving an administrative command on a control path, wherein the administrative command is a request to perform any of enable, disable and modify a data service for a first storage object; determining, in accordance with the administrative command, a modification to be made to a current configuration of a data path for the first storage object in order to implement the administrative command, wherein the current configuration includes a plurality of components forming a call stack invoked in connection with I/O processing for I/Os directed to the first storage object; and modifying the data path in accordance with the modification determined.
Abstract: An information processing device includes a memory, and a plurality of processor cores that access the memory. The plurality of processor cores respectively executes processes to be executed by the plurality of processor cores in accordance with execution priority levels of the processes. When a polling process for repeatedly determining whether reception data for input/output processing is received is underway in one of the plurality of processor cores, the plurality of processor cores respectively executes the input/output processing in response to a determination, made by the polling process, that the reception data have been received, and when the polling process is not underway in any of the plurality of processing cores, the plurality of processor cores respectively executes the input/output processing in response to a processor interrupt issued upon reception of the reception data.
Abstract: In a method for initializing a bus system, and a bus system having a master module and serially disposed bus subscribers, the master module asks the bus subscribers to log into the master module. After logging into the master module, each bus subscriber waits a predefined period of time to see whether a further bus subscriber logs into the master module, and closes the bus system if no further bus subscriber logs into the master module within the predefined period of time.
Abstract: A system, a method, and computer program product for performing buffering operations. A data update is received at a buffering location. The buffering location includes a first buffer portion and a second buffer portion. The data update includes an address tag. The buffering location is communicatively coupled to a memory location configured to receive the data update. A target address of the data update in the memory location is determined using the first buffer portion and compared to the address tag. The data update is applied using the first buffer portion to update data in the first buffer portion upon determination that the target address matches the address tag. The target address of the data update is pre-fetched from the memory location upon determination that the target address does not match the address tag. The first and second buffer portions buffer the data update using the pre-fetched target address.
Abstract: Example implementations relate to transmitting signals via USB ports. For example, a system according to the present disclosure, may include a host module including a plurality of USB ports, a first expansion module, and a second expansion module. The first expansion module may include a first USB port and a second USB port. The first expansion module may receive a signal from the host module at a first USB port, and direct the signal to a second USB port. The first expansion module may transmit the signal to a second expansion module via a second USB port.
Type:
Grant
Filed:
July 13, 2016
Date of Patent:
January 14, 2020
Assignee:
Hewlett-Packard Development Company, L.P.
Inventors:
Chi So, Nam H Nguyen, Chien-Hao Lu, Roger D Benson
Abstract: The present invention extends to methods, systems, devices, for manipulating operation of at least one electronic control unit (ECU) connected to a controller area network (CAN) bus, at least one said ECU comprising at least one error counter, by counting errors associated with at least one said ECU; and generating and broadcasting via said CAN at least one bit stream destined to at least one said ECU, thereby manipulating at least one said ECU status, determined by said ECU error counter and querying for its status state.
Type:
Grant
Filed:
August 4, 2016
Date of Patent:
January 7, 2020
Assignee:
Tower-Sec Ltd.
Inventors:
Guy Ruvio, Saar Yaacov Dickman, Yuval Weisglass, Zachi Avatichi
Abstract: Systems and methods for sending files or other data wirelessly from a host digital device to an external digital location by, for example, utilizing the host device's existing media card slot. One embodiment of a system and method is able to connect to a host digital device by using a media card connection cable that may comprise a pseudo media card and a connection cable. The cable is connected to a processing circuit. In an exemplary embodiment, the processing circuit may share the use of at least one media card that may store data from the host device. An exemplary embodiment of the processing circuit may be in electrical communication with at least one wireless source such that the at least one wireless source is adapted to transmit an image or other data to a desired external location or locations.
Abstract: A computer program product, according to one embodiment, includes a computer readable storage medium having program instructions embodied therewith. The computer readable storage medium is not a transitory signal per se. Moreover, the program instructions are readable and/or executable by a controller to cause the controller to perform a method which includes: receiving a same input/output request along more than one communication paths, and evaluating a workload associated with each of the communication paths. A communication path having a lowest workload associated therewith is selected. Moreover, information corresponding to the input/output request as well as a status are sent along the selected communication path. The status sent indicates that the selected communication path was chosen to satisfy the input/output request. A special status indicating that none of the remaining communication paths were chosen to satisfy the input/output request is also sent along each of the remaining communication paths.
Type:
Grant
Filed:
June 12, 2018
Date of Patent:
December 31, 2019
Assignee:
International Business Machines Corporation
Inventors:
Sarvesh S. Patel, Subhojit Roy, Kushal S. Patel
Abstract: Embodiments can provide a smart interface card control method and apparatus. Under such a method or apparatus, after a smart interface card is inserted into a smart interface card slot of a host, a virtualized management interface can be registered with the host using a protocol stack of a preset type. A virtual link can be created to connect a baseboard management controller management interface to the virtual link. A management address configuration instruction sent by the host can be received for configuring a management address of the management interface. A control instruction sent by the host by using the management address can be received, and the control instruction to the BMC management interface can be sent by using the virtual link. According to the foregoing smart interface card control method and apparatus, scalability of the smart interface card can be improved.
Abstract: Provided are systems and methods for hot-plugging emulated peripheral devices (e.g., endpoints) into host devices that either have a hypervisor that does not support virtualized peripheral device or that do not include a hypervisor. In various implementations, a configurable peripheral device can emulate a switch that includes upstream ports and downstream ports. When a new endpoint device is requested, the configurable peripheral device can, using an emulation configuration for the new endpoint device, generate an emulation for the new endpoint device. The configurable peripheral device can connect the endpoint device to a downstream port, and then trigger a hot-plug mechanism, through which the host device can add the new endpoint device to the known hardware of the host device.
Type:
Grant
Filed:
September 28, 2017
Date of Patent:
December 17, 2019
Assignee:
Amazon Technologies, Inc.
Inventors:
Adi Habusha, Georgy Zorik Machulsky, Nafea Bshara, Tal Zilcer
Abstract: Described is a method and apparatus for application migration between a dockable device and a docking station in a seamless manner. The dockable device includes a processor and the docking station includes a high-performance processor. The method includes determining a docking state of a dockable device while at least an application is running. Application migration from the dockable device to a docking station is initiated when the dockable device is moving to a docked state. Application migration from the docking station to the dockable device is initiated when the dockable device is moving to an undocked state. The application continues to run during the application migration from the dockable device to the docking station or during the application migration from the docking station to the dockable device.
Type:
Grant
Filed:
April 27, 2018
Date of Patent:
December 10, 2019
Assignee:
Advanced Micro Devices, Inc.
Inventors:
Jonathan Lawrence Campbell, Yuping Shen
Abstract: Methods and systems are described for receiving a set of input bits at a plurality of drivers and responsively generating an ensemble of signals, each respective signal of the ensemble of signals generated by receiving a subset of input bits at a respective driver connected to a respective wire of a multi-wire bus, the received subset of bits corresponding to sub-channels associated with the respective wire, generating a plurality of weighted analog signal components, each weighted analog signal component (i) having a corresponding weight and sign selected from a set of wire-specific sub-channel weights associated with the respective wire and (ii) modulated by a corresponding bit of the received subset of bits, and generating the respective signal by forming a summation of the plurality of weighted analog signal components at a common node connected to the respective wire for transmission over the respective wire of the multi-wire bus.
Abstract: An information processing apparatus includes a basic control module and a function extension module. The function extension module includes a storage unit in which extension setting information for enabling the basic control module to control the function extension module to execute a function is stored in advance, and a setting information transmission unit that transmits the extension setting information to the basic control module.
Abstract: One example of a system includes a Universal Serial Bus Type-C (USB-C) port, a set of logic circuits, a multiplexer, and an embedded controller. The set of logic circuits includes a first logic circuit providing a first utility and a second logic circuit providing a second utility different from the first utility. The multiplexer is communicatively coupled between the set of logic circuits and the USB-C port. The embedded controller controls the multiplexer to connect the first logic circuit or the second logic circuit to the USB-C port based on a value of a multi-level strap received from a device connected to the USB-C port.
Type:
Grant
Filed:
January 11, 2016
Date of Patent:
November 5, 2019
Assignee:
Hewlett-Packard Development Company, L.P.
Inventors:
Connor Jam Watkins, Christopher Ritchie Tabarez, Amol Subhash Pandit, Peter Andrew Seiler
Abstract: A method of improving throughput of a secure digital (SD) bus is described. The method includes accessing, during a data transfer over data lines of the SD bus, read metadata over a command (CMD) line of the SD bus between an SD host and an SD client with a first SD direct command. The method also includes reading a read packet over the data lines of the SD bus from the SD client with a second SD direct command. The method further includes storing the read packet in a host buffer allocated according to the read metadata.
Abstract: In one aspect of the present description, in an input/output (I/O) device having multiple CPUs and multiple I/O ports, a cycle of I/O port rotations is initiated in which each port rotation of the cycle includes rotating an assignment of at least one I/O port from one CPU to a different CPU of a plurality of the CPUs. In the illustrated embodiment, an I/O port assignment for each CPU of the plurality CPUs is rotated for at least a portion of the cycle. Other features and aspects may be realized, depending upon the particular application.
Type:
Grant
Filed:
November 22, 2017
Date of Patent:
November 5, 2019
Assignee:
INTERNATIONAL BUSINESS MACHINES CORPORATION
Abstract: An expansion device includes a clock swing detecting unit, a command receiving unit, and a response generating unit. The clock swing detecting unit detects a clock swing set based on a second signal voltage lower than a first signal voltage before the start of initialization. The command receiving unit receives a command having a parameter incorporated that can indicate which signal voltage of the first signal voltage and second signal voltage is being used. The response generating unit responds to the command based on the clock swing.