Convert all comments into "doxygen-ready" comments.

Bug: 36453077
Test: mma
Change-Id: I0b1f77dfae5d2258969e33d85ecf45401ffbdfaa
diff --git a/audio/2.0/IDevice.hal b/audio/2.0/IDevice.hal
index 2b5329b..62c2081 100644
--- a/audio/2.0/IDevice.hal
+++ b/audio/2.0/IDevice.hal
@@ -23,14 +23,14 @@
 interface IDevice {
     typedef android.hardware.audio@2.0::Result Result;
 
-    /*
+    /**
      * Returns whether the audio hardware interface has been initialized.
      *
      * @return retval OK on success, NOT_INITIALIZED on failure.
      */
     initCheck() generates (Result retval);
 
-    /*
+    /**
      * Sets the audio volume for all audio activities other than voice call. If
      * NOT_SUPPORTED is returned, the software mixer will emulate this
      * capability.
@@ -40,7 +40,7 @@
      */
     setMasterVolume(float volume) generates (Result retval);
 
-    /*
+    /**
      * Get the current master volume value for the HAL, if the HAL supports
      * master volume control. For example, AudioFlinger will query this value
      * from the primary audio HAL when the service starts and use the value for
@@ -52,7 +52,7 @@
      */
     getMasterVolume() generates (Result retval, float volume);
 
-    /*
+    /**
      * Sets microphone muting state.
      *
      * @param mute whether microphone is muted.
@@ -60,7 +60,7 @@
      */
     setMicMute(bool mute) generates (Result retval);
 
-    /*
+    /**
      * Gets whether microphone is muted.
      *
      * @return retval operation completion status.
@@ -68,7 +68,7 @@
      */
     getMicMute() generates (Result retval, bool mute);
 
-    /*
+    /**
      * Set the audio mute status for all audio activities. If the return value
      * is NOT_SUPPORTED, the software mixer will emulate this capability.
      *
@@ -89,7 +89,7 @@
      */
     getMasterMute() generates (Result retval, bool mute);
 
-    /*
+    /**
      * Returns audio input buffer size according to parameters passed or
      * INVALID_ARGUMENTS if one of the parameters is not supported.
      *
@@ -100,7 +100,7 @@
     getInputBufferSize(AudioConfig config)
             generates (Result retval, uint64_t bufferSize);
 
-    /*
+    /**
      * This method creates and opens the audio hardware output stream.
      * If the stream can not be opened with the proposed audio config,
      * HAL must provide suggested values for the audio config.
@@ -122,7 +122,7 @@
                     IStreamOut outStream,
                     AudioConfig suggestedConfig);
 
-    /*
+    /**
      * This method creates and opens the audio hardware input stream.
      * If the stream can not be opened with the proposed audio config,
      * HAL must provide suggested values for the audio config.
@@ -146,14 +146,14 @@
                     IStreamIn inStream,
                     AudioConfig suggestedConfig);
 
-    /*
+    /**
      * Returns whether HAL supports audio patches.
      *
      * @return supports true if audio patches are supported.
      */
     supportsAudioPatches() generates (bool supports);
 
-    /*
+    /**
      * Creates an audio patch between several source and sink ports.  The handle
      * is allocated by the HAL and must be unique for this audio HAL module.
      *
@@ -165,7 +165,7 @@
     createAudioPatch(vec<AudioPortConfig> sources, vec<AudioPortConfig> sinks)
             generates (Result retval, AudioPatchHandle patch);
 
-    /*
+    /**
      * Release an audio patch.
      *
      * @param patch patch handle.
@@ -173,7 +173,7 @@
      */
     releaseAudioPatch(AudioPatchHandle patch) generates (Result retval);
 
-    /*
+    /**
      * Returns the list of supported attributes for a given audio port.
      *
      * As input, 'port' contains the information (type, role, address etc...)
@@ -189,7 +189,7 @@
     getAudioPort(AudioPort port)
             generates (Result retval, AudioPort resultPort);
 
-    /*
+    /**
      * Set audio port configuration.
      *
      * @param config audio port configuration.
@@ -197,7 +197,7 @@
      */
     setAudioPortConfig(AudioPortConfig config) generates (Result retval);
 
-    /*
+    /**
      * Gets the HW synchronization source of the device. Calling this method is
      * equivalent to getting AUDIO_PARAMETER_HW_AV_SYNC on the legacy HAL.
      *
@@ -205,7 +205,7 @@
      */
     getHwAvSync() generates (AudioHwSync hwAvSync);
 
-    /*
+    /**
      * Sets whether the screen is on. Calling this method is equivalent to
      * setting AUDIO_PARAMETER_KEY_SCREEN_STATE on the legacy HAL.
      *
@@ -214,7 +214,7 @@
      */
     setScreenState(bool turnedOn) generates (Result retval);
 
-    /*
+    /**
      * Generic method for retrieving vendor-specific parameter values.
      * The framework does not interpret the parameters, they are passed
      * in an opaque manner between a vendor application and HAL.
@@ -226,7 +226,7 @@
     getParameters(vec<string> keys)
             generates (Result retval, vec<ParameterValue> parameters);
 
-    /*
+    /**
      * Generic method for setting vendor-specific parameter values.
      * The framework does not interpret the parameters, they are passed
      * in an opaque manner between a vendor application and HAL.
@@ -236,7 +236,7 @@
      */
     setParameters(vec<ParameterValue> parameters) generates (Result retval);
 
-    /*
+    /**
      * Dumps information about the stream into the provided file descriptor.
      * This is used for the dumpsys facility.
      *
diff --git a/audio/2.0/IDevicesFactory.hal b/audio/2.0/IDevicesFactory.hal
index 0ef6bc5..6bbe7a1 100644
--- a/audio/2.0/IDevicesFactory.hal
+++ b/audio/2.0/IDevicesFactory.hal
@@ -30,7 +30,7 @@
         STUB
     };
 
-    /*
+    /**
      * Opens an audio device. To close the device, it is necessary to release
      * references to the returned device object.
      *
diff --git a/audio/2.0/IPrimaryDevice.hal b/audio/2.0/IPrimaryDevice.hal
index f1dd56e..adeb366 100644
--- a/audio/2.0/IPrimaryDevice.hal
+++ b/audio/2.0/IPrimaryDevice.hal
@@ -22,7 +22,7 @@
 interface IPrimaryDevice extends IDevice {
     typedef android.hardware.audio@2.0::Result Result;
 
-    /*
+    /**
      * Sets the audio volume of a voice call.
      *
      * @param volume 1.0f means unity, 0.0f is zero.
@@ -30,7 +30,7 @@
      */
     setVoiceVolume(float volume) generates (Result retval);
 
-    /*
+    /**
      * This method is used to notify the HAL about audio mode changes.
      *
      * @param mode new mode.
@@ -38,7 +38,7 @@
      */
     setMode(AudioMode mode) generates (Result retval);
 
-    /*
+    /**
      * Gets whether BT SCO Noise Reduction and Echo Cancellation are enabled.
      * Calling this method is equivalent to getting AUDIO_PARAMETER_KEY_BT_NREC
      * on the legacy HAL.
@@ -48,7 +48,7 @@
      */
     getBtScoNrecEnabled() generates (Result retval, bool enabled);
 
-    /*
+    /**
      * Sets whether BT SCO Noise Reduction and Echo Cancellation are enabled.
      * Calling this method is equivalent to setting AUDIO_PARAMETER_KEY_BT_NREC
      * on the legacy HAL.
@@ -58,7 +58,7 @@
      */
     setBtScoNrecEnabled(bool enabled) generates (Result retval);
 
-    /*
+    /**
      * Gets whether BT SCO Wideband mode is enabled. Calling this method is
      * equivalent to getting AUDIO_PARAMETER_KEY_BT_SCO_WB on the legacy HAL.
      *
@@ -67,7 +67,7 @@
      */
     getBtScoWidebandEnabled() generates (Result retval, bool enabled);
 
-    /*
+    /**
      * Sets whether BT SCO Wideband mode is enabled. Calling this method is
      * equivalent to setting AUDIO_PARAMETER_KEY_BT_SCO_WB on the legacy HAL.
      *
@@ -83,7 +83,7 @@
         FULL
     };
 
-    /*
+    /**
      * Gets current TTY mode selection. Calling this method is equivalent to
      * getting AUDIO_PARAMETER_KEY_TTY_MODE on the legacy HAL.
      *
@@ -92,7 +92,7 @@
      */
     getTtyMode() generates (Result retval, TtyMode mode);
 
-    /*
+    /**
      * Sets current TTY mode. Calling this method is equivalent to setting
      * AUDIO_PARAMETER_KEY_TTY_MODE on the legacy HAL.
      *
@@ -101,7 +101,7 @@
      */
     setTtyMode(TtyMode mode) generates (Result retval);
 
-    /*
+    /**
      * Gets whether Hearing Aid Compatibility - Telecoil (HAC-T) mode is
      * enabled. Calling this method is equivalent to getting
      * AUDIO_PARAMETER_KEY_HAC on the legacy HAL.
@@ -111,7 +111,7 @@
      */
     getHacEnabled() generates (Result retval, bool enabled);
 
-    /*
+    /**
      * Sets whether Hearing Aid Compatibility - Telecoil (HAC-T) mode is
      * enabled. Calling this method is equivalent to setting
      * AUDIO_PARAMETER_KEY_HAC on the legacy HAL.
diff --git a/audio/2.0/IStream.hal b/audio/2.0/IStream.hal
index 8de7851..2b9cc06 100644
--- a/audio/2.0/IStream.hal
+++ b/audio/2.0/IStream.hal
@@ -22,14 +22,14 @@
 interface IStream {
     typedef android.hardware.audio@2.0::Result Result;
 
-    /*
+    /**
      * Return the frame size (number of bytes per sample).
      *
      * @return frameSize frame size in bytes.
      */
     getFrameSize() generates (uint64_t frameSize);
 
-    /*
+    /**
      * Return the frame count of the buffer. Calling this method is equivalent
      * to getting AUDIO_PARAMETER_STREAM_FRAME_COUNT on the legacy HAL.
      *
@@ -37,7 +37,7 @@
      */
     getFrameCount() generates (uint64_t count);
 
-    /*
+    /**
      * Return the size of input/output buffer in bytes for this stream.
      * It must be a multiple of the frame size.
      *
@@ -45,14 +45,14 @@
      */
     getBufferSize() generates (uint64_t bufferSize);
 
-    /*
+    /**
      * Return the sampling rate in Hz.
      *
      * @return sampleRateHz sample rate in Hz.
      */
     getSampleRate() generates (uint32_t sampleRateHz);
 
-    /*
+    /**
      * Return supported sampling rates of the stream. Calling this method is
      * equivalent to getting AUDIO_PARAMETER_STREAM_SUP_SAMPLING_RATES on the
      * legacy HAL.
@@ -61,7 +61,7 @@
      */
     getSupportedSampleRates() generates (vec<uint32_t> sampleRates);
 
-    /*
+    /**
      * Sets the sampling rate of the stream. Calling this method is equivalent
      * to setting AUDIO_PARAMETER_STREAM_SAMPLING_RATE on the legacy HAL.
      *
@@ -70,14 +70,14 @@
      */
     setSampleRate(uint32_t sampleRateHz) generates (Result retval);
 
-    /*
+    /**
      * Return the channel mask of the stream.
      *
      * @return mask channel mask.
      */
     getChannelMask() generates (AudioChannelMask mask);
 
-    /*
+    /**
      * Return supported channel masks of the stream. Calling this method is
      * equivalent to getting AUDIO_PARAMETER_STREAM_SUP_CHANNELS on the legacy
      * HAL.
@@ -86,7 +86,7 @@
      */
     getSupportedChannelMasks() generates (vec<AudioChannelMask> masks);
 
-    /*
+    /**
      * Sets the channel mask of the stream. Calling this method is equivalent to
      * setting AUDIO_PARAMETER_STREAM_CHANNELS on the legacy HAL.
      *
@@ -95,14 +95,14 @@
      */
     setChannelMask(AudioChannelMask mask) generates (Result retval);
 
-    /*
+    /**
      * Return the audio format of the stream.
      *
      * @return format audio format.
      */
     getFormat() generates (AudioFormat format);
 
-    /*
+    /**
      * Return supported audio formats of the stream. Calling this method is
      * equivalent to getting AUDIO_PARAMETER_STREAM_SUP_FORMATS on the legacy
      * HAL.
@@ -111,7 +111,7 @@
      */
     getSupportedFormats() generates (vec<AudioFormat> formats);
 
-    /*
+    /**
      * Sets the audio format of the stream. Calling this method is equivalent to
      * setting AUDIO_PARAMETER_STREAM_FORMAT on the legacy HAL.
      *
@@ -120,7 +120,7 @@
      */
     setFormat(AudioFormat format) generates (Result retval);
 
-    /*
+    /**
      * Convenience method for retrieving several stream parameters in
      * one transaction.
      *
@@ -131,7 +131,7 @@
     getAudioProperties() generates (
             uint32_t sampleRateHz, AudioChannelMask mask, AudioFormat format);
 
-    /*
+    /**
      * Applies audio effect to the stream.
      *
      * @param effectId effect ID (obtained from IEffectsFactory.createEffect) of
@@ -140,7 +140,7 @@
      */
     addEffect(uint64_t effectId) generates (Result retval);
 
-    /*
+    /**
      * Stops application of the effect to the stream.
      *
      * @param effectId effect ID (obtained from IEffectsFactory.createEffect) of
@@ -149,7 +149,7 @@
      */
     removeEffect(uint64_t effectId) generates (Result retval);
 
-    /*
+    /**
      * Put the audio hardware input/output into standby mode.
      * Driver must exit from standby mode at the next I/O operation.
      *
@@ -157,14 +157,14 @@
      */
     standby() generates (Result retval);
 
-    /*
+    /**
      * Return the set of device(s) which this stream is connected to.
      *
      * @return device set of device(s) which this stream is connected to.
      */
     getDevice() generates (AudioDevice device);
 
-    /*
+    /**
      * Connects the stream to the device.
      *
      * This method must only be used for HALs that do not support
@@ -177,7 +177,7 @@
      */
     setDevice(DeviceAddress address) generates (Result retval);
 
-    /*
+    /**
      * Notifies the stream about device connection state. Calling this method is
      * equivalent to setting AUDIO_PARAMETER_DEVICE_[DIS]CONNECT on the legacy
      * HAL.
@@ -189,7 +189,7 @@
     setConnectedState(DeviceAddress address, bool connected)
             generates (Result retval);
 
-    /*
+    /**
      * Sets the HW synchronization source. Calling this method is equivalent to
      * setting AUDIO_PARAMETER_STREAM_HW_AV_SYNC on the legacy HAL.
      *
@@ -198,7 +198,7 @@
      */
     setHwAvSync(AudioHwSync hwAvSync) generates (Result retval);
 
-    /*
+    /**
      * Generic method for retrieving vendor-specific parameter values.
      * The framework does not interpret the parameters, they are passed
      * in an opaque manner between a vendor application and HAL.
@@ -210,7 +210,7 @@
     getParameters(vec<string> keys)
             generates (Result retval, vec<ParameterValue> parameters);
 
-    /*
+    /**
      * Generic method for setting vendor-specific parameter values.
      * The framework does not interpret the parameters, they are passed
      * in an opaque manner between a vendor application and HAL.
@@ -220,7 +220,7 @@
      */
     setParameters(vec<ParameterValue> parameters) generates (Result retval);
 
-    /*
+    /**
      * Dumps information about the stream into the provided file descriptor.
      * This is used for the dumpsys facility.
      *
@@ -228,7 +228,7 @@
      */
     debugDump(handle fd);
 
-    /*
+    /**
      * Called by the framework to start a stream operating in mmap mode.
      * createMmapBuffer() must be called before calling start().
      * Function only implemented by streams operating in mmap mode.
@@ -249,7 +249,7 @@
      */
     stop() generates (Result retval) ;
 
-    /*
+    /**
      * Called by the framework to retrieve information on the mmap buffer used for audio
      * samples transfer.
      * Function only implemented by streams operating in mmap mode.
@@ -266,7 +266,7 @@
     createMmapBuffer(int32_t minSizeFrames)
             generates (Result retval, MmapBufferInfo info);
 
-    /*
+    /**
      * Called by the framework to read current read/write position in the mmap buffer
      * with associated time stamp.
      * Function only implemented by streams operating in mmap mode.
@@ -280,7 +280,7 @@
     getMmapPosition()
             generates (Result retval, MmapPosition position);
 
-    /*
+    /**
      * Called by the framework to deinitialize the stream and free up
      * all the currently allocated resources. It is recommended to close
      * the stream on the client side as soon as it is becomes unused.
diff --git a/audio/2.0/IStreamIn.hal b/audio/2.0/IStreamIn.hal
index 6f1f9df..6b79f48 100644
--- a/audio/2.0/IStreamIn.hal
+++ b/audio/2.0/IStreamIn.hal
@@ -22,7 +22,7 @@
 interface IStreamIn extends IStream {
     typedef android.hardware.audio@2.0::Result Result;
 
-    /*
+    /**
      * Returns the source descriptor of the input stream. Calling this method is
      * equivalent to getting AUDIO_PARAMETER_STREAM_INPUT_SOURCE on the legacy
      * HAL.
@@ -32,7 +32,7 @@
      */
     getAudioSource() generates (Result retval, AudioSource source);
 
-    /*
+    /**
      * Set the input gain for the audio driver.
      *
      * @param gain 1.0f is unity, 0.0f is zero.
@@ -40,7 +40,7 @@
      */
     setGain(float gain) generates (Result retval);
 
-    /*
+    /**
      * Commands that can be executed on the driver reader thread.
      */
     enum ReadCommand : int32_t {
@@ -48,7 +48,7 @@
         GET_CAPTURE_POSITION
     };
 
-    /*
+    /**
      * Data structure passed to the driver for executing commands
      * on the driver reader thread.
      */
@@ -60,7 +60,7 @@
         } params;
     };
 
