bootloading Atmega1284 from arduino uno

hi I am following this link for programming Atmega1284 with arduino uno

but iam not understanding why the author is asking to burn the arduino first (highlighted in yellow below) ?

Once you have the Mighty 1284P platform set up, burning a bootloader is trivial. Follow the Arduino ISP instructions. You first burn the “Arduino ISP” sketch onto a regular Ardunio. Then change the “Boards” setting to the Mighty 1284P, hook up the ‘Arduino’ connections in the schematic above, choose “Tools > Programmer > Arduino as ISP” from the IDE, and then “Tools > Burn bootloader.”

Burn

Down load the ISP sketch to the Arduino.

do I have to use FDTI for downloading the bootloader on to atmega1284p? cant we use just the arduino to burn the bootloader without any external components as it does to the atmega328p ?

also the article is about atmega1284P-PU but can I also use the same software and method to burn atmega1284P-AU which is TQFP package with different pin assignments?

Yes - PORTB bit 1 is the same electrically for example, the bare die and the software don't care what the physical package is.

I am not understand the role of FTDI in the "Arduino on ATmega1284P | maniacbug" project.
where is the usb port of FTDI going and what role its playing in burning bootloader ?
secondly I would like to know if there is a way to put bootloader on atmega128-p using just arduino UNO and nothing else , just like I can program atmega328P with just the arduino UNO.

thanks

Try "program bootloader" here

I don't if '128 is covered or not.

FTDI plays no role in bootloading, only serial downloads.
You can make it work using this method if you have access to all the FTDI pins.
http://make.kosakalab.com/arduino/bootloader/index_en.html

ok will look into this.
can you also help me in finding out the PWM pin layout of Atmega1284P ? I looked in the data sheet I cant find it .
if you can point out the page please.

thanks

The pins labeled with OC0A, OC0B, OC1A, OC1B, OC2A, OC2B, OC3A, OC3B, are the PWM cabable pins.
You can also look pins_arduino.h:

TIMER0A, /* - PB3 /
TIMER0B, /
- PB4 /
TIMER1B, /
- PD4 /
TIMER1A, /
- PD5 /
TIMER2B, /
- PD6 /
TIMER2A, /
- PD7 /
TIMER3A, /
- PB6 /
TIMER3B, /
- PB7 */

i did uploaded the boot loader successfully and uploaded blink sketch and it also work. but the problem is i can not upload sketch from FTDI. From ICSP it works fine. When i upload a serial print sketch to test the serial ports via ICSP , the serial not working a bit.

Any suggestions or solutions?