Manufacturing mode in CY4611B(FX2LP-to-ATA/ATAPI reference Design)
Question: What is Manufacturing mode in CY4611B how is detected and handled inside the firmware?
In Cy4611B the firmware can boot through I2C based EEPROM. Prior to that the combined file of the Firmware (CY4611. hex)and EEPROM configuration file (.iic) must be stored in the EEPROM memory ( (0x0000-0x3eff)-Cy4611.hex and (0x3f00-0x3fff)-EEPROM Configuration file(.iic) ).This EEPROM configuration file contains different parameters related to ATA/ATAPI compliant devices. Once the firmware boots from EEPROM during the initialization sequence if the ATA_RESET#(Pin 1) and DD#7(pin 3) pins on the40-pin ATA connector are shorted then AT2LP will enter manufacturing mode.
Following is the piece of code inside CY4611B firmware to detect a short b/w RESET# and DD7 pins
OEB = 0x80;
PB7 = 0x80;
OEB = 0x0;
As per the above code is the ATA_RESET# signal is in a low state then DD7 is driven high and ATA_RESET# signal is cross-checked to verify if that pin also senses high and if true it eventually indicates a short.Then CY4611B enters manufacturing mode. This will completely stop the initialization of ATA/ATAPI device connected to the 40-pin bus . The parameters of the EEPROM configuration file(.iic) can then be modified and then re-programmed (to suite several types of ATA/ATAPI devices) using a Blaster software tool available in the CY4611B kit software.