-    /*
+    /**
      * Data structure passed back to the client via status message queue
      * of 'read' operation.
      *
@@ -81,7 +81,7 @@
         } reply;
     };
 
-    /*
+    /**
      * Set up required transports for receiving audio buffers from the driver.
      *
      * The transport consists of three message queues:
@@ -119,7 +119,7 @@
             fmq_sync<ReadStatus> statusMQ,
             ThreadInfo threadInfo);
 
-    /*
+    /**
      * Return the amount of input frames lost in the audio driver since the last
      * call of this function.
      *
diff --git a/audio/2.0/IStreamOut.hal b/audio/2.0/IStreamOut.hal
index 9ee32c5..84b7447 100644
--- a/audio/2.0/IStreamOut.hal
+++ b/audio/2.0/IStreamOut.hal
@@ -23,14 +23,14 @@
 interface IStreamOut extends IStream {
     typedef android.hardware.audio@2.0::Result Result;
 
-    /*
+    /**
      * Return the audio hardware driver estimated latency in milliseconds.
      *
      * @return latencyMs latency in milliseconds.
      */
     getLatency() generates (uint32_t latencyMs);
 
-    /*
+    /**
      * This method is used in situations where audio mixing is done in the
      * hardware. This method serves as a direct interface with hardware,
      * allowing to directly set the volume as apposed to via the framework.
@@ -43,7 +43,7 @@
      */
     setVolume(float left, float right) generates (Result retval);
 
