Microchip® Advanced Software Framework

conf_access.h File Reference

Memory access control configuration file.

Copyright (c) 2014-2018 Microchip Technology Inc. and its subsidiaries.

#include "compiler.h"
#include "board.h"
#include "unit_tests.h"

Macros

Activation of Logical Unit Numbers
#define LUN_0   ENABLE
 On-Chip Virtual Memory. More...
 
#define LUN_1   DISABLE
 AT45DBX Data Flash. More...
 
#define LUN_2   DISABLE
 SD/MMC Card over SPI. More...
 
#define LUN_3   DISABLE
 SD/MMC Card over MCI Slot 0. More...
 
#define LUN_4   DISABLE
 
#define LUN_5   DISABLE
 
#define LUN_6   DISABLE
 
#define LUN_7   DISABLE
 
#define LUN_USB   DISABLE
 Host Mass-Storage Memory. More...
 
LUN 0 Definitions
#define VIRTUAL_MEM   LUN_0
 
#define LUN_ID_VIRTUAL_MEM   LUN_ID_0
 
#define LUN_0_INCLUDE   "virtual_mem.h"
 
#define Lun_0_test_unit_ready   virtual_test_unit_ready
 
#define Lun_0_read_capacity   virtual_read_capacity
 
#define Lun_0_unload   NULL /* Can not be unloaded */
 
#define Lun_0_wr_protect   virtual_wr_protect
 
#define Lun_0_removal   virtual_removal
 
#define Lun_0_usb_read_10   virtual_usb_read_10
 
#define Lun_0_usb_write_10   virtual_usb_write_10
 
#define Lun_0_mem_2_ram   virtual_mem_2_ram
 
#define Lun_0_ram_2_mem   virtual_ram_2_mem
 
#define LUN_0_NAME   "\"On-Chip Virtual Memory\""
 
USB LUNs Definitions
#define MEM_USB   LUN_USB
 
#define LUN_ID_MEM_USB   LUN_ID_USB
 
#define LUN_USB_INCLUDE   "uhi_msc_mem.h"
 
#define Lun_usb_get_lun()   uhi_msc_mem_get_lun()
 
#define Lun_usb_test_unit_ready(lun)   uhi_msc_mem_test_unit_ready(lun)
 
#define Lun_usb_read_capacity(lun, nb_sect)   uhi_msc_mem_read_capacity(lun, nb_sect)
 
#define Lun_usb_read_sector_size(lun)   uhi_msc_mem_read_sector_size(lun)
 
#define Lun_usb_wr_protect(lun)   uhi_msc_mem_wr_protect(lun)
 
#define Lun_usb_removal()   uhi_msc_mem_removal()
 
#define Lun_usb_mem_2_ram(addr, ram)   uhi_msc_mem_read_10_ram(addr, ram)
 
#define Lun_usb_ram_2_mem(addr, ram)   uhi_msc_mem_write_10_ram(addr, ram)
 
#define LUN_USB_NAME   "\"Host Mass-Storage Memory\""
 
Actions Associated with Memory Accesses

Write here the action to associate with each memory access.

Warning
Be careful not to waste time in order not to disturb the functions.
#define memory_start_read_action(nb_sectors)
 
#define memory_stop_read_action()   main_msc_read_finish()
 
#define memory_start_write_action(nb_sectors)
 
#define memory_stop_write_action()
 
Activation of Interface Features
#define ACCESS_USB   true
 MEM <-> USB interface. More...
 
#define ACCESS_MEM_TO_RAM   false
 MEM <-> RAM interface. More...
 
#define ACCESS_STREAM   false
 Streaming MEM <-> MEM interface. More...
 
#define ACCESS_STREAM_RECORD   false
 Streaming MEM <-> MEM interface in record mode. More...
 
#define ACCESS_MEM_TO_MEM   false
 MEM <-> MEM interface. More...
 
