Replace the MHL register name 'scratchpad' with 'vendor'

Bug: 17479050
Change-Id: If6fe2949d17ad2d407df5b797c1915eb0e9bf421
This commit is contained in:
Jinsuk Kim
2014-09-12 10:41:40 +09:00
parent 593f2d33bb
commit b3fbf9dbe8
6 changed files with 49 additions and 51 deletions

View File

@@ -156,7 +156,7 @@ LOCAL_SRC_FILES += \
core/java/android/hardware/hdmi/IHdmiDeviceEventListener.aidl \
core/java/android/hardware/hdmi/IHdmiHotplugEventListener.aidl \
core/java/android/hardware/hdmi/IHdmiInputChangeListener.aidl \
core/java/android/hardware/hdmi/IHdmiMhlScratchpadCommandListener.aidl \
core/java/android/hardware/hdmi/IHdmiMhlVendorCommandListener.aidl \
core/java/android/hardware/hdmi/IHdmiRecordListener.aidl \
core/java/android/hardware/hdmi/IHdmiSystemAudioModeChangeListener.aidl \
core/java/android/hardware/hdmi/IHdmiVendorCommandListener.aidl \

View File

@@ -36,9 +36,9 @@ public final class HdmiTvClient extends HdmiClient {
private static final String TAG = "HdmiTvClient";
/**
* Size of MHL scratchpad register.
* Size of MHL register for vendor command
*/
public static final int SCRATCHPAD_DATA_SIZE = 16;
public static final int VENDOR_DATA_SIZE = 16;
HdmiTvClient(IHdmiControlService service) {
super(service);
@@ -332,31 +332,31 @@ public final class HdmiTvClient extends HdmiClient {
}
/**
* Interface used to get incoming MHL scratchpad command.
* Interface used to get incoming MHL vendor command.
*/
public interface HdmiMhlScratchpadCommandListener {
public interface HdmiMhlVendorCommandListener {
void onReceived(int portId, int offset, int length, byte[] data);
}
/**
* Set {@link HdmiMhlScratchpadCommandListener} to get incoming MHL sSratchpad command.
* Set {@link HdmiMhlVendorCommandListener} to get incoming MHL vendor command.
*
* @param listener to receive incoming MHL Scratchpad command
* @param listener to receive incoming MHL vendor command
*/
public void setHdmiMhlScratchpadCommandListener(HdmiMhlScratchpadCommandListener listener) {
public void setHdmiMhlVendorCommandListener(HdmiMhlVendorCommandListener listener) {
if (listener == null) {
throw new IllegalArgumentException("listener must not be null.");
}
try {
mService.addHdmiMhlScratchpadCommandListener(getListenerWrapper(listener));
mService.addHdmiMhlVendorCommandListener(getListenerWrapper(listener));
} catch (RemoteException e) {
Log.e(TAG, "failed to set hdmi mhl scratchpad command listener: ", e);
Log.e(TAG, "failed to set hdmi mhl vendor command listener: ", e);
}
}
private IHdmiMhlScratchpadCommandListener getListenerWrapper(
final HdmiMhlScratchpadCommandListener listener) {
return new IHdmiMhlScratchpadCommandListener.Stub() {
private IHdmiMhlVendorCommandListener getListenerWrapper(
final HdmiMhlVendorCommandListener listener) {
return new IHdmiMhlVendorCommandListener.Stub() {
@Override
public void onReceived(int portId, int offset, int length, byte[] data) {
listener.onReceived(portId, offset, length, data);
@@ -365,29 +365,29 @@ public final class HdmiTvClient extends HdmiClient {
}
/**
* Send MHL Scratchpad command to the device connected to a port of the given portId.
* Send MHL vendor command to the device connected to a port of the given portId.
*
* @param portId id of port to send MHL Scratchpad command
* @param portId id of port to send MHL vendor command
* @param offset offset in the in given data
* @param length length of data. offset + length should be bound to length of data.
* @param data container for Scratchpad data. It should be 16 bytes.
* @param data container for vendor command data. It should be 16 bytes.
* @throws IllegalArgumentException if the given parameters are invalid
*/
public void sendScratchpadCommand(int portId, int offset, int length, byte[] data) {
if (data == null || data.length != SCRATCHPAD_DATA_SIZE) {
throw new IllegalArgumentException("Invalid scratchpad data.");
public void sendMhlVendorCommand(int portId, int offset, int length, byte[] data) {
if (data == null || data.length != VENDOR_DATA_SIZE) {
throw new IllegalArgumentException("Invalid vendor command data.");
}
if (offset < 0 || offset >= SCRATCHPAD_DATA_SIZE) {
if (offset < 0 || offset >= VENDOR_DATA_SIZE) {
throw new IllegalArgumentException("Invalid offset:" + offset);
}
if (length < 0 || offset + length > SCRATCHPAD_DATA_SIZE) {
if (length < 0 || offset + length > VENDOR_DATA_SIZE) {
throw new IllegalArgumentException("Invalid length:" + length);
}
try {
mService.sendScratchpadCommand(portId, offset, length, data);
mService.sendMhlVendorCommand(portId, offset, length, data);
} catch (RemoteException e) {
Log.e(TAG, "failed to send scratchpad command: ", e);
Log.e(TAG, "failed to send vendor command: ", e);
}
}
}

View File

@@ -22,7 +22,7 @@ import android.hardware.hdmi.IHdmiControlCallback;
import android.hardware.hdmi.IHdmiDeviceEventListener;
import android.hardware.hdmi.IHdmiHotplugEventListener;
import android.hardware.hdmi.IHdmiInputChangeListener;
import android.hardware.hdmi.IHdmiMhlScratchpadCommandListener;
import android.hardware.hdmi.IHdmiMhlVendorCommandListener;
import android.hardware.hdmi.IHdmiRecordListener;
import android.hardware.hdmi.IHdmiSystemAudioModeChangeListener;
import android.hardware.hdmi.IHdmiVendorCommandListener;
@@ -67,6 +67,6 @@ interface IHdmiControlService {
void stopOneTouchRecord(int recorderAddress);
void startTimerRecording(int recorderAddress, int sourceType, in byte[] recordSource);
void clearTimerRecording(int recorderAddress, int sourceType, in byte[] recordSource);
void sendScratchpadCommand(int portId, int offset, int length, in byte[] data);
void addHdmiMhlScratchpadCommandListener(IHdmiMhlScratchpadCommandListener listener);
void sendMhlVendorCommand(int portId, int offset, int length, in byte[] data);
void addHdmiMhlVendorCommandListener(IHdmiMhlVendorCommandListener listener);
}

View File

@@ -17,11 +17,10 @@
package android.hardware.hdmi;
/**
* Callback interface definition for MHL client to get the scratchpad
* command.
* Callback interface definition for MHL client to get the vendor command.
*
* @hide
*/
oneway interface IHdmiMhlScratchpadCommandListener {
oneway interface IHdmiMhlVendorCommandListener {
void onReceived(int portId, int offset, int length, in byte[] data);
}

View File

@@ -43,7 +43,7 @@ import android.hardware.hdmi.IHdmiControlService;
import android.hardware.hdmi.IHdmiDeviceEventListener;
import android.hardware.hdmi.IHdmiHotplugEventListener;
import android.hardware.hdmi.IHdmiInputChangeListener;
import android.hardware.hdmi.IHdmiMhlScratchpadCommandListener;
import android.hardware.hdmi.IHdmiMhlVendorCommandListener;
import android.hardware.hdmi.IHdmiRecordListener;
import android.hardware.hdmi.IHdmiSystemAudioModeChangeListener;
import android.hardware.hdmi.IHdmiVendorCommandListener;
@@ -247,10 +247,10 @@ public final class HdmiControlService extends SystemService {
@GuardedBy("mLock")
private boolean mMhlInputChangeEnabled;
// List of records for MHL Scratchpad command listener to handle the caller killed in action.
// List of records for MHL Vendor command listener to handle the caller killed in action.
@GuardedBy("mLock")
private final ArrayList<HdmiMhlScratchpadCommandListenerRecord>
mScratchpadCommandListenerRecords = new ArrayList<>();
private final ArrayList<HdmiMhlVendorCommandListenerRecord>
mMhlVendorCommandListenerRecords = new ArrayList<>();
@GuardedBy("mLock")
private List<HdmiDeviceInfo> mMhlDevices;
@@ -928,16 +928,16 @@ public final class HdmiControlService extends SystemService {
return mMhlDevices;
}
private class HdmiMhlScratchpadCommandListenerRecord implements IBinder.DeathRecipient {
private final IHdmiMhlScratchpadCommandListener mListener;
private class HdmiMhlVendorCommandListenerRecord implements IBinder.DeathRecipient {
private final IHdmiMhlVendorCommandListener mListener;
public HdmiMhlScratchpadCommandListenerRecord(IHdmiMhlScratchpadCommandListener listener) {
public HdmiMhlVendorCommandListenerRecord(IHdmiMhlVendorCommandListener listener) {
mListener = listener;
}
@Override
public void binderDied() {
mScratchpadCommandListenerRecords.remove(this);
mMhlVendorCommandListenerRecords.remove(this);
}
}
@@ -1403,7 +1403,7 @@ public final class HdmiControlService extends SystemService {
}
@Override
public void sendScratchpadCommand(final int portId, final int offset, final int length,
public void sendMhlVendorCommand(final int portId, final int offset, final int length,
final byte[] data) {
enforceAccessPermission();
runOnServiceThread(new Runnable() {
@@ -1418,16 +1418,16 @@ public final class HdmiControlService extends SystemService {
Slog.w(TAG, "Invalid port id:" + portId);
return;
}
mMhlController.sendScratchpadCommand(portId, offset, length, data);
mMhlController.sendVendorCommand(portId, offset, length, data);
}
});
}
@Override
public void addHdmiMhlScratchpadCommandListener(
IHdmiMhlScratchpadCommandListener listener) {
public void addHdmiMhlVendorCommandListener(
IHdmiMhlVendorCommandListener listener) {
enforceAccessPermission();
HdmiControlService.this.addHdmiMhlScratchpadCommandListener(listener);
HdmiControlService.this.addHdmiMhlVendorCommandListener(listener);
}
@Override
@@ -1880,9 +1880,9 @@ public final class HdmiControlService extends SystemService {
}
}
private void addHdmiMhlScratchpadCommandListener(IHdmiMhlScratchpadCommandListener listener) {
HdmiMhlScratchpadCommandListenerRecord record =
new HdmiMhlScratchpadCommandListenerRecord(listener);
private void addHdmiMhlVendorCommandListener(IHdmiMhlVendorCommandListener listener) {
HdmiMhlVendorCommandListenerRecord record =
new HdmiMhlVendorCommandListenerRecord(listener);
try {
listener.asBinder().linkToDeath(record, 0);
} catch (RemoteException e) {
@@ -1891,18 +1891,17 @@ public final class HdmiControlService extends SystemService {
}
synchronized (mLock) {
mScratchpadCommandListenerRecords.add(record);
mMhlVendorCommandListenerRecords.add(record);
}
}
void invokeScratchpadCommandListeners(int portId, int offest, int length, byte[] data) {
void invokeMhlVendorCommandListeners(int portId, int offest, int length, byte[] data) {
synchronized (mLock) {
for (HdmiMhlScratchpadCommandListenerRecord record :
mScratchpadCommandListenerRecords) {
for (HdmiMhlVendorCommandListenerRecord record : mMhlVendorCommandListenerRecords) {
try {
record.mListener.onReceived(portId, offest, length, data);
} catch (RemoteException e) {
Slog.e(TAG, "Failed to notify scratchpad command", e);
Slog.e(TAG, "Failed to notify MHL vendor command", e);
}
}
}

View File

@@ -106,7 +106,7 @@ final class HdmiMhlControllerStub {
}
void sendScratchpadCommand(int portId, int offset, int length, byte[] data) {
void sendVendorCommand(int portId, int offset, int length, byte[] data) {
}
void setOption(int flag, int value) {