-    /*
+    /**
      * Commands that can be executed on the driver writer thread.
      */
     enum WriteCommand : int32_t {
@@ -52,7 +52,7 @@
         GET_LATENCY
     };
 
-    /*
+    /**
      * Data structure passed back to the client via status message queue
      * of 'write' operation.
      *
@@ -75,7 +75,7 @@
         } reply;
     };
 
-    /*
+    /**
      * Set up required transports for passing audio buffers to the driver.
      *
      * The transport consists of three message queues:
@@ -112,7 +112,7 @@
             fmq_sync<WriteStatus> statusMQ,
             ThreadInfo threadInfo);
 
-    /*
+    /**
      * Return the number of audio frames written by the audio DSP to DAC since
      * the output has exited standby.
      *
@@ -121,7 +121,7 @@
      */
     getRenderPosition() generates (Result retval, uint32_t dspFrames);
 
-    /*
+    /**
      * Get the local time at which the next write to the audio driver will be
      * presented. The units are microseconds, where the epoch is decided by the
      * local audio HAL.
@@ -131,7 +131,7 @@
      */
     getNextWriteTimestamp() generates (Result retval, int64_t timestampUs);
 
-    /*
+    /**
      * Set the callback interface for notifying completion of non-blocking
      * write and drain.
      *
@@ -146,7 +146,7 @@
      */
     setCallback(IStreamOutCallback callback) generates (Result retval);
 
-    /*
+    /**
      * Clears the callback previously set via 'setCallback' method.
      *
      * Warning: failure to call this method results in callback implementation
@@ -156,7 +156,7 @@
      */
     clearCallback() generates (Result retval);
 
-    /*
+    /**
      * Returns whether HAL supports pausing and resuming of streams.
      *
      * @return supportsPause true if pausing is supported.
@@ -179,7 +179,7 @@
      */
     pause() generates (Result retval);
 
-    /*
+    /**
      * Notifies to the audio driver to resume playback following a pause.
      * Returns error INVALID_STATE if called without matching pause.
      *
@@ -189,7 +189,7 @@
      */
     resume() generates (Result retval);
 
-    /*
+    /**
      * Returns whether HAL supports draining of streams.
      *
      * @return supports true if draining is supported.
@@ -220,7 +220,7 @@
      */
     drain(AudioDrain type) generates (Result retval);
 
-    /*
+    /**
      * Notifies to the audio driver to flush the queued data. Stream must
      * already be paused before calling 'flush'.
      *
@@ -230,7 +230,7 @@
      */
     flush() generates (Result retval);
 
-    /*
+    /**
      * Return a recent count of the number of audio frames presented to an
      * external observer. This excludes frames which have been written but are
      * still in the pipeline. The count is not reset to zero when output enters
diff --git a/audio/2.0/IStreamOutCallback.hal b/audio/2.0/IStreamOutCallback.hal
index cdb38de..01e123c 100644
--- a/audio/2.0/IStreamOutCallback.hal
+++ b/audio/2.0/IStreamOutCallback.hal
@@ -16,21 +16,21 @@
 
 package android.hardware.audio@2.0;
 
-/*
+/**
  * Asynchronous write callback interface.
  */
 interface IStreamOutCallback {
-    /*
+    /**
      * Non blocking write completed.
      */
     oneway onWriteReady();
 
-    /*
+    /**
      * Drain completed.
      */
     oneway onDrainReady();
 
-    /*
+    /**
      * Stream hit an error.
      */
     oneway onError();
diff --git a/audio/2.0/types.hal b/audio/2.0/types.hal
index 8e9ff14..93118c2 100644
--- a/audio/2.0/types.hal
+++ b/audio/2.0/types.hal
@@ -28,14 +28,16 @@
 
 @export(name="audio_drain_type_t", value_prefix="AUDIO_DRAIN_")
 enum AudioDrain : int32_t {
-    /* drain() returns when all data has been played. */
+    /** drain() returns when all data has been played. */
     ALL,
-    /* drain() returns a short time before all data from the current track has
-       been played to give time for gapless track switch. */
+    /**
+     * drain() returns a short time before all data from the current track has
+     * been played to give time for gapless track switch.
+     */
     EARLY_NOTIFY
 };
 
-/*
+/**
  * A substitute for POSIX timespec.
  */
 struct TimeSpec {
@@ -43,7 +45,7 @@
     uint64_t tvNSec;  // nanoseconds
 };
 
-/*
+/**
  * IEEE 802 MAC address.
  */
 typedef uint8_t[6] MacAddress;
@@ -53,7 +55,7 @@
     string value;
 };
 
-/*
+/**
  * Specifies a device in case when several devices of the same type
  * can be connected (e.g. BT A2DP, USB).
  */
@@ -71,7 +73,7 @@
     string rSubmixAddress;  // used for REMOTE_SUBMIX
 };
 
-/*
+/**
  * Mmap buffer descriptor returned by IStream.createMmapBuffer().
  * Used by streams opened in mmap mode.
  */
@@ -81,7 +83,7 @@
     int32_t burstSizeFrames;      // transfer size granularity in frames
 };
 
-/*
+/**
  * Mmap buffer read/write position returned by IStream.getMmapPosition().
  * Used by streams opened in mmap mode.
  */
@@ -90,7 +92,7 @@
     int32_t  positionFrames;  // increasing 32 bit frame count reset when IStream.stop() is called
 };
 
-/*
+/**
  * The message queue flags used to synchronize reads and writes from
  * message queues used by StreamIn and StreamOut.
  */
diff --git a/audio/common/2.0/types.hal b/audio/common/2.0/types.hal
index dd7281d..7c49795 100644
--- a/audio/common/2.0/types.hal
+++ b/audio/common/2.0/types.hal
@@ -16,28 +16,28 @@
 
 package android.hardware.audio.common@2.0;
 
-/*
+/**
  *
  *  IDs and Handles
  *
  */
 
-/*
+/**
  * Handle type for identifying audio sources and sinks.
  */
 typedef int32_t AudioIoHandle;
 
-/*
+/**
  * Audio hw module handle functions or structures referencing a module.
  */
 typedef int32_t AudioModuleHandle;
 
-/*
+/**
  * Each port has a unique ID or handle allocated by policy manager.
  */
 typedef int32_t AudioPortHandle;
 
-/*
+/**
  * Each patch is identified by a handle at the interface used to create that
  * patch. For instance, when a patch is created by the audio HAL, the HAL
  * allocates and returns a handle.  This handle is unique to a given audio HAL
@@ -47,12 +47,12 @@
  */
 typedef int32_t AudioPatchHandle;
 
-/*
+/**
  * A HW synchronization source returned by the audio HAL.
  */
 typedef uint32_t AudioHwSync;
 
-/*
+/**
  * Each port has a unique ID or handle allocated by policy manager.
  */
 @export(name="")
@@ -63,7 +63,7 @@
     AUDIO_PATCH_HANDLE_NONE = 0,
 };
 
-/*
+/**
  * Commonly used structure for passing unique identifieds (UUID).
  * For the definition of UUID, refer to ITU-T X.667 spec.
  */
@@ -76,13 +76,13 @@
 };
 
 
-/*
+/**
  *
  *  Audio streams
  *
  */
 
-/*
+/**
  * Audio stream type describing the intented use case of a stream.
  */
 @export(name="audio_stream_type_t", value_prefix="AUDIO_STREAM_")
@@ -126,13 +126,13 @@
     CAMCORDER           = 5,
     VOICE_RECOGNITION   = 6,
     VOICE_COMMUNICATION = 7,
-    /*
+    /**
      * Source for the mix to be presented remotely. An example of remote
      * presentation is Wifi Display where a dongle attached to a TV can be used
      * to play the mix captured by this audio source.
      */
     REMOTE_SUBMIX       = 8,
-    /*
+    /**
      * Source for unprocessed sound. Usage examples include level measurement
      * and raw signal analysis.
      */
@@ -141,7 +141,7 @@
     CNT,
     MAX                 = CNT - 1,
     FM_TUNER            = 1998,