#define ACCESS_CODEC   false
 Codec interface. More...
 
Specific Options for Access Control
#define GLOBAL_WR_PROTECT   false
 Management of a global write protection. More...
 

#define ACCESS_CODEC   false

Codec interface.

#define ACCESS_MEM_TO_MEM   false

MEM <-> MEM interface.

#define ACCESS_MEM_TO_RAM   false

MEM <-> RAM interface.

#define ACCESS_STREAM   false

Streaming MEM <-> MEM interface.

#define ACCESS_STREAM_RECORD   false

Streaming MEM <-> MEM interface in record mode.

#define ACCESS_USB   true

MEM <-> USB interface.

#define GLOBAL_WR_PROTECT   false

Management of a global write protection.

#define LUN_0   ENABLE

On-Chip Virtual Memory.

#define LUN_0_INCLUDE   "virtual_mem.h"
#define Lun_0_mem_2_ram   virtual_mem_2_ram
#define LUN_0_NAME   "\"On-Chip Virtual Memory\""
#define Lun_0_ram_2_mem   virtual_ram_2_mem
#define Lun_0_read_capacity   virtual_read_capacity
#define Lun_0_removal   virtual_removal
#define Lun_0_test_unit_ready   virtual_test_unit_ready
#define Lun_0_unload   NULL /* Can not be unloaded */
#define Lun_0_usb_read_10   virtual_usb_read_10
#define Lun_0_usb_write_10   virtual_usb_write_10
#define Lun_0_wr_protect   virtual_wr_protect
#define LUN_1   DISABLE

AT45DBX Data Flash.

#define LUN_2   DISABLE

SD/MMC Card over SPI.

#define LUN_3   DISABLE

SD/MMC Card over MCI Slot 0.

#define LUN_4   DISABLE
#define LUN_5   DISABLE
#define LUN_6   DISABLE
#define LUN_7   DISABLE
#define LUN_ID_MEM_USB   LUN_ID_USB
#define LUN_ID_VIRTUAL_MEM   LUN_ID_0
#define LUN_USB   DISABLE

Host Mass-Storage Memory.

Referenced by mem_name(), mem_sector_size(), and mem_unload().

#define Lun_usb_get_lun ( )    uhi_msc_mem_get_lun()

Referenced by get_nb_lun().

#define LUN_USB_INCLUDE   "uhi_msc_mem.h"
#define Lun_usb_mem_2_ram (   addr,
  ram 
)    uhi_msc_mem_read_10_ram(addr, ram)
#define LUN_USB_NAME   "\"Host Mass-Storage Memory\""

Referenced by mem_name().

#define Lun_usb_ram_2_mem (   addr,
  ram 
)    uhi_msc_mem_write_10_ram(addr, ram)
#define Lun_usb_read_capacity (   lun,
  nb_sect 
)    uhi_msc_mem_read_capacity(lun, nb_sect)

Referenced by mem_read_capacity().

#define Lun_usb_read_sector_size (   lun)    uhi_msc_mem_read_sector_size(lun)

Referenced by mem_sector_size().

#define Lun_usb_removal ( )    uhi_msc_mem_removal()

Referenced by mem_removal().

#define Lun_usb_test_unit_ready (   lun)    uhi_msc_mem_test_unit_ready(lun)

Referenced by mem_test_unit_ready().

#define Lun_usb_wr_protect (   lun)    uhi_msc_mem_wr_protect(lun)

Referenced by mem_wr_protect().

#define MEM_USB   LUN_USB
#define memory_start_read_action (   nb_sectors)

Referenced by memory_2_usb().

#define memory_start_write_action (   nb_sectors)

Referenced by usb_2_memory().

#define memory_stop_read_action ( )    main_msc_read_finish()

Referenced by memory_2_usb().

#define memory_stop_write_action ( )

Referenced by usb_2_memory().

#define VIRTUAL_MEM   LUN_0