-    /*
+    /**
      * A low-priority, preemptible audio source for for background software
      * hotword detection. Same tuning as VOICE_RECOGNITION.  Used only
      * internally by the framework.
@@ -150,30 +150,30 @@
 };
 
 typedef int32_t AudioSession;
-/*
+/**
  * Special audio session values.
  */
 @export(name="audio_session_t", value_prefix="AUDIO_SESSION_")
 enum AudioSessionConsts : int32_t {
-    /*
+    /**
      * Session for effects attached to a particular output stream
      * (value must be less than 0)
      */
     OUTPUT_STAGE = -1,
-    /*
+    /**
      * Session for effects applied to output mix. These effects can
      * be moved by audio policy manager to another output stream
      * (value must be 0)
      */
     OUTPUT_MIX = 0,
-    /*
+    /**
      * Application does not specify an explicit session ID to be used, and
      * requests a new session ID to be allocated. Corresponds to
      * AudioManager.AUDIO_SESSION_ID_GENERATE and
      * AudioSystem.AUDIO_SESSION_ALLOCATE.
      */
     ALLOCATE = 0,
-    /*
+    /**
      * For use with AudioRecord::start(), this indicates no trigger session.
      * It is also used with output tracks and patch tracks, which never have a
      * session.
@@ -181,7 +181,7 @@
     NONE = 0
 };
 
-/*
+/**
  * Audio format  is a 32-bit word that consists of:
  *   main format field (upper 8 bits)
  *   sub format field (lower 24 bits).
@@ -196,13 +196,13 @@
 enum AudioFormat : uint32_t {
     INVALID             = 0xFFFFFFFFUL,
     DEFAULT             = 0,
-    PCM                 = 0x00000000UL, /* DO NOT CHANGE */
+    PCM                 = 0x00000000UL, /** DO NOT CHANGE */
     MP3                 = 0x01000000UL,
     AMR_NB              = 0x02000000UL,
     AMR_WB              = 0x03000000UL,
     AAC                 = 0x04000000UL,
-    HE_AAC_V1           = 0x05000000UL, /* Deprecated, Use AAC_HE_V1*/
-    HE_AAC_V2           = 0x06000000UL, /* Deprecated, Use AAC_HE_V2*/
+    HE_AAC_V1           = 0x05000000UL, /** Deprecated, Use AAC_HE_V1 */
+    HE_AAC_V2           = 0x06000000UL, /** Deprecated, Use AAC_HE_V2 */
     VORBIS              = 0x07000000UL,
     OPUS                = 0x08000000UL,
     AC3                 = 0x09000000UL,
@@ -232,10 +232,10 @@
     APTX_HD             = 0x21000000UL,
     AC4                 = 0x22000000UL,
     LDAC                = 0x23000000UL,
-    MAIN_MASK           = 0xFF000000UL, /* Deprecated */
+    MAIN_MASK           = 0xFF000000UL, /** Deprecated */
     SUB_MASK            = 0x00FFFFFFUL,
 
-    /* Subformats */
+    /** Subformats */
     PCM_SUB_16_BIT        = 0x1, // PCM signed 16 bits
     PCM_SUB_8_BIT         = 0x2, // PCM unsigned 8 bits
     PCM_SUB_32_BIT        = 0x3, // PCM signed .31 fixed point
@@ -260,10 +260,10 @@
 
     VORBIS_SUB_NONE       = 0x0,
 
-    /* Aliases */
-    /* note != AudioFormat.ENCODING_PCM_16BIT */
+    /** Aliases */
+    /** note != AudioFormat.ENCODING_PCM_16BIT */
     PCM_16_BIT          = (PCM | PCM_SUB_16_BIT),
-    /* note != AudioFormat.ENCODING_PCM_8BIT */
+    /** note != AudioFormat.ENCODING_PCM_8BIT */
     PCM_8_BIT           = (PCM | PCM_SUB_8_BIT),
     PCM_32_BIT          = (PCM | PCM_SUB_32_BIT),
     PCM_8_24_BIT        = (PCM | PCM_SUB_8_24_BIT),
@@ -291,7 +291,7 @@
     AAC_ADTS_ELD        = (AAC_ADTS | AAC_SUB_ELD)
 };
 
-/*
+/**
  * Usage of these values highlights places in the code that use 2- or 8- channel
  * assumptions.
  */
@@ -301,7 +301,7 @@
     FCC_8 = 8  // This is typically due to audio mixer and resampler limitations
 };
 
-/*
+/**
  * A channel mask per se only defines the presence or absence of a channel, not
  * the order.  See AUDIO_INTERLEAVE_* for the platform convention of order.
  *
@@ -335,21 +335,21 @@
  */
 @export(name="", value_prefix="AUDIO_CHANNEL_")
 enum AudioChannelMask : uint32_t {
-    REPRESENTATION_POSITION = 0, /* must be 0 for compatibility */
-    /* 1 is reserved for future use */
+    REPRESENTATION_POSITION = 0, /** must be 0 for compatibility */
+    /** 1 is reserved for future use */
     REPRESENTATION_INDEX    = 2,
-    /* 3 is reserved for future use */
+    /** 3 is reserved for future use */
 
-    /* These can be a complete value of AudioChannelMask */
+    /** These can be a complete value of AudioChannelMask */
     NONE                      = 0x0,
     INVALID                   = 0xC0000000,
 
-   /*
+   /**
     * These can be the bits portion of an AudioChannelMask
     * with representation REPRESENTATION_POSITION.
     */
 
-    /* output channels */
+    /** output channels */
     OUT_FRONT_LEFT            = 0x1,
     OUT_FRONT_RIGHT           = 0x2,
     OUT_FRONT_CENTER          = 0x4,
@@ -375,7 +375,7 @@
     OUT_QUAD     = (OUT_FRONT_LEFT | OUT_FRONT_RIGHT |
             OUT_BACK_LEFT | OUT_BACK_RIGHT),
     OUT_QUAD_BACK = OUT_QUAD,
-    /* like OUT_QUAD_BACK with *_SIDE_* instead of *_BACK_* */
+    /** like OUT_QUAD_BACK with *_SIDE_* instead of *_BACK_* */
     OUT_QUAD_SIDE = (OUT_FRONT_LEFT | OUT_FRONT_RIGHT |
             OUT_SIDE_LEFT | OUT_SIDE_RIGHT),
     OUT_SURROUND = (OUT_FRONT_LEFT | OUT_FRONT_RIGHT |
@@ -385,7 +385,7 @@
             OUT_FRONT_CENTER | OUT_LOW_FREQUENCY |
             OUT_BACK_LEFT | OUT_BACK_RIGHT),
     OUT_5POINT1_BACK = OUT_5POINT1,
-    /* like OUT_5POINT1_BACK with *_SIDE_* instead of *_BACK_* */
+    /** like OUT_5POINT1_BACK with *_SIDE_* instead of *_BACK_* */
     OUT_5POINT1_SIDE = (OUT_FRONT_LEFT | OUT_FRONT_RIGHT |
             OUT_FRONT_CENTER | OUT_LOW_FREQUENCY |
             OUT_SIDE_LEFT | OUT_SIDE_RIGHT),
@@ -393,7 +393,7 @@
             OUT_FRONT_CENTER | OUT_LOW_FREQUENCY |
             OUT_BACK_LEFT | OUT_BACK_RIGHT |
             OUT_BACK_CENTER),
-    /* matches the correct AudioFormat.CHANNEL_OUT_7POINT1_SURROUND */
+    /** matches the correct AudioFormat.CHANNEL_OUT_7POINT1_SURROUND */
     OUT_7POINT1  = (OUT_FRONT_LEFT | OUT_FRONT_RIGHT |
             OUT_FRONT_CENTER | OUT_LOW_FREQUENCY |
             OUT_BACK_LEFT | OUT_BACK_RIGHT |
@@ -408,9 +408,9 @@
             OUT_TOP_FRONT_LEFT | OUT_TOP_FRONT_CENTER | OUT_TOP_FRONT_RIGHT |
             OUT_TOP_BACK_LEFT | OUT_TOP_BACK_CENTER | OUT_TOP_BACK_RIGHT),
 
-    /* These are bits only, not complete values */
+    /** These are bits only, not complete values */
 
-    /* input channels */
+    /** input channels */
     IN_LEFT            = 0x4,
     IN_RIGHT           = 0x8,
     IN_FRONT           = 0x10,
@@ -456,7 +456,7 @@
 };
 
 
-/*
+/**
  * Expresses the convention when stereo audio samples are stored interleaved
  * in an array.  This should improve readability by allowing code to use
  * symbolic indices instead of hard-coded [0] and [1].
@@ -472,7 +472,7 @@
     RIGHT  = 1,
 };
 
-/*
+/**
  * Major modes for a mobile device. The current mode setting affects audio
  * routing.
  */
@@ -492,10 +492,10 @@
 @export(name="", value_prefix="AUDIO_DEVICE_")
 enum AudioDevice : uint32_t {
     NONE                          = 0x0,
-    /* reserved bits */
+    /** reserved bits */
     BIT_IN                        = 0x80000000,
     BIT_DEFAULT                   = 0x40000000,
-    /* output devices */
+    /** output devices */
     OUT_EARPIECE                  = 0x1,
     OUT_SPEAKER                   = 0x2,
     OUT_WIRED_HEADSET             = 0x4,
@@ -508,30 +508,30 @@
     OUT_BLUETOOTH_A2DP_SPEAKER    = 0x200,
     OUT_AUX_DIGITAL               = 0x400,
     OUT_HDMI                      = OUT_AUX_DIGITAL,
-    /* uses an analog connection (multiplexed over the USB pins for instance) */
+    /** uses an analog connection (multiplexed over the USB pins for instance) */
     OUT_ANLG_DOCK_HEADSET         = 0x800,
     OUT_DGTL_DOCK_HEADSET         = 0x1000,
-    /* USB accessory mode: Android device is USB device and dock is USB host */
+    /** USB accessory mode: Android device is USB device and dock is USB host */
     OUT_USB_ACCESSORY             = 0x2000,
-    /* USB host mode: Android device is USB host and dock is USB device */
+    /** USB host mode: Android device is USB host and dock is USB device */
     OUT_USB_DEVICE                = 0x4000,
     OUT_REMOTE_SUBMIX             = 0x8000,
-    /* Telephony voice TX path */
+    /** Telephony voice TX path */
     OUT_TELEPHONY_TX              = 0x10000,
-    /* Analog jack with line impedance detected */
+    /** Analog jack with line impedance detected */
     OUT_LINE                      = 0x20000,
-    /* HDMI Audio Return Channel */
+    /** HDMI Audio Return Channel */
     OUT_HDMI_ARC                  = 0x40000,
-    /* S/PDIF out */
+    /** S/PDIF out */
     OUT_SPDIF                     = 0x80000,
-    /* FM transmitter out */
+    /** FM transmitter out */
     OUT_FM                        = 0x100000,
-    /* Line out for av devices */
+    /** Line out for av devices */
     OUT_AUX_LINE                  = 0x200000,
-    /* limited-output speaker device for acoustic safety */
+    /** limited-output speaker device for acoustic safety */
     OUT_SPEAKER_SAFE              = 0x400000,
     OUT_IP                        = 0x800000,
-    /* audio bus implemented by the audio system (e.g an MOST stereo channel) */
+    /** audio bus implemented by the audio system (e.g an MOST stereo channel) */
     OUT_BUS                       = 0x1000000,
     OUT_PROXY                     = 0x2000000,
     OUT_USB_HEADSET               = 0x4000000,
@@ -571,7 +571,7 @@
             OUT_BLUETOOTH_SCO_HEADSET |
             OUT_BLUETOOTH_SCO_CARKIT),
     OUT_ALL_USB  = (OUT_USB_ACCESSORY | OUT_USB_DEVICE | OUT_USB_HEADSET),
-    /* input devices */
+    /** input devices */
     IN_COMMUNICATION         = BIT_IN | 0x1,
     IN_AMBIENT               = BIT_IN | 0x2,
     IN_BUILTIN_MIC           = BIT_IN | 0x4,
@@ -579,7 +579,7 @@
     IN_WIRED_HEADSET         = BIT_IN | 0x10,
     IN_AUX_DIGITAL           = BIT_IN | 0x20,
     IN_HDMI                  = IN_AUX_DIGITAL,
-    /* Telephony voice RX path */
+    /** Telephony voice RX path */
     IN_VOICE_CALL            = BIT_IN | 0x40,
     IN_TELEPHONY_RX          = IN_VOICE_CALL,
     IN_BACK_MIC              = BIT_IN | 0x80,
@@ -588,18 +588,18 @@
     IN_DGTL_DOCK_HEADSET     = BIT_IN | 0x400,
     IN_USB_ACCESSORY         = BIT_IN | 0x800,
     IN_USB_DEVICE            = BIT_IN | 0x1000,
-    /* FM tuner input */
+    /** FM tuner input */
     IN_FM_TUNER              = BIT_IN | 0x2000,
-    /* TV tuner input */
+    /** TV tuner input */
     IN_TV_TUNER              = BIT_IN | 0x4000,
-    /* Analog jack with line impedance detected */
+    /** Analog jack with line impedance detected */
     IN_LINE                  = BIT_IN | 0x8000,
-    /* S/PDIF in */
+    /** S/PDIF in */
     IN_SPDIF                 = BIT_IN | 0x10000,
     IN_BLUETOOTH_A2DP        = BIT_IN | 0x20000,
     IN_LOOPBACK              = BIT_IN | 0x40000,
     IN_IP                    = BIT_IN | 0x80000,
-    /* audio bus implemented by the audio system (e.g an MOST stereo channel) */
+    /** audio bus implemented by the audio system (e.g an MOST stereo channel) */
     IN_BUS                   = BIT_IN | 0x100000,
     IN_PROXY                 = BIT_IN | 0x1000000,
     IN_USB_HEADSET           = BIT_IN | 0x2000000,
@@ -633,7 +633,7 @@
     IN_ALL_USB  = (IN_USB_ACCESSORY | IN_USB_DEVICE | IN_USB_HEADSET),
 };
 
-/*
+/**
  * The audio output flags serve two purposes:
  *
  *  - when an AudioTrack is created they indicate a "wish" to be connected to an
@@ -674,7 +674,7 @@
     VOIP_RX = 0x8000,    // preferred output for VoIP calls.
 };
 
-/*
+/**
  * The audio input flags are analogous to audio output flags.
  * Currently they are used only when an AudioRecord is created,
  * to indicate a preference to be connected to an input stream with
@@ -717,7 +717,7 @@
     MAX                                = CNT - 1,
 };
 
-/*
+/**
  * Additional information about the stream passed to hardware decoders.
  */
 struct AudioOffloadInfo {
@@ -734,7 +734,7 @@
     AudioUsage usage;
 };
 
-/*
+/**
  * Commonly used audio stream configuration parameters.
  */
 struct AudioConfig {
@@ -746,13 +746,13 @@
 };
 
 
-/*
+/**
  *
  *  Volume control
  *
  */
 
-/*
+/**
  * Type of gain control exposed by an audio port.
  */
 @export(name="", value_prefix="AUDIO_GAIN_MODE_")
@@ -762,7 +762,7 @@
     RAMP = 0x4      // supports gain ramps
 };
 
-/*
+/**
  * An audio_gain struct is a representation of a gain stage.
  * A gain stage is always attached to an audio port.
  */
@@ -777,7 +777,7 @@
     uint32_t maxRampMs;   // maximum ramp duration in ms
 };
 
-/*
+/**
  * The gain configuration structure is used to get or set the gain values of a
  * given port.
  */
@@ -785,7 +785,7 @@
     int32_t index;  // index of the corresponding AudioGain in AudioPort.gains
     AudioGainMode mode;
     AudioChannelMask channelMask;  // channels which gain value follows
-    /*
+    /**
      * 4 = sizeof(AudioChannelMask),
      * 8 is not "FCC_8", so it won't need to be changed for > 8 channels.
      * Gain values in millibels for each channel ordered from LSb to MSb in
@@ -797,13 +797,13 @@
 };
 
 
-/*
+/**
  *
  *  Routing control
  *
  */
 
-/*
+/**
  * Types defined here are used to describe an audio source or sink at internal
  * framework interfaces (audio policy, patch panel) or at the audio HAL.
  * Sink and sources are grouped in a concept of “audio port” representing an
@@ -811,7 +811,7 @@
  * the interface.
  */
 
-/* Audio port role: either source or sink */
+/** Audio port role: either source or sink */
 @export(name="audio_port_role_t", value_prefix="AUDIO_PORT_ROLE_")
 enum AudioPortRole : int32_t {
     NONE,
@@ -819,7 +819,7 @@
     SINK,
 };
 
-/*
+/**
  * Audio port type indicates if it is a session (e.g AudioTrack), a mix (e.g
  * PlaybackThread output) or a physical device (e.g OUT_SPEAKER)
  */
@@ -831,7 +831,7 @@
     SESSION,
 };
 
-/*
+/**
  * Extension for audio port configuration structure when the audio port is a
  * hardware device.
  */
@@ -841,7 +841,7 @@
     uint8_t[32] address;         // device address. "" if N/A
 };
 
-/*
+/**
  * Extension for audio port configuration structure when the audio port is an
  * audio session.
  */
@@ -849,7 +849,7 @@
     AudioSession session;
 };
 
-/*
+/**
  * Flags indicating which fields are to be considered in AudioPortConfig.
  */
 @export(name="", value_prefix="AUDIO_PORT_CONFIG_")
@@ -861,7 +861,7 @@
     ALL = SAMPLE_RATE | CHANNEL_MASK | FORMAT | GAIN
 };
 
-/*
+/**
  * Audio port configuration structure used to specify a particular configuration
  * of an audio port.
  */
@@ -888,7 +888,7 @@
     } ext;
 };
 
-/*
+/**
  * Extension for audio port structure when the audio port is a hardware device.
  */
 struct AudioPortDeviceExt {
@@ -897,7 +897,7 @@
     uint8_t[32] address;
 };
 
-/*
+/**
  * Latency class of the audio mix.
  */
 @export(name="audio_mix_latency_class_t", value_prefix="AUDIO_LATENCY_")
@@ -912,7 +912,7 @@
     AudioMixLatencyClass latencyClass;
 };
 
-/*
+/**
  * Extension for audio port structure when the audio port is an audio session.
  */
 struct AudioPortSessionExt {
diff --git a/audio/effect/2.0/IAcousticEchoCancelerEffect.hal b/audio/effect/2.0/IAcousticEchoCancelerEffect.hal
index 9e2e0c3..b5f94a5 100644
--- a/audio/effect/2.0/IAcousticEchoCancelerEffect.hal
+++ b/audio/effect/2.0/IAcousticEchoCancelerEffect.hal
@@ -20,12 +20,12 @@
 import IEffect;
 
 interface IAcousticEchoCancelerEffect extends IEffect {
-    /*
+    /**
      * Sets echo delay value in milliseconds.
      */
     setEchoDelay(uint32_t echoDelayMs) generates (Result retval);
 
-    /*
+    /**
      * Gets echo delay value in milliseconds.
      */
     getEchoDelay() generates (Result retval, uint32_t echoDelayMs);
diff --git a/audio/effect/2.0/IAutomaticGainControlEffect.hal b/audio/effect/2.0/IAutomaticGainControlEffect.hal
index a02002d..b8ca7e3 100644
--- a/audio/effect/2.0/IAutomaticGainControlEffect.hal
+++ b/audio/effect/2.0/IAutomaticGainControlEffect.hal
@@ -20,32 +20,32 @@
 import IEffect;
 
 interface IAutomaticGainControlEffect extends IEffect {
-    /*
+    /**
      * Sets target level in millibels.
      */
     setTargetLevel(int16_t targetLevelMb) generates (Result retval);
 
-    /*
+    /**
      * Gets target level.
      */
     getTargetLevel() generates (Result retval, int16_t targetLevelMb);
 
-    /*
+    /**
      * Sets gain in the compression range in millibels.
      */
     setCompGain(int16_t compGainMb) generates (Result retval);
 
-    /*
+    /**
      * Gets gain in the compression range.
      */
     getCompGain() generates (Result retval, int16_t compGainMb);
 
-    /*
+    /**
      * Enables or disables limiter.
      */
     setLimiterEnabled(bool enabled) generates (Result retval);
 
-    /*
+    /**
      * Returns whether limiter is enabled.
      */
     isLimiterEnabled() generates (Result retval, bool enabled);
@@ -56,12 +56,12 @@
         bool limiterEnabled;
     };
 
-    /*
+    /**
      * Sets all properties at once.
      */
     setAllProperties(AllProperties properties) generates (Result retval);
 
-    /*
+    /**
      * Gets all properties at once.
      */
     getAllProperties() generates (Result retval, AllProperties properties);
diff --git a/audio/effect/2.0/IBassBoostEffect.hal b/audio/effect/2.0/IBassBoostEffect.hal
index bcf7b7d..db6a297 100644
--- a/audio/effect/2.0/IBassBoostEffect.hal
+++ b/audio/effect/2.0/IBassBoostEffect.hal
@@ -20,7 +20,7 @@
 import IEffect;
 
 interface IBassBoostEffect extends IEffect {
-    /*
+    /**
      * Returns whether setting bass boost strength is supported.
      */
     isStrengthSupported() generates (Result retval, bool strengthSupported);
@@ -30,7 +30,7 @@
         MAX = 1000
     };
 
-    /*
+    /**
      * Sets bass boost strength.
      *
      * @param strength strength of the effect. The valid range for strength
@@ -41,7 +41,7 @@
      */
     setStrength(uint16_t strength) generates (Result retval);
 
-    /*
+    /**
      * Gets virtualization strength.
      */
     getStrength() generates (Result retval, uint16_t strength);
diff --git a/audio/effect/2.0/IEffect.hal b/audio/effect/2.0/IEffect.hal
index d254e8c..332e2df 100644
--- a/audio/effect/2.0/IEffect.hal
+++ b/audio/effect/2.0/IEffect.hal
@@ -20,7 +20,7 @@
 import IEffectBufferProviderCallback;
 
 interface IEffect {
-    /*
+    /**
      * Initialize effect engine--all configurations return to default.
      *
      * @return retval operation completion status.
@@ -29,7 +29,7 @@
     @callflow(next={"*"})
     init() generates (Result retval);
 
-    /*
+    /**
      * Apply new audio parameters configurations for input and output buffers.
      * The provider callbacks may be empty, but in this case the buffer
      * must be provided in the EffectConfig structure.
@@ -45,7 +45,7 @@
             IEffectBufferProviderCallback outputBufferProvider)
             generates (Result retval);
 
-    /*
+    /**
      * Reset the effect engine. Keep configuration but resets state and buffer
      * content.
      *
@@ -54,7 +54,7 @@
     @callflow(next={"*"})
     reset() generates (Result retval);
 
-    /*
+    /**
      * Enable processing.
      *
      * @return retval operation completion status.
@@ -62,7 +62,7 @@
     @callflow(next={"prepareForProcessing"})
     enable() generates (Result retval);
 
-    /*
+    /**
      * Disable processing.
      *
      * @return retval operation completion status.
@@ -70,7 +70,7 @@
     @callflow(next={"close"})
     disable() generates (Result retval);
 
-    /*
+    /**
      * Set the rendering device the audio output path is connected to.  The
      * effect implementation must set EFFECT_FLAG_DEVICE_IND flag in its
      * descriptor to receive this command when the device changes.
@@ -84,7 +84,7 @@
     @callflow(next={"*"})
     setDevice(AudioDevice device) generates (Result retval);
 
-    /*
+    /**
      * Set and get volume. Used by audio framework to delegate volume control to
      * effect engine. The effect implementation must set EFFECT_FLAG_VOLUME_CTRL
      * flag in its descriptor to receive this command. The effect engine must
@@ -103,7 +103,7 @@
     setAndGetVolume(vec<uint32_t> volumes)
             generates (Result retval, vec<uint32_t> result);
 
-    /*
+    /**
      * Notify the effect of the volume change. The effect implementation must
      * set EFFECT_FLAG_VOLUME_IND flag in its descriptor to receive this
      * command.
@@ -116,7 +116,7 @@
     volumeChangeNotification(vec<uint32_t> volumes)
             generates (Result retval);
 
-    /*
+    /**
      * Set the audio mode. The effect implementation must set
      * EFFECT_FLAG_AUDIO_MODE_IND flag in its descriptor to receive this command
      * when the audio mode changes.
@@ -127,7 +127,7 @@
     @callflow(next={"*"})
     setAudioMode(AudioMode mode) generates (Result retval);
 
-    /*
+    /**
      * Apply new audio parameters configurations for input and output buffers of
      * reverse stream.  An example of reverse stream is the echo reference
      * supplied to an Acoustic Echo Canceler.
@@ -143,7 +143,7 @@
             IEffectBufferProviderCallback outputBufferProvider)
             generates (Result retval);
 
-    /*
+    /**
      * Set the capture device the audio input path is connected to. The effect
      * implementation must set EFFECT_FLAG_DEVICE_IND flag in its descriptor to
      * receive this command when the device changes.
@@ -157,7 +157,7 @@
     @callflow(next={"*"})
     setInputDevice(AudioDevice device) generates (Result retval);
 
-    /*
+    /**
      * Read audio parameters configurations for input and output buffers.
      *
      * @return retval operation completion status.
@@ -166,7 +166,7 @@
     @callflow(next={"*"})
     getConfig() generates (Result retval, EffectConfig config);
 
-    /*
+    /**
      * Read audio parameters configurations for input and output buffers of
      * reverse stream.
      *
@@ -176,7 +176,7 @@
     @callflow(next={"*"})
     getConfigReverse() generates (Result retval, EffectConfig config);
 
-    /*
+    /**
      * Queries for supported combinations of main and auxiliary channels
      * (e.g. for a multi-microphone noise suppressor).
      *
@@ -190,7 +190,7 @@
     getSupportedAuxChannelsConfigs(uint32_t maxConfigs)
             generates (Result retval, vec<EffectAuxChannelsConfig> result);
 
-    /*
+    /**
      * Retrieves the current configuration of main and auxiliary channels.
      *
      * @return retval absence of the feature support is indicated using
@@ -201,7 +201,7 @@
     getAuxChannelsConfig()
             generates (Result retval, EffectAuxChannelsConfig result);
 
-    /*
+    /**
      * Sets the current configuration of main and auxiliary channels.
      *
      * @return retval operation completion status; absence of the feature
@@ -211,7 +211,7 @@
     setAuxChannelsConfig(EffectAuxChannelsConfig config)
             generates (Result retval);
 
-    /*
+    /**
      * Set the audio source the capture path is configured for (Camcorder, voice
      * recognition...).
      *
@@ -224,7 +224,7 @@
     @callflow(next={"*"})
     setAudioSource(AudioSource source) generates (Result retval);
 
-    /*
+    /**
      * This command indicates if the playback thread the effect is attached to
      * is offloaded or not, and updates the I/O handle of the playback thread
      * the effect is attached to.
@@ -235,7 +235,7 @@
     @callflow(next={"*"})
     offload(EffectOffloadParameter param) generates (Result retval);
 
-    /*
+    /**
      * Returns the effect descriptor.
      *
      * @return retval operation completion status.
@@ -244,7 +244,7 @@
     @callflow(next={"*"})
     getDescriptor() generates (Result retval, EffectDescriptor descriptor);
 
-    /*
+    /**
      * Set up required transports for passing audio buffers to the effect.
      *
      * The transport consists of shared memory and a message queue for reporting
@@ -270,7 +270,7 @@
     @callflow(next={"setProcessBuffers"})
     prepareForProcessing() generates (Result retval, fmq_sync<Result> statusMQ);
 
-    /*
+    /**
      * Set up input and output buffers for processing audio data. The effect
      * may modify both the input and the output buffer during the operation.
      * Buffers may be set multiple times during effect lifetime.
@@ -289,7 +289,7 @@
     setProcessBuffers(AudioBuffer inBuffer, AudioBuffer outBuffer) generates (
             Result retval);
 
-    /*
+    /**
      * Execute a vendor specific command on the effect. The command code
      * and data, as well as result data are not interpreted by Android
      * Framework and are passed as-is between the application and the effect.
@@ -310,7 +310,7 @@
     command(uint32_t commandId, vec<uint8_t> data, uint32_t resultMaxSize)
             generates (int32_t status, vec<uint8_t> result);
 
-    /*
+    /**
      * Set a vendor-specific parameter and apply it immediately. The parameter
      * code and data are not interpreted by Android Framework and are passed
      * as-is between the application and the effect.
@@ -331,7 +331,7 @@
     setParameter(vec<uint8_t> parameter, vec<uint8_t> value)
             generates (Result retval);
 
-    /*
+    /**
      * Get a vendor-specific parameter value. The parameter code and returned
      * data are not interpreted by Android Framework and are passed as-is
      * between the application and the effect.
@@ -353,7 +353,7 @@
     getParameter(vec<uint8_t> parameter, uint32_t valueMaxSize)
             generates (Result retval, vec<uint8_t> value);
 
-    /*
+    /**
      * Get supported configs for a vendor-specific feature. The configs returned
      * are not interpreted by Android Framework and are passed as-is between the
      * application and the effect.
@@ -384,7 +384,7 @@
                     uint32_t configsCount,
                     vec<uint8_t> configsData);
 
-    /*
+    /**
      * Get the current config for a vendor-specific feature. The config returned
      * is not interpreted by Android Framework and is passed as-is between the
      * application and the effect.
@@ -406,7 +406,7 @@
     getCurrentConfigForFeature(uint32_t featureId, uint32_t configSize)
             generates (Result retval, vec<uint8_t> configData);
 
-    /*
+    /**
      * Set the current config for a vendor-specific feature. The config data
      * is not interpreted by Android Framework and is passed as-is between the
      * application and the effect.
@@ -426,7 +426,7 @@
     setCurrentConfigForFeature(uint32_t featureId, vec<uint8_t> configData)
             generates (Result retval);
 
-    /*
+    /**
      * Called by the framework to deinitialize the effect and free up
      * all the currently allocated resources. It is recommended to close
      * the effect on the client side as soon as it is becomes unused.
diff --git a/audio/effect/2.0/IEffectBufferProviderCallback.hal b/audio/effect/2.0/IEffectBufferProviderCallback.hal
index 53f4d6e..6ab33c3 100644
--- a/audio/effect/2.0/IEffectBufferProviderCallback.hal
+++ b/audio/effect/2.0/IEffectBufferProviderCallback.hal
@@ -16,12 +16,12 @@
 
 package android.hardware.audio.effect@2.0;
 
-/*
+/**
  * This callback interface contains functions that can be used by the effect
  * engine 'process' function to exchange input and output audio buffers.
  */
 interface IEffectBufferProviderCallback {
-    /*
+    /**
      * Called to retrieve a buffer where data should read from by 'process'
      * function.
      *
@@ -29,7 +29,7 @@
      */
     getBuffer() generates (AudioBuffer buffer);
 
-    /*
+    /**
      * Called to provide a buffer with the data written by 'process' function.
      *
      * @param buffer audio buffer for processing
diff --git a/audio/effect/2.0/IEffectsFactory.hal b/audio/effect/2.0/IEffectsFactory.hal
index c82b4a2..3d300ec 100644
--- a/audio/effect/2.0/IEffectsFactory.hal
+++ b/audio/effect/2.0/IEffectsFactory.hal
@@ -20,7 +20,7 @@
 import IEffect;
 
 interface IEffectsFactory {
-    /*
+    /**
      * Returns descriptors of different effects in all loaded libraries.
      *
      * @return retval operation completion status.
@@ -28,7 +28,7 @@
      */
     getAllDescriptors() generates(Result retval, vec<EffectDescriptor> result);
 
-    /*
+    /**
      * Returns a descriptor of a particular effect.
      *
      * @return retval operation completion status.
@@ -36,7 +36,7 @@
      */
     getDescriptor(Uuid uid) generates(Result retval, EffectDescriptor result);
 
-    /*
+    /**
      * Creates an effect engine of the specified type.  To release the effect
      * engine, it is necessary to release references to the returned effect
      * object.
@@ -56,7 +56,7 @@
     createEffect(Uuid uid, AudioSession session, AudioIoHandle ioHandle)
         generates (Result retval, IEffect result, uint64_t effectId);
 
-    /*
+    /**
      * Dumps information about effects into the provided file descriptor.
      * This is used for the dumpsys facility.
      *
diff --git a/audio/effect/2.0/IEnvironmentalReverbEffect.hal b/audio/effect/2.0/IEnvironmentalReverbEffect.hal
index d9b1ee6..dca89f9 100644
--- a/audio/effect/2.0/IEnvironmentalReverbEffect.hal
+++ b/audio/effect/2.0/IEnvironmentalReverbEffect.hal
@@ -20,12 +20,12 @@
 import IEffect;
 
 interface IEnvironmentalReverbEffect extends IEffect {
-    /*
+    /**
      * Sets whether the effect should be bypassed.
      */
     setBypass(bool bypass) generates (Result retval);
 
-    /*
+    /**
      * Gets whether the effect should be bypassed.
      */
     getBypass() generates (Result retval, bool bypass);
@@ -53,102 +53,102 @@
         DENSITY_MAX = 1000
     };
 
-    /*
+    /**
      * Sets the room level.
      */
     setRoomLevel(int16_t roomLevel) generates (Result retval);
 
-    /*
+    /**
      * Gets the room level.
      */
     getRoomLevel() generates (Result retval, int16_t roomLevel);
 
-    /*
+    /**
      * Sets the room high frequences level.
      */
     setRoomHfLevel(int16_t roomHfLevel) generates (Result retval);
 
-    /*
+    /**
      * Gets the room high frequences level.
      */
     getRoomHfLevel() generates (Result retval, int16_t roomHfLevel);
 
-    /*
+    /**
      * Sets the room decay time.
      */
     setDecayTime(uint32_t decayTime) generates (Result retval);
 
-    /*
+    /**
      * Gets the room decay time.
      */
     getDecayTime() generates (Result retval, uint32_t decayTime);
 
-    /*
+    /**
      * Sets the ratio of high frequences decay.
      */
     setDecayHfRatio(int16_t decayHfRatio) generates (Result retval);
 
-    /*
+    /**
      * Gets the ratio of high frequences decay.
      */
     getDecayHfRatio() generates (Result retval, int16_t decayHfRatio);
 
-    /*
+    /**
      * Sets the level of reflections in the room.
      */
     setReflectionsLevel(int16_t reflectionsLevel) generates (Result retval);
 
-    /*
+    /**
      * Gets the level of reflections in the room.
      */
     getReflectionsLevel() generates (Result retval, int16_t reflectionsLevel);
 
-    /*
+    /**
      * Sets the reflections delay in the room.
      */
     setReflectionsDelay(uint32_t reflectionsDelay) generates (Result retval);
 
-    /*
+    /**
      * Gets the reflections delay in the room.
      */
     getReflectionsDelay() generates (Result retval, uint32_t reflectionsDelay);
 
-    /*
+    /**
      * Sets the reverb level of the room.
      */
     setReverbLevel(int16_t reverbLevel) generates (Result retval);
 
-    /*
+    /**
      * Gets the reverb level of the room.
      */
     getReverbLevel() generates (Result retval, int16_t reverbLevel);
 
-    /*
+    /**
      * Sets the reverb delay of the room.
      */
     setReverbDelay(uint32_t reverDelay) generates (Result retval);
 
-    /*
+    /**
      * Gets the reverb delay of the room.
      */
     getReverbDelay() generates (Result retval, uint32_t reverbDelay);
 
-    /*
+    /**
      * Sets room diffusion.
      */
     setDiffusion(int16_t diffusion) generates (Result retval);
 
-    /*
+    /**
      * Gets room diffusion.
      */
     getDiffusion() generates (Result retval, int16_t diffusion);
 
-    /*
+    /**
      * Sets room wall density.
      */
     setDensity(int16_t density) generates (Result retval);
 
-    /*
+    /**
      * Gets room wall density.
      */
     getDensity() generates (Result retval, int16_t density);
@@ -166,12 +166,12 @@
         int16_t  density;           // in permilles,    range 0 to 1000
     };
 
-    /*
+    /**
      * Sets all properties at once.
      */
     setAllProperties(AllProperties properties) generates (Result retval);
 
-    /*
+    /**
      * Gets all properties at once.
      */
     getAllProperties() generates (Result retval, AllProperties properties);
diff --git a/audio/effect/2.0/IEqualizerEffect.hal b/audio/effect/2.0/IEqualizerEffect.hal
index b8fa177..1528e0d 100644
--- a/audio/effect/2.0/IEqualizerEffect.hal
+++ b/audio/effect/2.0/IEqualizerEffect.hal
@@ -20,58 +20,58 @@
 import IEffect;
 
 interface IEqualizerEffect extends IEffect {
-    /*
+    /**
      * Gets the number of frequency bands that the equalizer supports.
      */
     getNumBands() generates (Result retval, uint16_t numBands);
 
-    /*
+    /**
      * Returns the minimum and maximum band levels supported.
      */
     getLevelRange()
             generates (Result retval, int16_t minLevel, int16_t maxLevel);
 
-    /*
+    /**
      * Sets the gain for the given equalizer band.
      */
     setBandLevel(uint16_t band, int16_t level) generates (Result retval);
 
-    /*
+    /**
      * Gets the gain for the given equalizer band.
      */
     getBandLevel(uint16_t band) generates (Result retval, int16_t level);
 
-    /*
+    /**
      * Gets the center frequency of the given band, in milliHertz.
      */
     getBandCenterFrequency(uint16_t band)
             generates (Result retval, uint32_t centerFreqmHz);
 
-    /*
+    /**
      * Gets the frequency range of the given frequency band, in milliHertz.
      */
     getBandFrequencyRange(uint16_t band)
             generates (Result retval, uint32_t minFreqmHz, uint32_t maxFreqmHz);
 
-    /*
+    /**
      * Gets the band that has the most effect on the given frequency
      * in milliHertz.
      */
     getBandForFrequency(uint32_t freqmHz)
             generates (Result retval, uint16_t band);
 
-    /*
+    /**
      * Gets the names of all presets the equalizer supports.
      */
     getPresetNames() generates (Result retval, vec<string> names);
 
-    /*
+    /**
      * Sets the current preset using the index of the preset in the names
      * vector returned via 'getPresetNames'.
      */
     setCurrentPreset(uint16_t preset) generates (Result retval);
 
-    /*
+    /**
      * Gets the current preset.
      */
     getCurrentPreset() generates (Result retval, uint16_t preset);
@@ -81,12 +81,12 @@
         vec<int16_t> bandLevels;
     };
 
-    /*
+    /**
      * Sets all properties at once.
      */
     setAllProperties(AllProperties properties) generates (Result retval);
 
-    /*
+    /**
      * Gets all properties at once.
      */
     getAllProperties() generates (Result retval, AllProperties properties);
diff --git a/audio/effect/2.0/ILoudnessEnhancerEffect.hal b/audio/effect/2.0/ILoudnessEnhancerEffect.hal
index 3e1ee4e..adeb1c8 100644
--- a/audio/effect/2.0/ILoudnessEnhancerEffect.hal
+++ b/audio/effect/2.0/ILoudnessEnhancerEffect.hal
@@ -20,12 +20,12 @@
 import IEffect;
 
 interface ILoudnessEnhancerEffect extends IEffect {
-    /*
+    /**
      * Sets target gain expressed in millibels.
      */
     setTargetGain(int32_t targetGainMb) generates (Result retval);
 
-    /*
+    /**
      * Gets target gain expressed in millibels.
      */
     getTargetGain() generates (Result retval, int32_t targetGainMb);
diff --git a/audio/effect/2.0/INoiseSuppressionEffect.hal b/audio/effect/2.0/INoiseSuppressionEffect.hal
index ae2bfb5..6617a1e 100644
--- a/audio/effect/2.0/INoiseSuppressionEffect.hal
+++ b/audio/effect/2.0/INoiseSuppressionEffect.hal
@@ -26,12 +26,12 @@
         HIGH
     };
 
-    /*
+    /**
      * Sets suppression level.
      */
     setSuppressionLevel(Level level) generates (Result retval);
 
-    /*
+    /**
      * Gets suppression level.
      */
     getSuppressionLevel() generates (Result retval, Level level);
@@ -41,12 +41,12 @@
         MULTI_CHANNEL
     };
 
-    /*
+    /**
      * Set suppression type.
      */
     setSuppressionType(Type type) generates (Result retval);
 
-    /*
+    /**
      * Get suppression type.
      */
     getSuppressionType() generates (Result retval, Type type);
@@ -56,12 +56,12 @@
         Type type;
     };
 
-    /*
+    /**
      * Sets all properties at once.
      */
     setAllProperties(AllProperties properties) generates (Result retval);
 
-    /*
+    /**
      * Gets all properties at once.
      */
     getAllProperties() generates (Result retval, AllProperties properties);
diff --git a/audio/effect/2.0/IVirtualizerEffect.hal b/audio/effect/2.0/IVirtualizerEffect.hal
index 2b7116c..49b49a0 100644
--- a/audio/effect/2.0/IVirtualizerEffect.hal
+++ b/audio/effect/2.0/IVirtualizerEffect.hal
@@ -20,7 +20,7 @@
 import IEffect;
 
 interface IVirtualizerEffect extends IEffect {
-    /*
+    /**
      * Returns whether setting virtualization strength is supported.
      */
     isStrengthSupported() generates (bool strengthSupported);
@@ -30,7 +30,7 @@
         MAX = 1000
     };
 
-    /*
+    /**
      * Sets virtualization strength.
      *
      * @param strength strength of the effect. The valid range for strength
@@ -41,7 +41,7 @@
      */
     setStrength(uint16_t strength) generates (Result retval);
 
-    /*
+    /**
      * Gets virtualization strength.
      */
     getStrength() generates (Result retval, uint16_t strength);
@@ -56,19 +56,19 @@
         int16_t elevation; // 0 is the horizontal plane
                            // +90 is above the listener, -90 is below
     };
-    /*
+    /**
      * Retrieves virtual speaker angles for the given channel mask on the
      * specified device.
      */
     getVirtualSpeakerAngles(AudioChannelMask mask, AudioDevice device)
             generates (Result retval, vec<SpeakerAngle> speakerAngles);
 
-    /*
+    /**
      * Forces the virtualizer effect for the given output device.
      */
     forceVirtualizationMode(AudioDevice device) generates (Result retval);
 
-    /*
+    /**
      * Returns audio device reflecting the current virtualization mode,
      * AUDIO_DEVICE_NONE when not virtualizing.
      */
diff --git a/audio/effect/2.0/IVisualizerEffect.hal b/audio/effect/2.0/IVisualizerEffect.hal
index 79dc9ee..fd3edbd 100644
--- a/audio/effect/2.0/IVisualizerEffect.hal
+++ b/audio/effect/2.0/IVisualizerEffect.hal
@@ -25,12 +25,12 @@
         MIN = 128    // minimum capture size in samples
     };
 
-    /*
+    /**
      * Sets the number PCM samples in the capture.
      */
     setCaptureSize(uint16_t captureSize) generates (Result retval);
 
-    /*
+    /**
      * Gets the number PCM samples in the capture.
      */
     getCaptureSize() generates (Result retval, uint16_t captureSize);
@@ -42,22 +42,22 @@
         AS_PLAYED = 1
     };
 
-    /*
+    /**
      * Specifies the way the captured data is scaled.
      */
     setScalingMode(ScalingMode scalingMode) generates (Result retval);
 
-    /*
+    /**
      * Retrieves the way the captured data is scaled.
      */
     getScalingMode() generates (Result retval, ScalingMode scalingMode);
 
-    /*
+    /**
      * Informs the visualizer about the downstream latency.
      */
     setLatency(uint32_t latencyMs) generates (Result retval);
 
-    /*
+    /**
      * Gets the downstream latency.
      */
     getLatency() generates (Result retval, uint32_t latencyMs);
@@ -69,19 +69,19 @@
         PEAK_RMS = 0x1
     };
 
-    /*
+    /**
      * Specifies which measurements are to be made.
      */
     setMeasurementMode(MeasurementMode measurementMode)
             generates (Result retval);
 
-    /*
+    /**
      * Retrieves which measurements are to be made.
      */
     getMeasurementMode() generates (
             Result retval, MeasurementMode measurementMode);
 
-    /*
+    /**
      * Retrieves the latest PCM snapshot captured by the visualizer engine.  The
      * number of samples to capture is specified by 'setCaptureSize' parameter.
      *
@@ -99,7 +99,7 @@
             } peakAndRms;
         } value;
     };
-    /*
+    /**
      * Retrieves the lastest measurements. The measurements to be made
      * are specified by 'setMeasurementMode' parameter.
      *
diff --git a/audio/effect/2.0/types.hal b/audio/effect/2.0/types.hal
index 0626ec5..2c5e4ef 100644
--- a/audio/effect/2.0/types.hal
+++ b/audio/effect/2.0/types.hal
@@ -27,7 +27,7 @@
     RESULT_TOO_BIG
 };
 
-/*
+/**
  * Effect engine capabilities/requirements flags.
  *
  * Definitions for flags field of effect descriptor.
@@ -195,7 +195,7 @@
     NO_PROCESS = 1 << NO_PROCESS_SHIFT
 };
 
-/*
+/**
  * The effect descriptor contains necessary information to facilitate the
  * enumeration of the effect engines present in a library.
  */
@@ -212,7 +212,7 @@
     uint8_t[64] implementor;  // human readable effect implementor name
 };
 
-/*
+/**
  * A buffer is a chunk of audio data for processing.  Multi-channel audio is
  * always interleaved. The channel order is from LSB to MSB with regard to the
  * channel mask definition in audio.h, audio_channel_mask_t, e.g.:
@@ -235,7 +235,7 @@
     ACCESS_ACCUMULATE
 };
 
-/*
+/**
  * Determines what fields of EffectBufferConfig need to be considered.
  */
 @export(name="", value_prefix="EFFECT_CONFIG_")
@@ -248,7 +248,7 @@
     ALL = BUFFER | SMP_RATE | CHANNELS | FORMAT | ACC_MODE
 };
 
-/*
+/**
  * The buffer config structure specifies the input or output audio format
  * to be used by the effect engine.
  */
@@ -285,7 +285,7 @@
                              // the effect is attached to
 };
 
-/*
+/**
  * The message queue flags used to synchronize reads and writes from
  * the status message queue used by effects.
  */